Remote direct memory access

From Wikipedia, the free encyclopedia
Jump to: navigation, search

In computing, remote direct memory access (RDMA) is a direct memory access from the memory of one computer into that of another without involving either one's operating system. This permits high-throughput, low-latency networking, which is especially useful in massively parallel computer clusters.

Overview[edit]

RDMA supports zero-copy networking by enabling the network adapter to transfer data directly to or from application memory, eliminating the need to copy data between application memory and the data buffers in the operating system. Such transfers require no work to be done by CPUs, caches, or context switches, and transfers continue in parallel with other system operations. When an application performs an RDMA Read or Write request, the application data is delivered directly to the network, reducing latency and enabling fast message transfer.

However, this strategy presents several problems related to the fact that the target node is not notified of the completion of the request (single-sided communications).

Acceptance[edit]

Much like other high-performance computing (HPC) interconnects, as of 2013 RDMA has achieved limited acceptance due to the need to install a different networking infrastructure. However, new standards such as iWARP enable Ethernet RDMA implementation at the physical layer using TCP/IP as the transport, combining the performance and latency advantages of RDMA with a low-cost, standards-based solution.[1] The RDMA Consortium and the DAT Collaborative[2] have played key roles in the development of RDMA protocols and APIs for consideration by standards groups such as the Internet Engineering Task Force and the Interconnect Software Consortium.[3]

Hardware vendors have started working on higher-capacity RDMA-based network adapters, with rates of 40 Gbit/s reported.[4][5] Software vendors, such as Red Hat and Oracle Corporation, support these APIs in their latest products,[citation needed] and as of 2013 engineers have started developing network adapters that implement RDMA over Ethernet.[6] Both Red Hat Enterprise Linux and Red Hat Enterprise MRG[7] have support for RDMA. Microsoft supports RDMA in Windows Server 2012 via SMB Direct.

Common RDMA implementations include the Virtual Interface Architecture, RDMA over Converged Ethernet (RoCE),[8][9] InfiniBand, and iWARP.

References[edit]

  1. ^ "Understanding iWARP" (PDF). Intel Corporation. Retrieved 17 August 2015. 
  2. ^ "DAT Collaborative website". Retrieved 14 October 2014. 
  3. ^ The Interconnect Software Consortium website
  4. ^ "Microsoft Based Solutions - Mellanox Technologies". Retrieved 14 October 2014. 
  5. ^ "40Gbe SMB Direct RDMA Over Ethernet For Windows Server 2012 - Chelsio Communications". Retrieved 14 October 2014. 
  6. ^ "40Gbe SMB Direct RDMA Over Ethernet For Windows Server 2012 - Chelsio Communications". Chelsio Communications. 2013-04-02. Retrieved 2016-07-15. The demonstration will show Microsoft's Windows Server 2012 SMB Direct running at line-rate 40Gb using RDMA over Ethernet (iWARP). 
  7. ^ "Red Hat Enterprise MRG 2.0 Now Available". Retrieved 23 June 2011. 
  8. ^ Ophir Maor. "RDMA and Storage Solutions". Mellanox. Retrieved October 2015.  Check date values in: |access-date= (help)
  9. ^ RDMA over Converged Ethernet

External links[edit]