缓存中的数据是否会在内核启动时持续存在?我有大约5个内核一次又一次地引用相同的数据,所以我将它们绑定到纹理,但是任何人都可以告诉我纹理缓存中的数据是否会在内核启动时持续存在?
答案 0 :(得分:2)
“CUDA C编程指南”第3.2.10.4节对此进行了说明:
一个线程可以安全地读取一些纹理或表面内存位置 仅当前一个内核更新了此内存位置时 通话或记忆副本
即。内核之间的纹理缓存是无效的(顺便说一句,查询文档可能比在stackoverflow上等待答案更快)。
然而,纹理缓存中数据的生命周期可能要短得多,因为每个线程只有少量字节可用。