1,GDRCopy的原理
GDRCopy是一个基于GPU direct RDMA技术的低时延GPU内存copy的库。如上图所示的H2D和D2H的内存拷贝,传统上采用cudaMemcpy,它实际是由GPU触发DMA引擎在CPU和GPU之间搬移内存。因为需要额外的操作DMA引擎的指令,它在小数据搬移时效率并不高。GDRCopy则允许CPU采用PCIE BAR映射的方式直接访问GPU内存,因为是直接的LD/ST指令(SIMD指令),所以对于小数据来说效率更高,时延更低。如下图所示,H2D拷贝16KB以下的数据,cudaMemcpy需要7us,而GDRCopy只需要1us。
2,example
3,资源:
github.com/NVIDIA/gdrcopy
developer.nvidia.com/gdrcopy