2017-05-25 190 views
2

是否可以在GPU與遠程主機之間執行RDMA操作?GPU與遠程主機之間的RDMA

Nvidia網站上的在線文檔只談到了在GPU之間做RDMA,並沒有提到在GPU主機之間做這件事的可能性。

注意:我有權訪問配備K80 GPU和Mellanox NIC的羣集。

+1

哪個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

+0

這樣的出版物我有一個ConnectX-3 VPI。主機CPU是x86_64。 Cuda版本是V8.0.61。 – JC1

回答

4

是否有可能在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才能正常工作。

+1

還請檢查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