【问题标题】:loop unrolling effect on dl1 cache miss循环展开对 dl1 缓存未命中的影响
【发布时间】:2011-04-17 06:23:50
【问题描述】:

我知道循环展开有时会增加指令级缓存未命中,但我注意到(在简单的标量 sim-cache 中),循环展开正在减少 dl1 缓存未命中(我使用其他缓存作为无,所以没有其他缓存存在),但我没有得到这背后的逻辑,循环展开如何减少数据级缓存未命中?

循环展开将导致与没有展开大小写权限相同的加载字数。

【问题讨论】:

    标签: caching compiler-optimization


    【解决方案1】:

    我遇到了一些情况,比如访问受到列专业形式的限制(我们不能在行专业中这样做),并且列大小很大,所以每次未命中一个,一个缓存行被带入缓存但只有一个元素被使用,因此如果我们可以通过展开它(矩阵转置)来使用该缓存行的另一个元素,将降低未命中率。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-15
      • 1970-01-01
      • 2022-08-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-07
      相关资源
      最近更新 更多