Hypervisor Idle State Selection Using Adaptive Residency Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Hypervisors in virtualized environments face challenges in accurately selecting processor idle states due to lack of visibility into guest virtual machine workloads, leading to inefficient energy consumption and performance issues.

Innovation Solution

A hypervisor-based method using a combination of simple moving average (SMA) and exponential moving average (EMA) calculations in a feedback loop to project processor idle residency, dynamically adjusting idle state selection based on actual residency, without relying on hardware-based auto-demotion or interrupt interception.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If a hypervisor selects deeper processor idle states to reduce power consumption, then energy efficiency is improved, but exit latency increases causing performance degradation

Engineering Contradiction:
Improveprocessor power consumptionVSAvoidexit latency
Core Design Contradiction:
Use of energy by moving objectVSLoss of time

Solution Approach 1:

The hypervisor dynamically adjusts idle state selection based on predicted workload characteristics and historical idle residency patterns. The system transitions from static idle state configuration to dynamic adaptation, selecting different C-states (C1, C2, C3, etc.) based on real-time conditions, thereby optimizing the balance between power savings and exit latency

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The hypervisor performs preliminary workload analysis and idle residency prediction before selecting an idle state. By predicting future workload patterns and estimating how long the processor will remain idle, the system pre-determines the optimal idle state selection, avoiding both premature wake-ups and excessive exit latency

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If the hypervisor uses hardware-based auto-demotion or interrupt interception to improve idle state selection accuracy, then idle state determination accuracy is improved, but device complexity and system overhead increase

Engineering Contradiction:
Improveidle state determination accuracyVSAvoidsystem overhead
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The hypervisor implements self-service by using its own workload analysis capabilities and historical data to make idle state decisions, rather than relying on external hardware mechanisms. The system serves its own idle state selection needs through software-based prediction algorithms, eliminating the need for additional hardware complexity

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent extracts the idle state selection logic from hardware-based mechanisms (auto-demotion, interrupt interception) and relocates it to the hypervisor software layer. This extraction removes the need for complex hardware support while maintaining decision-making accuracy through software-based workload analysis and prediction

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If the hypervisor chooses lighter idle states to reduce exit latency, then performance is improved, but energy consumption increases

Engineering Contradiction:
Improveprocessor performanceVSAvoidprocessor power consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The hypervisor changes the parameter of idle state depth (C-state level) based on predicted workload characteristics. By adjusting this parameter dynamically - selecting deeper states like C3 when long idle periods are predicted, and lighter states like C1 when short idle periods are expected - the system optimizes both performance and energy consumption

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20260017080A1Processor idle state selection in a virtualized environment
Publication Date: 2026.01.15 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20260017080A1 patent drawing
  • US20260017080A1 patent drawing
  • US20260017080A1 patent drawing

AI summary

A method implemented in a computer system with a processor system, including a logical processor, includes configuring an idle state calculation loop with a first idle residency calculation type, generating a projected processor idle residency, determining a target processor idle state based on the projected residency, instructing the logical processor to enter an idle period using the target state, identifying the actual processor idle residency post-idle period, and comparing it to the projected residency. Based on this comparison, the method configures the idle state calculation loop with a second idle residency calculation type. This method optimizes processor idle states by dynamically adjusting the calculation type to improve power efficiency and performance in the computer system.