是否可以在GPU与远程主机之间执行RDMA操作?GPU与远程主机之间的RDMA
Nvidia网站上的在线文档只谈到了在GPU之间做RDMA,并没有提到在GPU主机之间做这件事的可能性。
注意:我有权访问配备K80 GPU和Mellanox NIC的群集。
是否可以在GPU与远程主机之间执行RDMA操作?GPU与远程主机之间的RDMA
Nvidia网站上的在线文档只谈到了在GPU之间做RDMA,并没有提到在GPU主机之间做这件事的可能性。
注意:我有权访问配备K80 GPU和Mellanox NIC的群集。
是否有可能在GPU和远程主机之间执行RDMA操作?
是的,有可能用“GPUDirect RDMA”自2012年起的Nvidia计算的GPU(特斯拉和的Quadro)的特征(开普勒级GPU和CUDA 5.0)移动GPU和Infiniband卡之间的数据。有一个关于GPUDirect RDMA在CUDA工具包http://docs.nvidia.com/cuda/gpudirect-rdma/
GPUDirect RDMA网页开普勒级GPU和CUDA 5.0引进了技术,使该GPU和第三方端设备之间的数据交换的直接路径使用PCI Express的标准功能。第三方设备的例子有:网络接口,视频采集设备,存储适配器。
GPUDirect RDMA在Tesla和Quadro GPU上均可用。
有许多限制可以应用,最重要的是两台设备必须共享相同的上游PCI Express根联合体。其中一些限制取决于所使用的平台,并可能在当前/未来的产品中取消。
必须对设备驱动程序进行一些简单的更改,以便在广泛的硬件设备上启用此功能。本文档介绍了该技术,并介绍了在Linux上启用GPUDirect RDMA连接到NVIDIA GPU所需的步骤。
有一些限制:http://docs.nvidia.com/cuda/gpudirect-rdma/index.html#supported-systems
2.4。支持的系统
一般性评论。尽管GPUDirect RDMA在第三方设备和NVIDIA GPU 之间工作的唯一理论要求是它们共享相同的根联合体,但存在一些错误(主要在 芯片组中),导致其执行得不好或不工作完全在某些 设置。
我们可以在三种情形之间的区别,这取决于是 GPU和第三方设备之间的路径:PCIe交换机 只有单一CPU/IOH CPU/IOH < - > QPI/HT < - > CPU/IOH路径上仅有PCIe交换机的第一个 情况是最佳的 ,并且产生最佳性能。第二种情况下,涉及单个CPU/IOH 工作,但性能较差(特别是 点对点读取带宽在某些处理器体系结构上已被证明严重受限于 )。最后,第三种情况,其中路径穿过QPI/HT链路,可能性能极其有限 甚至无法可靠工作。提示:
lspci
可以用来检查PCI 拓扑:$ lspci -t
平台支持对于IBM的Power 8平台, GPUDirect RDMA和P2P不支持,但没有明确 禁用。他们可能无法在运行时工作。
在ARM64上,必要的点对点功能取决于 硬件和特定平台的软件。所以虽然 GPUDirect RDMA在这种情况下没有明确禁用,但没有 保证它将完全正常工作。
IOMMUs GPUDirect RDMA当前依赖于所有物理地址 从不同PCI设备的角度来看是相同的。此 使其与IOMMU执行任何形式的翻译 不是1:1不兼容,因此它们必须被禁用或配置为 传递转换GPUDirect RDMA才能正常工作。
还请检查https://stackoverflow.com/search?q=GPUDirect和https://stackoverflow.com/questions/31046386/how-to-use-gpudirect-rdma-with-infiniband“如何使用GPUDirect RDMA与Infiniband “ - ”你需要安装以下软件:Mellanox OFED已安装..最近NVIDIA CUDA套件已安装.. Mellanox-NVIDIA GPUDirect插件“&http://www.mellanox.com/related-docs/prod_software/RDMA_Aware_Programming_user_manual.pdf – osgx
哪个mellanox网卡你有(芯片是什么)? Nvidia称其功能为“[GPUDirect RDMA]”(http://docs.nvidia.com/cuda/gpudirect-rdma/),并且自2012年以来它应该在GPU中得到支持。您的主机cpu是什么 - 是x86/x86_64还是IBM?你的CUDA版本是什么?有像https://www.researchgate.net/publication/266388594_Infiniband-Verbs_on_GPU_A_case_study_of_controlling_an_Infiniband_network_device_from_the_GPU和http://web.cse.ohio-state.edu/~panda.2/5194/slides/5m_5p_gpu.pdf – osgx
这样的出版物我有一个ConnectX-3 VPI。主机CPU是x86_64。 Cuda版本是V8.0.61。 – JC1