Dynamic Interrupt Assignment for Virtualized I/O Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current server-class systems with multiple layers of bridge chips and virtualized I/O devices experience high latency in interrupt routing due to congestion, leading to poor performance during high-rate data transfers.

Innovation Solution

A system and method for dynamically assigning interrupts to virtual machines based on I/O metrics, where an interrupt manager monitors latency, usage levels, and transfer rates, and updates logical interrupt assignments using hint data from device drivers to optimize performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If static interrupt assignments are used in virtualized I/O systems, then system configuration is simple and stable, but interrupt latency increases and performance deteriorates during high-rate data transfers

Engineering Contradiction:
Improvesystem stabilityVSAvoidinterrupt latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements dynamic interrupt assignment where the interrupt manager continuously monitors I/O metrics (data transfer rates, latency, usage levels) and adjusts interrupt assignments in real-time based on actual system conditions. This transforms the static interrupt configuration into a dynamic system that adapts to varying workloads, resolving the contradiction between stability and latency by maintaining stability through automated control while improving latency through condition-based optimization.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The interrupt manager establishes a feedback loop by monitoring I/O performance metrics and using this information to make informed decisions about interrupt assignments. The system measures actual interrupt latency and data transfer rates, compares them against thresholds, and automatically reassigns interrupts when performance degradation is detected. This feedback mechanism enables the system to maintain reliability while actively managing and reducing interrupt latency under varying load conditions.

Inventive Principle:
Principle #23Feedback

2Loss of time

If more interrupts are assigned to virtual machines to reduce latency, then interrupt handling speed improves, but system complexity and resource consumption increase

Engineering Contradiction:
Improveinterrupt latencyVSAvoidinterrupt assignment complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The interrupt manager operates autonomously to monitor system conditions and perform interrupt reassignments without requiring manual intervention or complex configuration management. The system self-adjusts by automatically detecting performance issues and reallocating interrupts based on monitored metrics, thereby reducing the operational complexity despite the dynamic nature of the assignments. The complexity is managed through automation rather than manual processes.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system dynamically changes interrupt assignment parameters based on monitored I/O conditions. Rather than maintaining a fixed complex configuration, the interrupt manager adjusts the number and distribution of interrupts as a variable parameter in response to actual workload demands. This parameter-based approach simplifies management by treating interrupt assignments as adjustable variables rather than fixed configurations.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If interrupt assignments are updated dynamically based on I/O metrics, then system performance and throughput improve, but processing overhead and computational resources increase

Engineering Contradiction:
Improvedata transfer throughputVSAvoidprocessing overhead
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The interrupt manager implements selective monitoring and adjustment by focusing on key performance metrics and only reassigning interrupts when specific thresholds are exceeded. Rather than continuously analyzing all system parameters and constantly adjusting assignments, the system applies partial action by triggering reassignments only when performance degradation is detected, thereby reducing processing overhead while maintaining productivity benefits.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system establishes performance thresholds and criteria in advance that trigger interrupt reassignment. By pre-defining the conditions under which dynamic adjustment should occur, the system avoids the need for complex real-time decision-making algorithms, reducing computational overhead. The preliminary setup of thresholds enables simple comparison-based control logic that maintains productivity while minimizing processing requirements.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11194611B2Dynamic assignment of interrupts based on input/output metrics
Publication Date: 2021.12.07 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11194611B2 patent drawing
  • US11194611B2 patent drawing
  • US11194611B2 patent drawing

AI summary

A system and method dynamically assign interrupts to a virtual machine from an input/output (I/O) adapter based on I/O metrics of the I/O adapter. An interrupt manager monitors I/O adapter traffic flow metrics such as latency of data transfers, usage levels, and transfers per unit of time. The interrupt manager determines when a traffic flow metric for a virtual machine meets a predetermined performance threshold and updates virtual interrupt assignments in a logical interrupt table to improve performance of the system. The interrupt manager uses hint data provided by the device driver to make the interrupt assignments.