DMA Storage Controller Bypasses CPU for Low Latency Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed storage systems face high and unpredictable latency due to mismatched usage patterns between processor and storage resources, leading to inefficiencies and additional overheads in servicing storage access requests.

Innovation Solution

Implementing direct memory access (DMA) engines for storage and network controllers to eliminate CPU loads and data copying, allowing client-server processes to manage buffer memory and register direct memory accessible regions, thereby reducing processor involvement in data transfers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If processor resources are used to service storage access requests, then storage requests can be processed, but latency becomes high and unpredictable due to heavy processor utilization

Engineering Contradiction:
Improvestorage request processing capabilityVSAvoidstorage access latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent extracts the data transfer function from the processor by implementing direct memory access (DMA) between storage devices and memory. The processor no longer needs to service every data transfer request, as the DMA controller handles data movement independently, thereby reducing processor utilization and improving storage access latency

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system enables self-service by allowing storage devices to directly access and transfer data to memory without requiring processor intervention for each transfer operation. The DMA controller autonomously manages data movement, freeing the processor to handle higher-level computing tasks while storage operations proceed independently

Inventive Principle:
Principle #25Self-service

2Ease of operation

If data is transferred through kernel space and user space, then proper memory management is achieved, but additional copying overhead increases processor cost

Engineering Contradiction:
Improvememory management correctnessVSAvoiddata transfer overhead
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent removes the unnecessary kernel space to user space data copying step by implementing a direct path where storage devices transfer data directly to the application's buffer in user space through DMA. This eliminates the intermediate copying operation while maintaining proper memory management through direct buffer registration

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements a universal buffer management approach where applications can register their buffer memory regions for direct access by both storage controllers and network interface controllers. This multi-functional buffer pool serves both storage I/O and network I/O operations, eliminating the need for separate kernel-mediated transfer paths

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

Data Source

PatentUS9049265B1Serving remote access to storage resources
Publication Date: 2015.06.02 GOOGLE LLC
  • US9049265B1 patent drawing
  • US9049265B1 patent drawing
  • US9049265B1 patent drawing

AI summary

A method of processing client requests that includes receiving a client request from a client for access to data, issuing a direct memory access command to non-transitory storage resources to load data to a target memory location without accessing the target memory location, and instructing a network interface controller in communication with the storage resources to send a response to the client. The response includes an information portion and a data portion.