Virtual SLIT Generation for NUMA Topology Mismatches

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Exposing a virtual System Locality Information Table (SLIT) to a guest operating system in a NUMA system is challenging, especially when the virtual NUMA topology differs from the physical topology, and virtual NUMA node migration invalidates latency values, leading to erroneous task placement and memory allocation decisions.

Innovation Solution

The hypervisor implements three approaches to expose a virtual SLIT to guest operating systems: one-to-one static placement, one-to-many static placement, and dynamic placement. These approaches involve creating a virtual SLIT based on physical SLIT latency values, allowing for accurate latency information while accommodating virtual NUMA node migrations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the physical SLIT is passed as-is to the guest OS, then the guest OS can use accurate latency information, but this is only possible when the virtual NUMA topology matches the physical NUMA topology exactly

Engineering Contradiction:
Improvelatency information accuracyVSAvoidtopology flexibility
Core Design Contradiction:
Measurement precisionVSAdaptability or versatility

Solution Approach 1:

The patent creates a virtual SLIT that copies and adapts latency information from the physical SLIT. Instead of passing the physical SLIT directly, the hypervisor generates a virtual SLIT that mirrors the necessary latency data while accommodating virtual topology differences. This allows the guest OS to receive accurate latency information even when virtual and physical topologies differ.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent transforms latency parameters from the physical SLIT context to the virtual SLIT context. When virtual NUMA nodes are migrated between physical NUMA nodes, the hypervisor updates the latency values in the virtual SLIT to reflect new physical locations, thereby maintaining accuracy despite topology changes.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If virtual NUMA nodes are migrated between physical NUMA nodes during runtime, then load balancing and flexibility improve, but the latency values in the virtual SLIT become invalid

Engineering Contradiction:
Improvenode migration flexibilityVSAvoidlatency value validity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements a dynamic virtual SLIT that can be updated in real-time. Unlike a static SLIT that would become invalid upon migration, the virtual SLIT is regenerated or updated whenever virtual NUMA nodes are migrated, ensuring latency values remain current and reliable while maintaining full migration flexibility.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The hypervisor monitors virtual NUMA node positions and uses this feedback to update the virtual SLIT accordingly. When a migration occurs, the system detects the change and refreshes the latency information in the virtual SLIT to reflect the new physical locations, maintaining reliability without restricting mobility.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If the virtual NUMA topology has greater or fewer NUMA nodes than the physical NUMA topology, then virtualization flexibility improves, but the physical SLIT cannot be passed directly to the guest OS

Engineering Contradiction:
Improvevirtual topology flexibilityVSAvoidSLIT generation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the SLIT generation process into manageable components. The virtual SLIT is constructed by mapping virtual NUMA nodes to physical NUMA nodes and selectively incorporating latency information from the physical SLIT. This segmentation allows the system to handle topology mismatches by processing only the relevant portions of the physical SLIT that correspond to active virtual nodes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The hypervisor acts as an intermediary between the physical SLIT and the virtual SLIT. It translates and adapts the physical latency information into the virtual context, handling topology mismatches by creating appropriate mappings. This intermediary role simplifies the overall process by centralizing the transformation logic in the hypervisor rather than requiring complex guest OS handling.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12321768B2Virtual non-uniform memory access (NUMA) locality table for NUMA systems
Publication Date: 2025.06.03 VMWARE INC
  • US12321768B2 patent drawing
  • US12321768B2 patent drawing
  • US12321768B2 patent drawing

AI summary

Various approaches for exposing a virtual Non-Uniform Memory Access (NUMA) locality table to the guest OS of a VM running on NUMA system are provided. These approaches provide different tradeoffs between the accuracy of the virtual NUMA locality table and the ability of the system's hypervisor to migrate virtual NUMA nodes, with the general goal of enabling the guest OS to make more informed task placement/memory allocation decisions.