我有4个GPU挂在相同的PCIe交换机( PEX 8747)上的哈斯韦尔为基础的系统。我想向每个GPU发送相同的数据。PCIe交换机是否有可能将数据复制到N个目标,而不是进行N个单独的传输?实际上,是否可以通过PCIe总线向N个GPU广播数据?
我想知道SLI / Crosssfire是如何处理这些问题的?我可以想象大量的数据是相同的,每个GPU在一个特定的场景被渲染。我记得有读到,旧的NVIDIA 890超SLI系统包括这个广播机制在他们的开关为SLI。
TB.pdf
对于较新的PCIe交换机,这是可能的吗?
Update:如下面的答案所示,PCIe标准似乎支持多播。我发现了一些关于这个的信息
www.pcisig.com/developers/main/training_materials/get_document?doc_id=31337695e3bc0310ea570c9df49e507b9d3eb4a5
是的,我特别想要一个CUDA或OpenCL接口来将数据传输到N个设备。似乎遗憾的是,API还不支持这一点。
发布于 2013-11-05 19:40:03
大约5年前,PCI批准了一种基于PCI的交换机级多播方案,它(我相信)在PCI-E3.0标准中得到了充分的描述。但是,我不相信任何GPU/加速供应商支持多播,而且对于CUDA 5.5这样的特性,当然也没有任何CUDA级别的API支持。
https://stackoverflow.com/questions/19795486
复制相似问题