Hypervisor Memory Offlining for Virtual Machine Timeout Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualization systems, there is a challenge in managing memory efficiently, particularly when there are indefinite delays in message processing by destination machines, leading to memory bottlenecks and potential crashes or reboots of source virtual machines due to un reclaimed memory blocks.

Innovation Solution

A system and method where a hypervisor reserves memory blocks for messages, determines whether to reclaim them based on timeout values or requests from virtual machines, and offlines the memory by either unmapping specific pages or all memory associated with the source virtual machine, ensuring that the memory remains accessible to the virtual machine.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the hypervisor reserves memory blocks for messages in virtualization systems, then message transmission between virtual machines is enabled, but memory bottlenecks occur when there are indefinite delays in message processing by destination machines

Engineering Contradiction:
Improvemessage transmission reliabilityVSAvoidmemory availability
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The hypervisor dynamically changes the memory state parameter from 'reserved' to 'offline' when a timeout occurs, allowing the same memory block to be reallocated. This parameter change resolves the contradiction by enabling memory reuse without compromising message transmission reliability, as the system maintains proper timeout monitoring and memory state management.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the hypervisor holds memory blocks indefinitely to ensure message delivery, then message transmission completeness is maintained, but system productivity decreases due to memory bottlenecks

Engineering Contradiction:
Improvemessage delivery completenessVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The memory management system transitions from a static reservation approach to a dynamic state machine with multiple states (reserved, timeout, offline, accessible). This dynamic approach allows the system to adapt memory allocation based on message delivery status, resolving the contradiction by releasing memory blocks after timeouts while maintaining delivery completeness through proper state tracking and timeout monitoring.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The hypervisor implements a timeout mechanism that discards reserved memory blocks when message delivery is not confirmed within a specified time period. The memory is then recovered and made accessible for reallocation, resolving the contradiction by preventing permanent memory holds while ensuring message delivery through timeout-based recovery.

Inventive Principle:
Principle #34Discarding and recovering

3Reliability

If the hypervisor offlines memory blocks after timeout, then memory bottlenecks are prevented and system stability improves, but device complexity increases due to additional memory management operations

Engineering Contradiction:
Improvesystem stabilityVSAvoidmemory management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The memory management system is segmented into distinct operational states (reserved, timeout, offline, accessible) with clear transition rules. This segmentation resolves the contradiction by organizing complex memory management operations into manageable state transitions, improving system stability while making the complexity more controllable and predictable through structured state management.

Inventive Principle:
Principle #1Segmentation

4Productivity

If the hypervisor implements timeout-based memory reclamation, then memory utilization improves during delays, but the risk of premature memory reclamation increases

Engineering Contradiction:
Improvememory utilizationVSAvoidmemory reclamation safety
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The hypervisor implements a feedback mechanism through timeout monitoring that tracks message delivery status before triggering memory reclamation. This feedback loop resolves the contradiction by using timeout information to determine when memory can safely be reclaimed, improving memory utilization while preventing premature reclamation through configurable timeout thresholds and state verification.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9575796B2Virtual device timeout by memory offlining
Publication Date: 2017.02.21 RED HAT ISRAEL
  • US9575796B2 patent drawing
  • US9575796B2 patent drawing
  • US9575796B2 patent drawing

AI summary

A system, methods, and apparatus for virtual device timeout by memory offlining. A hypervisor receives a message from a source virtual machine to be transmitted to a destination machine and reserves a block of memory associated with the message. The message received from the source virtual machine is transmitted to the destination machine. The hypervisor then determines whether to reclaim the block of memory. If reclaiming the block of memory, the hypervisor offlines the block of memory by offlining one or more pages corresponding to the block of memory and/or offlining all memory corresponding to the source virtual machine. The hypervisor then indicates to the source virtual machine that the block of memory is accessible.