Storage Stack Buffer Allocation for NV-DIMM Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional storage stack architectures do not fully utilize the benefits of new non-volatile memory technologies like NV-DIMM, as they require data copying through multiple layers, defeating the memory-addressable benefits and leading to inefficiencies in data access and storage.

Innovation Solution

A storage stack architecture that allocates buffer space at the storage device layer, allowing direct access and release operations, enabling applications to read/write data directly from/to the storage device, eliminating the need for intermediate buffer copies and optimizing performance for memory-addressable storage devices like NV-DIMM and RAM caches.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional storage stack architecture is used with multiple layers, then data can be stored in secondary storage, but data copying through multiple layers increases access latency and reduces performance

Engineering Contradiction:
Improvedata access speedVSAvoidstorage stack layers
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent extracts the buffer allocation function from the upper application layer and relocates it to the storage device layer. This allows the storage device to directly allocate buffers for applications without requiring data to be copied through multiple intermediate layers, thereby reducing access latency while maintaining the multi-layer storage stack architecture.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a buffer management mechanism at the storage device layer that acts as an intermediary between applications and secondary storage. This intermediary allocates buffers directly in the storage device, eliminating the need for applications to allocate and copy data through multiple layers, thus improving access speed without increasing overall system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If buffer space is allocated at the application layer, then applications can manage their own buffers, but data must be copied through multiple storage stack layers reducing efficiency

Engineering Contradiction:
Improvestorage operation efficiencyVSAvoiddata copying time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent inverts the traditional buffer allocation approach by moving buffer allocation from the application layer down to the storage device layer. Instead of applications allocating buffers and copying data down the stack, the storage device allocates buffers directly and makes them accessible to applications, eliminating the time-consuming data copying process while maintaining application control over buffer management.

Inventive Principle:
Principle #13The other way round (Inversion)

3Adaptability or versatility

If NV-DIMM is used as memory-addressable storage, then direct access is possible, but traditional storage stack architecture does not take advantage of these benefits

Engineering Contradiction:
Improvememory-addressable accessVSAvoidstorage stack architecture
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent makes the storage device layer universally capable of both traditional secondary storage functions and memory-addressable direct access functions. By implementing buffer allocation and direct access mechanisms at the storage device layer, the system can handle both conventional storage operations and NV-DIMM style direct memory access, thereby improving adaptability without requiring separate architectures.

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

Data Source

PatentUS10831650B2Systems and methods for accessing non-volatile memory and write acceleration cache
Publication Date: 2020.11.10 OVH US LLC
  • US10831650B2 patent drawing
  • US10831650B2 patent drawing
  • US10831650B2 patent drawing

AI summary

Embodiment of a storage stack are disclosed whereby increased performance and other technical improvements are achieved by an application requesting access (e.g., asynchronously) to an address, returning a buffer, and the application issuing a buffer release when the operation is complete.