2013-04-10 1 views
0

나는 호스트에서 실행중인 시뮬레이션 작업을하고 계산을 위해 GPU를 사용하고 있습니다. 계산이 완료되면 호스트는 장치의 메모리를 자체로 복사 한 다음 계산 된 데이터를 먼 호스트로 보냅니다.cudaMemcpy 장치를 먼 호스트에

기본적으로 데이터를 수행합니다 GPU -> 호스트 -> 네트워크 카드

시뮬레이션을 실시간으로하기 때문에 시간이 매우 중요하다, 나는 그런 일하고 싶은 : GPU -> NETWORKCARD을, 데이터 전송 지연을 줄이기 위해

가능합니까? 아니요, 언젠가 우리가 볼 수있는 무언가입니까?

편집 : 먼 호스트에 => CPU

+2

정확히 [GPUDirect] (https://developer.nvidia.com/gpudirect)와 관련 있습니다. – tera

답변

2

예,이 CUDA 4.0에서 가능하며 나중에 사용 기본적으로 내가이에서 페르미 (Fermi) 또는 케플러 준 Telsa 카드로 리눅스 생각 주소 직접 통합 지원 플랫폼에서 GPUDirect facility (단계). "먼 호스트 (distant host)"가 의미하는 바를 많이 언급하지는 않았지만, MPI가 가능한 네트워크가 있다면 사용할 수있는 솔루션이있을 것입니다.

적어도 mvapich2은 이미 PCI Express 버스를 통해 Infiniband 어댑터에 직접 RDMA를 포함하여 Infiniband 또는 TCP/IP를 사용하여 GPU-GPU 전송을 지원합니다. 다른 MPI 구현은 아마도 현재까지도 지원을하고있을 것입니다.

+0

GPUDirect는 GPU-GPU P2P 인 것처럼 보입니다. 내 먼 호스트는 CPU입니다. – moeryn