Hypervisor Virtual Memory Page Swapping Across Compute Blades

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current multi-core computing systems face challenges in efficiently managing and allocating virtual memory across compute blades, leading to inefficiencies in data processing and storage, particularly in data-intensive applications where memory resources need to be dynamically allocated and swapped between local and remote locations.

Innovation Solution

The implementation of a hypervisor-based system for virtual page swapping and memory disaggregation, utilizing balloon drivers and management agents to facilitate remote memory allocation, migration, and packing, ensuring cache coherence and efficient memory allocation through MA-based indexing and data structures that map machine addresses to virtual parameters.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If virtual memory is dynamically allocated and swapped between local and remote locations across compute blades, then memory resource utilization and data processing efficiency are improved, but system complexity and memory management overhead increase

Engineering Contradiction:
Improvedata processing efficiencyVSAvoidmemory management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a hypervisor as an intermediary layer between the operating systems and physical memory hardware. This hypervisor manages virtual memory pages, tracks their locations across compute blades, and handles swapping operations between local and remote memory. By centralizing memory management functions in the hypervisor, the system achieves efficient dynamic memory allocation without requiring complex modifications to individual OS memory management mechanisms.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments memory into discrete virtual pages that can be independently tracked, allocated, and swapped between different compute blades. This page-based segmentation allows the system to manage memory resources in small, manageable units rather than requiring monolithic memory management, reducing the complexity of tracking memory across multiple nodes while enabling flexible dynamic allocation.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If memory resources are dynamically allocated and swapped across compute blades, then adaptability to varying memory demands is improved, but memory access speed and latency increase

Engineering Contradiction:
Improvememory allocation flexibilityVSAvoidmemory access speed
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent implements dynamic memory allocation where virtual pages can be assigned to different physical locations across compute blades based on real-time demand. The hypervisor maintains a mapping between virtual pages and their physical locations, enabling flexible reassignment. This dynamic approach allows the system to adapt memory distribution to varying workloads while managing the trade-off between flexibility and access speed through intelligent page selection and swapping strategies.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If hypervisor-based virtual page swapping is implemented, then remote memory allocation capability is improved, but system overhead and processing time increase

Engineering Contradiction:
Improveremote memory allocation capabilityVSAvoidmemory management overhead
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The hypervisor performs preliminary tracking and mapping of virtual pages to physical locations before actual memory access occurs. By maintaining advance knowledge of page locations and pre-establishing swap strategies, the system can reduce the overhead during actual memory operations. The hypervisor proactively manages page migration and allocation rather than reacting to each memory request individually, thereby reducing overall system overhead.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8788739B2Hypervisor-based management of local and remote virtual memory pages
Publication Date: 2014.07.22 HEWLETT PACKARD ENTERPRISE DEV LP
  • US8788739B2 patent drawing
  • US8788739B2 patent drawing
  • US8788739B2 patent drawing

AI summary

A system and method is illustrated for comparing a target memory address and a local memory size using a hypervisor module that resides upon a compute blade, the comparison based upon a unit of digital information for the target memory address and an additional unit of digital information for the local memory size. Additionally, the system and method utilizes swapping of a local virtual memory page with a remote virtual memory page using a swapping module that resides on the hypervisor module, the swapping based upon the comparing of the target memory address and the local memory size. Further, the system and method is implemented to transmit the local virtual memory page to a memory blade using a transmission module that resides upon the compute blade.