Virtual Machine Scheduling in Non-Uniform Memory Access Architectures

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In NUMA architectures, existing virtual machine scheduling methods face challenges in optimizing VCPU and memory scheduling due to the need to balance load and consider complex data collection and system topology, which hinders research efficiency and performance optimization.

Innovation Solution

An apparatus and method for virtual machine scheduling in NUMA architectures, comprising a performance monitoring module, an algorithm implementation interface module, and a virtual machine scheduling module, where the performance monitoring module collects and transmits performance data using a kernel PMU, and the algorithm implementation interface module invokes a scheduling algorithm to make decisions for the virtual machine scheduling module, thereby simplifying the scheduling process and improving research efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the best effort method is used to schedule VCPU and memory to one node, then local memory access is maintained, but load balance technology interferes with the placement strategy causing it to fail

Engineering Contradiction:
Improvememory access speedVSAvoidplacement strategy reliability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent implements a dynamic scheduling approach where the system continuously monitors performance metrics and adjusts VCPU-memory binding decisions in real-time. The scheduling strategy transitions from static best-effort placement to dynamic optimization based on actual system conditions, allowing the system to adapt when load balancers modify the topology or when performance requirements change.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces a feedback mechanism that collects performance data from the virtual machine environment and uses it to refine scheduling decisions. By monitoring memory access patterns, CPU performance, and I/O operations, the system gains visibility into actual performance impacts and adjusts scheduling policies accordingly, creating a closed-loop control system that overcomes the open-loop nature of best-effort scheduling.

Inventive Principle:
Principle #23Feedback

2Productivity

If a researcher implements a NUMA scheduling optimization algorithm, then scheduling optimization is achieved, but the researcher must consider complex details such as data collection and specific scheduling implementation across different VMMs

Engineering Contradiction:
Improvescheduling optimization performanceVSAvoidimplementation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal scheduling framework that works across multiple virtual machine monitor platforms (KVM, Xen, VMware). By abstracting the common scheduling challenges and implementing a platform-agnostic core algorithm, the system provides NUMA optimization capabilities that are portable and reusable across different virtualization environments, reducing the need for platform-specific implementations.

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

Solution Approach 2:

The patent introduces an intermediary scheduling layer that sits between the hardware NUMA topology and the virtual machine management software. This intermediary component handles the complexity of data collection, performance monitoring, and scheduling decision-making, while presenting a simplified interface to researchers and system administrators. The intermediary absorbs the implementation complexity, allowing researchers to focus on algorithm development rather than infrastructure details.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If the original placement strategy is used in NUMA architecture, then simplicity is maintained, but the strategy fails due to interference from load balance technology

Engineering Contradiction:
Improvescheduling simplicityVSAvoidvirtual machine performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the scheduling system into distinct functional modules: performance monitoring, affinity calculation, scheduling decision-making, and execution. This segmentation allows the system to maintain simple operation at the user level while handling complex optimization internally. Each module performs a specific function, making the overall system easier to understand and operate despite the sophisticated algorithms employed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements self-service scheduling where the system automatically monitors performance, makes scheduling decisions, and adjusts configurations without requiring manual intervention. The scheduling framework autonomously collects performance data, analyzes affinity requirements, and optimizes VCPU-memory binding, freeing researchers and administrators from the burden of manual tuning while maintaining simple operation.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11204798B2Apparatus and method for virtual machine scheduling in non-uniform memory access architecture
Publication Date: 2021.12.21 SHANGHAI JIAOTONG UNIV
  • US11204798B2 patent drawing
  • US11204798B2 patent drawing
  • US11204798B2 patent drawing

AI summary

The method includes the following steps: step 1. obtaining NUMA topology information of a host machine, and monitoring virtual machine performance events by using a kernel PMU; step 2. implementing a greedy algorithm, and a scheduling decision is obtained; step 3. scheduling, according to the scheduling decision, a virtual CPU (VCPU) and a memory of a virtual machine; step 4. after the scheduling of the virtual machine is complete, redirecting to step 1 to continue performing performance monitoring of the virtual machine.