1

我正在编写一个 Cuda 程序。共享内存的大小为__shared__ int shared_memory[1024]每块 32x32 个线程。第一轮,每个线程访问shared_memory[0]中的值并进行计算,第二轮,每个线程访问shared_memory[31]中的值,...,第32轮,每个线程将访问 shared_memory[1023] 中的值。

我想知道是否有一种有效的方法可以避免线程在每一轮中访问相同的共享内存位置?我知道内存填充是一种避免银行冲突的方法,但是程序需要访问共享内存中的相同位置。

4

0 回答 0