NUMA Nodes

Overview

To improve performance, SolusVM pins virtual CPUs and memory of KVM servers to NUMA nodes. This ensures that each virtual server’s resources are located on the same physical processor and memory bank, minimizing memory access latency. SolusVM automatically selects the most suitable NUMA node based on available resources.

NUMA node selection algorithm

When creating, reinstalling, resizing, or migrating a virtual KVM server to a compute resource with multiple NUMA nodes, SolusVM uses the following algorithm to choose the most suitable node:

  1. Sort NUMA nodes by provisioned memory in ascending order.
  2. Choose the first NUMA node from the sorted list with free memory sufficient for the server. If none is found, go to the next step.
  3. Choose the first NUMA node from the sorted list with available memory sufficient for the server. If none is found, go to the next step.
  4. Choose the first NUMA node from the sorted list.