Storage Array Controller Memory Access Alignment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Enterprise storage systems face performance degradation due to non-I/O operations, which affect throughput and latency, and existing solutions do not effectively align memory access operations with storage device geometry, leading to inefficient data transfer and management.

Innovation Solution

A storage array controller receives information about the memory layout of a storage device, determines the optimal write size based on this layout, and sends write requests to specific locations within the memory units, aligning memory access operations with the device's geometry to improve data management and transfer efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory access operations are not aligned to storage device geometry, then storage devices can perform non-I/O operations, but data transfer efficiency and performance are degraded

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidmemory access operation alignment
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by pre-calculating and pre-aligning memory access operations to match the storage device geometry before actual data transfer occurs. The storage array controller receives geometry information and determines optimal write sizes in advance, preparing alignment parameters that will be applied during subsequent I/O operations, thereby ensuring efficient data transfer without requiring complex real-time adjustments

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes parameters by dynamically adjusting write size and memory access patterns based on the received storage device geometry information. The controller modifies write operation parameters to align with the specific memory layout, block sizes, and geometric characteristics of the storage device, optimizing data transfer efficiency for different device configurations

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If storage devices perform non-I/O operations, then functionality is enhanced, but throughput and latency are reduced

Engineering Contradiction:
Improvestorage device functionalityVSAvoidthroughput and latency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system segments storage operations into distinct I/O and non-I/O categories, allowing them to be managed separately. By aligning memory access operations to storage device geometry, the system ensures that I/O operations execute efficiently while non-I/O operations can proceed independently without blocking critical data transfer paths, thus maintaining both functionality and performance

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements feedback mechanisms where the storage array controller receives information about storage device geometry and uses this feedback to optimize subsequent memory access operations. This feedback loop enables the system to adapt its operation patterns to maintain high throughput and low latency even when non-I/O operations are performed, by adjusting alignment parameters based on observed device characteristics

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3314389B1Aligning memory access operations to a geometry of a storage device
Publication Date: 2023.06.21 PURE STORAGE INC
  • EP3314389B1 patent drawingFigure 1
  • EP3314389B1 patent drawingFigure 2
  • EP3314389B1 patent drawingFigure 3

AI summary

Aligning memory access operations to a geometry of a storage device, including: receiving, by a storage array controller, information describing the layout of memory in the storage device; determining, by the storage array controller, a write size in dependence upon the layout of memory in the storage device; and sending, by the storage array controller, a write request addressed to a location within the memory unit in dependence upon the layout of memory in the storage device.