【发布时间】:2015-09-11 19:49:36
【问题描述】:
我有两台机器。每台机器上有多张特斯拉卡。每台机器上还有一张 InfiniBand 卡。我想通过 InfiniBand 在不同机器上的 GPU 卡之间进行通信。只需点对点单播就可以了。我当然想使用 GPUDirect RDMA,这样我就可以省去额外的复制操作。
我知道 Mellanox 现在为其 InfiniBand 卡提供了 driver。但它没有提供详细的开发指南。我也知道 OpenMPI 支持我要求的功能。但是 OpenMPI 对于这个简单的任务来说太重了,它不支持单个进程中的多个 GPU。
我想知道直接使用驱动程序进行通信是否可以得到任何帮助。代码示例,教程,任何东西都会很好。另外,如果有人能帮我在 OpenMPI 中找到处理这个问题的代码,我将不胜感激。
【问题讨论】:
-
这听起来像是你应该和 Mellanox 谈谈的事情
-
有问题的代码主要位于openib BTL 组件中。查找名称中包含
gdr的内容,以及预处理器符号名称中包含CUDA或GRD的条件编译块。 -
请注意,对场外资源(例如教程)的请求在此处被视为离题,使您的问题处于离题边缘。
标签: cuda openmpi infiniband gpudirect