Dynamic Sleep Time Adjustment for I/O Latency Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current I/O latency tracking techniques, such as hybrid polling, face accuracy issues in predicting I/O completion times due to fluctuations in storage device latency, leading to CPU utilization inefficiencies and performance degradation, especially in ultra-low-latency SSDs.

Innovation Solution

An I/O latency tracking apparatus and method that dynamically adjusts the sleep time for hybrid polling based on the results of recent I/O operations, using a sleep time adjustment unit to calculate an optimal sleep time by multiplying a sleep adjustment factor with the preceding sleep time, and employing lock operations to prevent concurrent access issues during sleep time adjustments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If hybrid polling uses a fixed sleep time based on average I/O latency, then CPU utilization is reduced, but prediction accuracy deteriorates when I/O latency fluctuates

Engineering Contradiction:
ImproveCPU utilizationVSAvoidI/O completion time prediction accuracy
Core Design Contradiction:
Use of energy by moving objectVSMeasurement precision

Solution Approach 1:

The patent applies dynamics by transitioning from a fixed sleep time to a dynamic sleep time that adapts to changing I/O latency conditions. The system monitors recent I/O completion times and adjusts the sleep duration accordingly, allowing the polling mechanism to respond to latency fluctuations while maintaining low CPU utilization.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent implements feedback by using the actual I/O completion time to adjust the sleep time for subsequent polling operations. The system calculates the difference between expected and actual completion times, then modifies the sleep duration based on this feedback, creating a closed-loop control system that improves prediction accuracy over time.

Inventive Principle:
Principle #23Feedback

2Productivity

If polling is used instead of interrupt to avoid context switching overhead, then I/O performance is improved, but CPU usage rate rises to 100%

Engineering Contradiction:
ImproveI/O performanceVSAvoidCPU usage rate
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent applies periodic action by implementing polling at regular intervals determined by the calculated sleep time. Instead of continuous polling that would consume 100% CPU, the system polls periodically based on predicted I/O completion time, reducing CPU usage while maintaining the ability to detect I/O completion promptly.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system dynamically adjusts the polling interval based on observed I/O latency patterns. When I/O operations complete faster than expected, the sleep time is reduced, allowing more frequent polling. When operations take longer, the sleep time increases, reducing CPU burden. This dynamic adjustment resolves the contradiction between performance and CPU usage.

Inventive Principle:
Principle #15Dynamics

3Use of energy by moving object

If sleep time is increased to avoid oversleep, then CPU utilization decreases, but I/O completion detection is delayed

Engineering Contradiction:
ImproveCPU utilizationVSAvoidI/O completion detection delay
Core Design Contradiction:
Use of energy by moving objectVSLoss of time

Solution Approach 1:

The system uses feedback from actual I/O completion times to fine-tune the sleep duration. By comparing expected completion time with actual completion time across multiple operations, the system learns the appropriate sleep duration that balances CPU utilization with timely detection, avoiding both oversleep and undersleep conditions.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent changes the sleep time parameter dynamically based on system conditions and observed performance. Rather than using a fixed or purely conservative sleep time, the system adjusts this parameter based on measured I/O latency characteristics, optimizing the balance between CPU usage and response time.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11768532B2Tracking apparatus and method of I/O latency for storage devices
Publication Date: 2023.09.26 KOOKMIN UNIV IND ACAD COOP FOUND
  • US11768532B2 patent drawing
  • US11768532B2 patent drawing
  • US11768532B2 patent drawing

AI summary

An I/O latency tracking apparatus for storage devices includes: an I/O command generator generating an I/O command for a storage device; an I/O processor providing an I/O request to the storage device based on the I/O command and completing the I/O command by polling the storage device to check I/O completion after sleeping for a sleep time; and a sleep time adjustment unit adjusting the sleep time based on a sequence combination composed of two latest I/O sleep results among oversleep and undersleep results obtained during the polling process.