Channel Subsystem I/O Multiplexing for Storage Benchmarking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Benchmarking storage systems is inefficient when host systems cannot operate at the maximum I/O rate, leading to incorrect measurements of storage system performance, and using multiple hosts to achieve this rate increases complexity and cost.

Innovation Solution

A host system performs benchmark I/O operations by formulating a performance test command that actuates communication hardware to read and write data at multiple addresses within the storage system, using a dispatch program at the channel subsystem layer to generate multiple operations without additional data or commands from applications, allowing for efficient benchmarking without requiring multiple hosts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If multiple hosts are used to perform benchmark measurements, then the storage system can be driven to maximum I/O rate for accurate measurements, but the complexity and expense of benchmarking increases

Engineering Contradiction:
Improveaccuracy of storage system performance measurementVSAvoidcomplexity of benchmarking system
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent combines the functions of multiple benchmarking hosts into a single host by implementing a channel subsystem that can generate multiple I/O operations from a single application command. The channel subsystem acts as an intermediary that multiplies the I/O capacity of a single host, merging the capabilities that would otherwise require multiple hosts to achieve maximum storage system I/O rates.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The channel subsystem serves as an intermediary between the application layer and the storage system. It receives a single performance test command from the application and generates multiple I/O operations to drive the storage system at maximum capacity. This intermediary layer enables one host to achieve the I/O throughput that would otherwise require multiple hosts.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If multiple hosts are used to perform benchmark measurements, then the storage system can be driven to maximum I/O rate for accurate measurements, but the expense of benchmarking increases

Engineering Contradiction:
Improveaccuracy of storage system performance measurementVSAvoidnumber of hosts required
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent merges the functionality of multiple hosts into a single host by implementing a channel subsystem that can generate multiple I/O operations from a single application command. This consolidation reduces the number of hosts from multiple to one, thereby reducing the expense and resource requirements while maintaining the ability to drive the storage system at maximum I/O rates.

Inventive Principle:
Principle #5Merging (Combining)

3Device complexity

If a single host runs benchmark applications, then the system is simpler and less expensive, but the host cannot operate at maximum I/O rate leading to incorrect measurements

Engineering Contradiction:
Improvesimplicity of benchmarking systemVSAvoidaccuracy of storage system performance measurement
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The channel subsystem acts as an intermediary that enables a single host to achieve maximum I/O rates. It sits between the application layer and the storage system, receiving single I/O commands and expanding them into multiple operations. This intermediary allows the simple single-host architecture to deliver the high I/O throughput necessary for accurate storage system performance measurements.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The channel subsystem changes the parameters of I/O operations by taking a single command with basic parameters and generating multiple I/O operations with varied parameters (different addresses, data patterns, etc.). This parameter multiplication enables the single host to saturate the storage system's I/O capacity, transforming the host's limited I/O capability into effective maximum-rate benchmarking.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12105613B2Performance scale testing with I/O reuse
Publication Date: 2024.10.01 EMC IP HLDG CO LLC
  • US12105613B2 patent drawing
  • US12105613B2 patent drawing
  • US12105613B2 patent drawing

AI summary

A host performs benchmark I/O operations for a storage system by an application on the host formulating a performance test command, providing the performance test command to a channel subsystem layer of the host that actuates communication hardware that provides signals to the storage system, and performing a plurality of benchmark I/O operations at the channel subsystem layer in response to a single performance test command by actuating the communication hardware that provides signals to the storage system. The single performance test command may result in actuating the communication hardware to read and write data at a plurality of addresses of the storage system. The channel subsystem layer may perform the plurality of benchmark I/O operations without receiving any additional data or commands from any applications on the host. A dispatch program that runs on the channel subsystem layer may receive operational data and may actuate the communication hardware.