Byte-Addressed Local NVM Access via RDMA

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvecompatibility with existing mechanical media systemsVSAvoidaccess time and storage time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

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.

Inventive Principle:
Principle #35Parameter changes

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

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidframework complexity
Core Design Contradiction:
ProductivityVSDevice complexity

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.

Inventive Principle:
Principle #6Universality (Multi-functionality)

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If byte-level access patterns are implemented, then application performance is improved, but the burden on internal hardware buses increases

Engineering Contradiction:
Improveapplication performanceVSAvoidburden on internal hardware buses
Core Design Contradiction:
ProductivityVSLoss of energy

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.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9342448B2Local direct storage class memory access
Publication Date: 2016.05.17 GLOBALFOUNDRIES US INC
  • US9342448B2 patent drawing
  • US9342448B2 patent drawing
  • US9342448B2 patent drawing

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.