Host Address Space Identifier for Virtual Machine NUMA Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtualized computing systems, automatic NUMA balancing leads to conflicts and inefficiencies due to independent management of NUMA nodes by host and guest systems, resulting in sub-optimal performance and the need for manual partitioning, which is time-consuming and difficult.
Innovation Solution
Implementing host address space identifiers (HASIDs) that map guest physical addresses to virtual NUMA nodes, allowing the hypervisor to automate NUMA placement synchronously with the guest, thereby avoiding unnecessary data copies and optimizing NUMA balancing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If automatic NUMA balancing is implemented independently by host and guest systems, then each system can optimize its own performance, but conflicts arise leading to sub-optimal overall performance
Solution Approach 1:
The patent merges the host NUMA balancing system and guest NUMA balancing system into a unified synchronous coordination mechanism. The hypervisor synchronizes NUMA node management between host and guest, ensuring both systems work together rather than independently, thus resolving conflicts and achieving optimal overall performance.
Solution Approach 2:
The hypervisor acts as an intermediary between the host OS and guest OS, mediating NUMA node assignments and synchronizing their operations. This intermediary coordinates the NUMA balancing activities to prevent conflicts while maintaining the performance optimization benefits for both host and guest systems.
2Reliability
If manual NUMA partitioning is implemented to avoid conflicts, then NUMA balancing correctness is improved, but the process becomes time-consuming and difficult
Solution Approach 1:
The system implements self-service automatic NUMA balancing through synchronous coordination between host and guest. Instead of requiring manual partitioning configuration, the hypervisor automatically manages NUMA node assignments and synchronizes balancing operations, making the system both correct and easy to deploy.
Solution Approach 2:
The hypervisor performs preliminary setup of NUMA node mappings and synchronization protocols before the host and guest systems begin their NUMA balancing operations. This preliminary configuration ensures correct operation without requiring time-consuming manual partitioning later.
3Productivity
If synchronous NUMA placement coordination is implemented between host and guest, then overall system efficiency is improved, but system complexity increases
Solution Approach 1:
The hypervisor implements a universal NUMA management mechanism that handles both host and guest NUMA balancing through a single synchronous coordination framework. This multi-functional approach manages diverse NUMA operations (host balancing, guest balancing, node assignment) through a unified system, improving efficiency without proportionally increasing complexity.
Data Source
AI summary
Aspects of the disclosure provide for implementing host address space identifiers for non-uniform memory access (NUMA) locality in virtual machines. A method of the disclosure includes determining, by a virtual machine (VM) executed by a processing device and managed by a hypervisor, that a memory page of the guest is to be moved from a first virtual non-uniform memory access (NUMA) node of the VM to a second virtual NUMA node of the VM. The method further includes updating, by the VM in a guest page table, upper bits of a guest physical address (GPA) of the memory page to include a host address space identifier (HASID) of the second virtual NUMA node, and causing an execution control to be transferred from the VM to the hypervisor due to a page fault resulting from attempting to access the updated GPA.


