Storage Controller Path Selection Based on Write Trends

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage device controllers face challenges in optimizing latency and performance due to the need to choose between a cache path and an accelerated path, where disabling the cache improves latency and IOPS but worsens performance for certain workloads, and enabling the cache improves performance for others.

Innovation Solution

A path module that dynamically selects between the cache path and the accelerated path based on the number of write requests and sequential trend, enabling or disabling the cache to maximize overall performance by determining when to switch between the two paths based on workload types.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the cache is disabled to use the accelerated path, then latency is reduced and IOPS is increased, but performance for certain workloads (sequential reads, sequential writes, light random writes) worsens

Engineering Contradiction:
ImprovelatencyVSAvoidperformance
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The system dynamically switches between cache path and accelerated path based on workload characteristics. The path module monitors workload types (sequential reads, sequential writes, random writes) and adjusts the I/O submission path in real-time, making the system adaptable rather than static. This resolves the contradiction by enabling low latency when needed while maintaining performance for specific workload types through appropriate path selection.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the operational parameters of the I/O path by switching between two distinct modes: cache path (with caching enabled) and accelerated path (with cache disabled). This parameter change allows the system to optimize for different performance characteristics depending on the workload, achieving low latency for random workloads while maintaining performance for sequential workloads through parameter-based path selection.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the cache is enabled to use the cache path, then performance for sequential reads, sequential writes and light random writes is improved, but latency is increased and IOPS is reduced

Engineering Contradiction:
ImproveperformanceVSAvoidlatency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The path module implements dynamic path selection that adapts to workload characteristics. When sequential reads, sequential writes, or light random writes are detected, the system activates the cache path to optimize performance. For other workload types, it switches to the accelerated path, creating a dynamic system that resolves the latency-performance tradeoff based on real-time conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system utilizes parameter changes by switching between two operational states: cache path (performance-optimized) and accelerated path (latency-optimized). This parameter-based approach allows the system to achieve high performance for sequential workloads when using the cache path, while accepting the latency tradeoff only when the workload characteristics justify using the accelerated path instead.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If a static path selection is used, then device complexity is reduced, but adaptability to different workload types deteriorates

Engineering Contradiction:
Improvepath selection complexityVSAvoidworkload adaptability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The path module implements a dynamic path selection mechanism that monitors workload characteristics and automatically switches between cache path and accelerated path. This dynamic approach maintains relatively simple device architecture while achieving high adaptability to different workload types through real-time path adjustment, resolving the contradiction between complexity and adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The path selection system operates autonomously by monitoring its own workload characteristics and making independent decisions about which path to use. The path module self-adjusts based on detected workload patterns without requiring external control, achieving high adaptability while maintaining simple device complexity through self-service operation.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8990509B2Accelerated path selection based on number of write requests and sequential trend
Publication Date: 2015.03.24 HEWLETT PACKARD ENTERPRISE DEV LP
  • US8990509B2 patent drawing
  • US8990509B2 patent drawing
  • US8990509B2 patent drawing

AI summary

Embodiments herein relate to selecting an accelerated path based on a number of write requests and a sequential trend. One of an accelerated path and a cache path is selected between a host and a storage device based on at least one of a number of write requests and a sequential trend. The cache path connects the host to the storage device via a cache. The number of write requests is based on a total number of random and sequential write requests from a set of outstanding requests from the host to the storage device. The sequential trend is based on a percentage of sequential read and sequential write requests from the set of outstanding requests.