I/O Decoupling Accelerator for Disk Thrashing Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current disk drive systems face bottlenecks due to slow input/output (I/O) speeds, particularly in seek and rotational latency, which hinder overall system performance, especially with random access patterns and limited cache memory leading to disk thrashing and reduced throughput.

Innovation Solution

An I/O decoupling system comprising an I/O accelerator with a host manager, buffer manager, and disk buffer that allocates resources and coordinates data movement to minimize latency by using a large disk buffer and dynamic threshold management to prioritize and optimize data transfers between the host and storage elements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a large cache memory is used to improve data access speed, then data transfer performance is improved, but device complexity and cost increase

Engineering Contradiction:
Improvedata transfer speedVSAvoidcache memory size
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The cache memory is divided into multiple independent cache lines, each capable of holding a complete data block. This segmentation allows the system to manage cache contents more efficiently by treating each line as an independent unit that can be individually allocated, accessed, and evicted, thereby improving data transfer speed while keeping the overall cache structure manageable and less complex.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-fetching data blocks into the cache memory before they are actually requested by the host. The cache controller monitors access patterns and proactively loads data that is likely to be needed soon, reducing the average access time and improving data transfer speed without requiring a proportionally larger cache memory.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If cache memory size is increased to reduce disk accesses, then data access performance is improved, but power consumption increases

Engineering Contradiction:
Improvedata access performanceVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The cache replacement policy is made dynamic by implementing a pseudo-LRU algorithm that adapts to changing access patterns. The system dynamically adjusts which cache lines to retain or evict based on recent access behavior, improving data access performance by keeping frequently accessed data in cache while using power efficiently by not maintaining unnecessarily large cache allocations for rarely accessed data.

Inventive Principle:
Principle #15Dynamics

3Productivity

If disk cache is used to improve throughput, then data transfer rate is improved, but seek time and rotational latency are not reduced

Engineering Contradiction:
Improvedata transfer rateVSAvoidseek time and rotational latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-loading data blocks into the cache memory before they are actually requested by the host. The cache controller monitors access patterns and proactively loads data that is likely to be needed soon, reducing the average access time by eliminating seek time and rotational latency for cached data, thereby improving data transfer rate while reducing time loss.

Inventive Principle:
Principle #10Preliminary action

4Adaptability or versatility

If multiple applications access disk simultaneously, then system utilization is improved, but I/O performance bottleneck is accentuated

Engineering Contradiction:
Improvesystem utilizationVSAvoidI/O performance
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The cache memory acts as an intermediary between multiple applications and the disk subsystem. It buffers data transfers, allowing multiple applications to access data concurrently without directly competing for disk I/O resources. The cache controller manages multiple cache lines and can serve multiple requests from cached data, improving system utilization while maintaining high I/O performance by decoupling application requests from physical disk operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7640381B1Input/output decoupling system method having a cache for exchanging data between non-volatile storage and plurality of clients having asynchronous transfers
Publication Date: 2009.12.29 DATASPHERE LLC
  • US7640381B1 patent drawing
  • US7640381B1 patent drawing
  • US7640381B1 patent drawing

AI summary

An I/O decoupling system comprising an I/O accelerator coupled between a host interface and a channel interface, wherein the I/O accelerator comprises a host manager, a buffer manager a function manager, and a disk buffer. The host manager is coupled to the host interface to receive a request from a connected host computer. The function manager in response to receiving the request allocates the disk buffer and determines a threshold offset for the buffer while coordinating the movement of data to the disk buffer through the channel interface coupled to the disk buffer.