GPU L1和L2缓存统计信息

Zk1*_*001 5 cuda gpu gpgpu opencl

我编写了一些执行一系列全局内存访问的简单基准测试.当我测量L1和L2缓存统计数据时,我发现(在GTX580中有16个SM):

 total L1 cache misses * 16 != total L2 cache queries
Run Code Online (Sandbox Code Playgroud)

实际上,右侧远高于左侧(大约五倍).我听说过一些注册溢出也可以放到L2中.但我的内核只有不到28个寄存器,而不是那么多.我想知道这种差异的根源是什么?还是我误解了那些性能计数器的含义?

谢谢

小智 1

这可能是因为 L1 的读取长度为 128 字节,而 L2 的读取长度为 32 字节。