Byte-Addressed Local NVM Access via RDMA
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems for accessing non-volatile memory (NVM) in multicore computing environments are limited by block-based access methods inherited from mechanical media, leading to increased access and storage times, and existing RDMA frameworks are not designed for local NVM access.
Innovation Solution
A queued, byte-addressed system and method that integrates local NVM as a remote memory within the OFED framework, allowing RDMA Read/Write directives for direct access and reducing the burden on internal hardware buses by enabling byte-level access patterns required by certain applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If block-based access methods are used for NVM, then compatibility with existing mechanical media systems is maintained, but access time and storage time increase
Solution Approach 1:
The patent changes the fundamental access parameter from block-based to byte-addressed, allowing random access to individual bytes rather than requiring entire blocks to be read or written. This parameter change enables applications to access only the specific data bytes needed, dramatically reducing access time while maintaining compatibility with NVM hardware through the use of a virtualization layer that translates byte-addressed requests into block-based operations.
2Productivity
If RDMA frameworks are used for remote memory access, then data transfer efficiency is improved, but the framework complexity increases and is not designed for local NVM access
Solution Approach 1:
The patent creates a universal interface layer that implements RDMA-like byte-addressed access semantics for local NVM, making the same interface applicable to both remote memory access and local storage access. This multi-functional approach allows applications to use identical programming models for different types of memory access, reducing framework complexity while maintaining high data transfer efficiency.
Solution Approach 2:
The patent introduces a virtualization layer as an intermediary between the application and the physical NVM device. This intermediary translates high-level byte-addressed RDMA commands into low-level block-based NVM operations, handling the complexity of interface translation while presenting a simple unified interface to applications.
3Productivity
If byte-level access patterns are implemented, then application performance is improved, but the burden on internal hardware buses increases
Solution Approach 1:
The patent segments byte-addressed access requests into appropriate block-sized transfers optimized for the underlying NVM hardware. By grouping byte-level access patterns into efficient block transfers where possible, and only transferring the specific bytes needed when random access is required, the system maintains high application performance while minimizing the actual data burden on the hardware buses.
Data Source
AI summary
A queued, byte addressed system and method for accessing flash memory and other non-volatile storage class memory, and potentially other types of non-volatile memory (NVM) storage systems. In a host device, e.g., a standalone or networked computer, having attached NVM device storage integrated into a switching fabric wherein the NVM device appears as an industry standard OFED™ RDMA verbs provider. The verbs provider enables communicating with a ‘local storage peer’ using the existing OpenFabrics RDMA host functionality. User applications issue RDMA Read/Write directives to the ‘local peer (seen as a persistent storage) in NVM enabling NVM memory access at byte granularity. The queued, byte addressed system and method provides for Zero copy NVM access. The methods enables operations that establish application private Queue Pairs to provide asynchronous NVM memory access operations at byte level granularity.


