Uniform Drive Performance via TCB Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage systems with heterogeneous storage devices of different performance capabilities face challenges in maintaining uniform performance levels during drive qualification and operation.

Innovation Solution

The system creates arrays for different drive types, certifies drives at the same performance level, and computes stage and destage maximum values. At runtime, it sets Task Control Blocks (TCBs) to uniform values based on minimum performance levels across drive types, ensuring uniform performance by limiting actual TCBs and adding delays as needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If heterogeneous storage devices with different performance capabilities are used to increase storage capacity and adaptability, then storage system versatility is improved, but performance uniformity deteriorates

Engineering Contradiction:
Improvestorage system versatilityVSAvoidperformance uniformity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The storage system segments drives by type and performance capability into separate arrays. Each array contains drives of the same type certified at the same performance level, allowing the system to maintain performance uniformity within each segment while supporting heterogeneous drive types across the overall system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different arrays are configured with different maximum TCB values based on their specific drive type characteristics. Fast drives receive higher TCB allocations while slower drives receive lower allocations, ensuring each array operates at its optimal performance level without affecting other arrays.

Inventive Principle:
Principle #3Local quality

2Productivity

If the number of TCBs is increased to improve data staging and destaging throughput, then productivity is improved, but performance inconsistency across different drive types worsens

Engineering Contradiction:
Improvedata staging and destaging throughputVSAvoidperformance consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system dynamically adjusts the maximum TCB parameter based on drive type and performance capability. Each drive type has a predetermined maximum TCB value that optimizes throughput while maintaining consistent performance characteristics across different drive types.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If performance benchmarks are run for each drive type to compute optimal TCB values, then performance optimization is improved, but system complexity and measurement difficulty increase

Engineering Contradiction:
Improveperformance optimizationVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Performance benchmarks are executed during drive qualification before drives are deployed into production arrays. This preliminary characterization establishes predetermined maximum TCB values for each drive type, eliminating the need for complex runtime performance tuning and simplifying ongoing system management.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12293075B1Task adjustment for uniform performance of drives
Publication Date: 2025.05.06 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12293075B1 patent drawing
  • US12293075B1 patent drawing
  • US12293075B1 patent drawing

AI summary

Provided are techniques for task adjustment for uniform performance of drives. Arrays are created for different drive types. Performance benchmarks are run for each of the arrays to compute a stage maximum value and a destage maximum value for each of the drive types. At run time, in response to determining that a mode indictor indicates a uniform performance mode, a maximum number of stage Task Control Blocks (TCBs) are set to a stage maximum uniform value and a maximum number of destage TCBs are set to a destage maximum uniform value. The stage of first data is performed using an actual number of stage TCBs that do not exceed the maximum number of stage TCBs. The destage of second data is performed using an actual number of destage TCBs that do not exceed the maximum number of destage TCBs.