Nutanix, Inc.
LOCKLESS HANDLING OF BUFFERS FOR REMOTE DIRECT MEMORY ACCESS (RDMA) I/O OPERATIONS

Last updated:

Abstract:

Methods, systems and computer program products for lockless acquisition of memory for RDMA operations. A contiguous physical memory region is allocated. The contiguous physical memory region is divided into a plurality of preregistered chunks that are assigned to one or more process threads that are associated with an RDMA NIC. When responding to a request from a particular one of the one or more process threads, a buffer carved from the preregistered chunk of the contiguous physical memory region is assigned to the requesting process thread. Since the memory is pre-registered, and since the associations are made at the thread level, there is no need for locks when acquiring a buffer. Furthermore, since the memory is pre-registered, the threads do not incur registration latency. The contiguous physical memory region can be a contiguous HugePage contiguous region from which a plurality of individually allocatable buffers can be assigned to different threads.

Status:
Application
Type:

Utility

Filling date:

31 Dec 2020

Issue date:

30 Jun 2022