【发布时间】:2015-11-30 18:53:55
【问题描述】:
我正在试验一个简单的矩阵乘法 CUDA 程序。我发现如果矩阵大小很小(512*512 或更小),L2 缓存命中率总是 100%。分析的 DRAM 读取事务并不稳定,有时值甚至为 0。这可能吗?因为 L2 缓存中应该总是有一些冷缺失,然后 L2 从 DRAM 中获取这些数据。因此 DRAM 读取事务永远不应为 0,并且 L2 命中率应小于 100%。
仅供参考:我在使用 Kepler 40 架构的 Quadro K6000 GPU 上测试了该程序。无论 L1 缓存打开还是关闭,度量值都是相同的。我使用的指标包括 l2_l1_read_hit_rate 和 dram_read_transactions。
【问题讨论】: