【发布时间】:2013-11-16 17:03:06
【问题描述】:
在基于 Haswell 的系统上,我有 4 个 GPU 挂在同一个 PCIe 交换机 (PLX PEX 8747) 上。我想向每个 GPU 发送相同的数据。 PCIe 交换机是否可以将数据复制到 N 个目标,而不是进行 N 个单独的传输?实际上是否可以通过 PCIe 总线向 N 个 GPU 广播数据?
我想知道 SLI / Crosssfire 如何处理此类问题?我可以想象在渲染的给定场景中,每个 GPU 的大量数据都是相同的。我记得读到过旧的 NVIDIA 890 Ultra SLI 系统在他们的 SLI 开关中包含了这种广播机制。
http://www.nvidia.com/docs/IO/52280/NVIDIA_Broadcast_PWShort_TB.pdf
较新的 PCIe 交换机可以做到这一点吗?
更新:PCIe 标准似乎支持多播,如下面的答案所述。我在
找到了一些关于此的信息www.pcisig.com/developers/main/training_materials/get_document?doc_id=31337695e3bc0310ea570c9df49e507b9d3eb4a5
是的,我特别想要一个 CUDA 或 OpenCL 接口来将数据传输到 N 个设备。 API 还不支持这个似乎很遗憾。
【问题讨论】:
-
没有 CUDA API 可以做到这一点。如果您的问题与 CUDA 无关,请删除 CUDA 标签。否则,我会将其发布为答案。