gpt4 book ai didi

CUDA。共享内存与常量

转载 作者:行者123 更新时间:2023-12-04 05:20:53 35 4
gpt4 key购买 nike

我需要大量的常量数据,超过6-8 KB,最多16 KB。同时我不使用共享内存。现在我想将这个常量数据存储在共享内存中。这是个好主意吗?任何性能近似值?广播是否适用于共享内存和常量?

性能对于应用程序至关重要。而且我认为,我的 Tesla C2075 (CUDA 2.0) 上只有 8 KB 常量内存缓存

最佳答案

在计算能力 2.0 中,相同的内存用于 L1 和共享内存。 L1 和共享内存之间的分区可以通过 cudaFuncSetCacheConfig() 调用来控制。我建议将 L1 设置为最大可能 (48K)

cudaFuncSetCacheConfig(MyKernel, cudaFuncCachePreferL1);

然后,从全局内存中提取常量数据,让 L1 处理缓存。如果您有多个 const 数组,则可以通过在内核参数列表中使用 const 限定符来指示编译器对其中一些数组使用常量缓存。这样,您就可以同时利用 L1 和常量缓存来缓存您的常量。

广播适用于 L1 和常量缓存访问。

关于CUDA。共享内存与常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13707293/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com