0

如何最快地将 256 字节的数据块从一个 CUDA 块传输到另一个块?有没有办法比全局内存传输得更快?

4

1 回答 1

0

理论上,在计算能力 >= 2.0 的设备上,使用全局内存的块之间的传输可能非常快,因为全局内存事务使用 L1 和 L2 缓存。

但是,在块之间安全地传输内存的唯一方法是在单独的内核调用中启动这些块。然后,您将失去我刚才描述的理论优势,因为缓存在调用之间被刷新。

在给定的内核调用中,您无法知道块将以何种顺序启动。

在由单独的内核调用启动的块之间传输数据是 CUDA 中的常见范例,如果有足够的计算工作要做,则可以完全隐藏全局内存事务的延迟。

于 2012-08-26T18:33:56.887 回答