Storage Controller Memory Alignment for Write Performance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Enterprise storage systems face reduced performance in terms of throughput and latency due to storage devices performing operations other than I/O operations, which affects the alignment of memory access operations with their geometry.

Innovation Solution

A storage array controller receives information about the memory layout of a storage device, determines the write size based on this layout, and sends write requests to specific locations within the memory unit, optimizing write operations by breaking up larger requests into smaller, non-overlapping units aligned with the device's geometry.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If storage devices perform operations other than I/O operations, then functionality is enhanced, but performance (throughput and latency) is reduced

Engineering Contradiction:
ImprovefunctionalityVSAvoidperformance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments memory access operations into smaller units that align with the storage device's geometry (e.g., page size, block size). By dividing large memory access requests into multiple aligned operations, the system can efficiently utilize the storage device's native structure while maintaining high performance for I/O operations.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If memory access operations are not aligned to storage device geometry, then flexibility in memory access is improved, but write efficiency is reduced

Engineering Contradiction:
Improvememory access flexibilityVSAvoidwrite efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent performs preliminary alignment of memory access operations to the storage device's geometry before executing write operations. By pre-processing memory access requests to ensure they are properly aligned with page boundaries, block structures, and other geometric constraints, the system maintains operational flexibility while maximizing write efficiency.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If write requests are not broken into smaller units, then operation simplicity is maintained, but parallel writing capability is reduced

Engineering Contradiction:
Improveoperation simplicityVSAvoidparallel writing capability
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent automatically segments large write requests into smaller units that correspond to the storage device's geometric structure (e.g., multiple pages, blocks, or sectors). This segmentation enables parallel writing operations to different regions of the storage device, significantly improving throughput while transparently handling the complexity of broken-down operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of parallelism by breaking write requests into multiple independent operations that can be executed simultaneously across different storage regions. This dimensional expansion from sequential to parallel processing increases writing capability while maintaining operational simplicity through automated management.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentEP4224323A1Aligning memory access operations to a geometry of a storage device
Publication Date: 2023.08.09 PURE STORAGE INC
  • EP4224323A1 patent drawingFigure 1
  • EP4224323A1 patent drawingFigure 2
  • EP4224323A1 patent drawingFigure 3

AI summary

A method, comprising receiving, by a storage device, a write request from a storage array controller, the write request associated with an amount of data sized in dependence upon information describing a layout of memory in the storage device, and writing, by the storage device, the data to a memory unit, the data written to a location within the memory unit in dependence upon the information, wherein the write request includes a physical address of the location in the storage device to store the data, wherein the physical address refers to the location in the storage device for an entire life of the storage device.