【问题标题】:L2 cache in NVIDIA FermiNVIDIA Fermi 中的二级缓存
【发布时间】:2011-08-06 09:42:03
【问题描述】:
查看 NVIDIA Fermi 架构中性能计数器的名称(cuda doc 文件夹中的文件 Compute_profiler.txt)时,我注意到对于 L2 缓存未命中,有两个性能计数器,l2_subp0_read_sector_misses 和 l2_subp1_read_sector_misses。他们说这些是用于 L2 的两片。
为什么他们有两个 L2 切片?与流式多处理器架构有什么关系吗?这种划分对业绩会有什么影响?
谢谢
【问题讨论】:
标签:
cuda
gpu
gpgpu
nvidia
【解决方案1】:
我认为与流式多处理器没有任何直接关系。
我只是认为切片相当于银行内存。
只需将两者的值相加即可得到“总”L2 读取未命中数。
【解决方案2】:
CUDA C 编程指南描述了多处理器的体系结构。该文件指出,每个 Fermi 多处理器都有两个 warp 调度程序。我假设 L2 缓存被拆分以允许并发缓存。
我没有研究过 Kepler 架构的 L2 读取未命中,但 Kepler 多处理器有四个 warp 处理器。因此,如果报告了四个用于 Kepler 编译的性能计数器,则可以验证此假设。