什么是银行冲突? (做Cuda / OpenCL编程)
我一直在阅读CUDA和OpenCL的编程指南,我无法弄清楚银行冲突是什么。他们只是倾向于如何解决问题而不详细说明主题本身。任何人都可以帮我理解吗?如果帮助是在CUDA / OpenCL的背景下,或者只是计算机科学中的银行冲突,我没有偏好。
没有找到相关结果
已邀请:
5 个回复
凄嘛姥
因此,如果半转换中的每个线程访问连续的32位值,则不存在库冲突。此规则的一个例外(每个线程必须访问自己的银行)是广播: 如果所有线程都访问相同的地址,则该值只读取一次并广播到所有线程(对于GT200,它必须是半转换中访问相同地址的所有线程,iirc fermi和AMD gpus可以为任意数量的线程访问相同的价值)。
杰黔轿缺
呈辖玫割善
编译器通常通过缓冲阵列或使用阵列中的素数元素来避免这些问题。
师埠女
呸溉