RDMA Hardware Accelerator for Low-Latency Transaction Memory Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing RDMA technologies face inefficiencies in processor and memory load due to the need for direct memory access operations that require significant host CPU intervention, leading to increased latency and reduced scalability in cloud computing environments.
Innovation Solution
The implementation of a hardware accelerator that manages RDMA transactions using a transaction database and connection database, allowing direct memory access between host computers while bypassing the host CPU for certain operations, utilizing transaction identifiers to facilitate zero-copy data placement and reduce processor load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If direct memory access operations are performed with host CPU intervention, then memory access can be controlled and managed, but processor load increases and latency increases
Solution Approach 1:
The patent extracts the RDMA transaction management functionality from the host CPU and implements it in a dedicated hardware accelerator. The hardware accelerator includes a transaction database and connection database that are independently managed, allowing RDMA operations to be performed without burdening the host CPU. This separation enables memory access control to be maintained while eliminating the processor load penalty.
2Reliability
If direct memory access operations are performed with host CPU intervention, then memory access can be managed, but latency increases
Solution Approach 1:
By extracting RDMA transaction management from the host CPU path and implementing it in dedicated hardware, the patent eliminates the processing delays associated with CPU intervention. The hardware accelerator can manage memory access control directly through hardware-based transaction processing, significantly reducing latency while maintaining proper memory access management.
3Productivity
If hardware accelerator is used for RDMA transactions, then processor load is reduced and scalability is enhanced, but device complexity increases
Solution Approach 1:
The hardware accelerator is designed with multi-functional capabilities to justify its added complexity. It can handle multiple RDMA transaction types (read, write, atomic operations), manage multiple connections simultaneously through the connection database, and perform transaction tracking and completion reporting. This universality allows a single hardware accelerator to replace what would otherwise require multiple CPU intervention points, reducing overall system complexity despite the accelerator's internal complexity.
Solution Approach 2:
The hardware accelerator acts as an intermediary between the network interface and host memory, managing RDMA transactions without requiring host CPU involvement. The transaction database and connection database serve as intermediary data structures that enable the hardware accelerator to autonomously manage RDMA operations, reducing processor load while providing the necessary coordination functions.
4Productivity
If transaction database is used to store active transaction information, then memory access efficiency is improved, but memory resources are consumed
Solution Approach 1:
The patent implements a transaction database with local quality by storing only the specific information needed for active RDMA transactions in hardware memory, rather than maintaining complete connection state for all possible connections. The transaction database contains localized, transaction-specific data (transaction identifiers, status, and progress) that enables efficient memory access for active operations without consuming excessive memory resources. Less critical or historical transaction data is managed separately in host memory.
Data Source
AI summary
Apparatus and methods are disclosed herein for remote, direct memory access (RDMA) technology that enables direct memory access from one host computer memory to another host computer memory over a physical or virtual computer network. In one example, RDMA functionality is provided by combining a host executing instructions for RDMA software applications with dedicated hardware accelerator, where the host has access to substantially all RDMA connection context (e.g., configuration, status, state machine, counters, etc.) and a hardware accelerator stores a portion of the context information for a set of currently active transactions. The hardware accelerator derives a transaction identifier from header information in received RDMA packets and performs a local RDMA operation using at least a portion of the received data, a destination address of the location RDMA operation being based at least in part on a memory address determined using the transaction identifier.


