2013-04-10 45 views
0

我正在模擬一個主機上運行並使用GPU進行計算。計算完成後,主機將設備中的內存複製到自身,然後將計算的數據發送給遠程主機。cudaMemcpy設備到遠程主機

基本上數據都將做到:GPU - >主機 - >網卡

由於模擬是實時的,時間是非常重要的,我想有這樣的事情:GPU - > NETWORKCARD,以減少數據傳輸的延遲。

可能嗎? 如果不是,我們有一天會看到什麼?

編輯:遙遠的主機=> CPU

+2

這正是[GPUDirect](https://developer.nvidia.com/gpudirect)的意思。 – tera 2013-04-10 15:42:15

回答

2

是的,這是可能的CUDA 4.0和更高版本使用GPUDirect facility的平臺上支持統一的直接尋址(我認爲費米或開普勒特斯拉卡在這個基本的linux階段)。你對「遠程主機」的含義沒有太多的描述,但是如果你有一個MPI可行的網絡,那麼你可能已經有了一個可供你使用的解決方案。

至少mvapich2已經支持使用Infiniband或TCP/IP進行GPU-GPU傳輸,包括通過PCI Express總線將RDMA直接連接到Infiniband適配器。其他MPI實現可能現在也有支持,儘管我最近並沒有仔細研究它,以確保知道。

+0

GPUDirect似乎只是GPU-GPU P2P,我的遠程主機是CPU。 – moeryn 2013-04-11 06:33:53