2

要确定与load相关的 L1D 填充缓冲区占用率,可以使用L1D_PEND_MISS事件,特别是L1D_PEND_MISS.PENDING,记录如下:

计算未完成的 L1D 未命中的持续时间,即需求读取所需的未完成填充缓冲区 (FB) 的每个周期数。FB 要么由需求负载持有,要么由非需求负载持有并至少被需求击中一次。有效的未完成间隔通过以下方式之一定义直到 FB 解除分配:从 FB 分配,如果 FB 是按需求分配的 从需求 Hit FB,如果它是通过硬件或软件预取分配的。注意:在 L1D 中,a需求读取包含可缓存或不可缓存的需求负载,包括由于任何请求类型导致的页面遍历而导致缓存行拆分和读取的负载。

解析本段的第二部分有点困难,但关键方面似乎是该事件仅计算每个周期以某种方式由需求负载所需的占用填充缓冲区的数量。

例如,在没有负载的商店流的场景中,有没有办法确定 L1 填充缓冲区的占用率?

4

0 回答 0