Guest Partition CPU Usage Mitigation via Host Offloading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Virtual machines with limited virtual CPUs constrain guest OS operations, such as data transfers, and are inefficient in sharing resources, leading to suboptimal offloading of operations between virtual machines due to high CPU usage and data copying requirements.

Innovation Solution

A method where a guest partition sends instructions to a host partition to execute operations like data read, write, or copy, using host virtual resources like CPUs and DMA controllers, allowing the guest partition to offload operations and free its resources for other tasks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If guest OS executes data transfer operations on guest partition virtual resources, then operations are completed within the guest partition, but CPU usage of the guest partition increases and resource sharing efficiency decreases

Engineering Contradiction:
Improveoperation completion reliabilityVSAvoidresource sharing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The host partition acts as an intermediary that receives data transfer instructions from the guest partition and executes them using host virtual resources. This mediator approach allows the guest partition to offload CPU-intensive data transfer operations to the host, reducing guest CPU usage while maintaining reliable operation completion through the host's processing capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Use of energy by moving object

If guest partition offloads operations to host partition, then guest partition CPU usage decreases, but data copying between virtual machine memories is required

Engineering Contradiction:
Improveguest partition CPU usageVSAvoiddata copying overhead
Core Design Contradiction:
Use of energy by moving objectVSLoss of energy

Solution Approach 1:

The invention extracts the data transfer operation execution from the guest partition and places it in the host partition. The guest partition sends instructions to the host, and the host executes these operations using its own virtual resources. This extraction eliminates the need for the guest partition to perform CPU-intensive data transfer operations, significantly reducing guest CPU usage while the host handles the data copying overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If limited number of virtual CPUs is used in guest partition, then resource constraints are enforced, but processor intensive operations are constrained

Engineering Contradiction:
Improveresource sharing capabilityVSAvoidprocessor intensive operation capability
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The host partition serves multiple functions: it manages the virtualization infrastructure, executes data transfer operations for the guest partition, and provides resource sharing capabilities. By making the host partition multi-functional, the system can accommodate processor intensive operations in the guest partition by leveraging the host's additional processing capacity, thereby enhancing the guest partition's operational capability beyond its limited virtual CPUs.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS8843669B2Guest partition high CPU usage mitigation when performing data transfers in a guest partition
Publication Date: 2014.09.23 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8843669B2 patent drawing
  • US8843669B2 patent drawing
  • US8843669B2 patent drawing

AI summary

An invention is disclosed for offloading operations, such data transfers, of a guest partition to a host partition. A guest operating system is presented with virtualized resources rather than physical resources—e.g. a guest virtualized processor, guest virtualized memory space, and a guest virtualized direct memory access (DMA) controller. The guest partition can detect the guest operation system attempt to initiate a data transfer, and can instruct the host partition to perform the data transfer. The guest partition need not perform the data transfer using the guest virtual resources. The host partition can perform the data transfer to a remote computing as instructed by the guest partition without copying the data to the host virtualized memory space. The host partition can provide a message to the guest partition indicative of a status of the data transfer.