2016-11-22 103 views
-2

在我的GPU中,每个块的最大线程数为1024.我正在使用CUDA处理图像处理项目。现在如果我想使用共享内存,这意味着我只能使用1024像素使用一个块,并且只需要将这1024个元素复制到共享内存中可存放在共享内存中的数据量CUDA

回答

1

您的问题还不太清楚,所以我会回答在标题中被问到。

CUDA中共享内存中可容纳的数据量取决于GPU的计算能力。 例如,在CC 2.x和3.x:

在计算能力2.x和3.x的装置,每个多处理器具有片上存储器的64KB可L1高速缓存和之间划分共享内存。

配置共享内存的容量在这里部分:Nvidia Parallel Forall Devblog : Using Shared Memory in CUDA C/C++

你必须要考虑的是通过映射线程的内存访问银行,以避免库冲突的优化。这是在这个博客中介绍的,你应该阅读它。