如何在CUDA中使用二级缓存

如何在CUDA中使用二级缓存,cuda,nvidia,Cuda,Nvidia,我在CUDA中搜索了关于二级缓存使用的其他线程。但是,无法找到解决方案。如何使用二级缓存?是否有任何调用函数或声明供其使用?比如,为了使用共享内存,我们使用\uuuuuuu设备\uuuuuuu共享\uuuuuu。二级缓存有类似的功能吗???二级缓存对设备代码是透明的。所有在L1中未命中的内存访问(全局、局部、表面、纹理、常量和指令)都转到L2。所有写操作都通过L2 CUDA C编程指南F.4.2:全局内存 本节提供了有关L2的更多详细信息 编译器标志-dlcm=cg可用于在L1中取消缓存全局访问

我在CUDA中搜索了关于二级缓存使用的其他线程。但是,无法找到解决方案。如何使用二级缓存?是否有任何调用函数或声明供其使用?比如,为了使用共享内存,我们使用
\uuuuuuu设备\uuuuuuu共享\uuuuuu
。二级缓存有类似的功能吗???

二级缓存对设备代码是透明的。所有在L1中未命中的内存访问(全局、局部、表面、纹理、常量和指令)都转到L2。所有写操作都通过L2

CUDA C编程指南F.4.2:全局内存

本节提供了有关L2的更多详细信息

编译器标志-dlcm=cg可用于在L1中取消缓存全局访问,并在L2中缓存全局访问

CUDA C编程指南B.5:内存围栏功能

函数_threadfence()可用于确保对全局内存的所有写入都在L2中可见


函数_threadfence_system()可用于确保对全局内存的所有写入都对主机线程可见。

因此,这就像通过名为缓存的窗口从线程中查看全局内存一样?