Advanced NUMA Attributes
You can use the advanced NUMA attributes to customize NUMA usage.
Attribute | Description | Default |
Numa.RebalancePeriod | Controls the frequency of rebalance periods, specified inmilliseconds. More frequent rebalancing can increase CPUoverheads, particularly on machines with a large number of
running virtual machines. More frequent rebalancing can also improve fairness. |
2000 |
Numa.MigImbalanceThreshold | The NUMA rebalancer computes the CPU imbalancebetween nodes, accounting for the difference between eachvirtual machine’s CPU time entitlement and its actual
consumption. This option controls the minimum load imbalance between nodes needed to trigger a virtual machine migration, in percent. |
10 |
Numa.RebalanceEnable | Enable NUMA rebalancing and scheduling. Set this optionto 0 to disable all NUMA rebalancing and initial placementof virtual machines, effectively disabling the NUMA
scheduling system. |
1 |
Numa.RebalanceCoresTotal | Specifies the minimum number of total processor cores onthe host required to enable the NUMA rebalancer. | 4 |
Numa.RebalanceCoresNode | Specifies the minimum number of processor cores per noderequired to enable the NUMA rebalancer.This option and Numa.RebalanceCoresTotal are useful
when disabling NUMA rebalancing on small NUMA configurations (for example, two-way Opteron hosts), where the small number of total or per-node processors can compromise scheduling fairness when you enable NUMA rebalancing. |
2 |
Numa.AutoMemAffinity | Automatically set memory affinity for virtual machines thathave CPU affinity set. | 1 |
Numa.PageMigEnable | Automatically migrate pages between NUMA nodes toimprove memory locality. Page migration rates set manuallyare still in effect. | 1 |
Advanced Virtual NUMA Attributes
You can use the advanced virtual NUMA attributes to customize virtual NUMA usage.
Attribute | Description | Default |
cpuid.coresPerSocket | Determines the number of virtual cores per virtual CPUsocket. If the value is greater than 1, also determines the sizeof virtual NUMA nodes if a virtual machine has a virtual
NUMA topology. You can set this option if you know the exact virtual NUMA topology for each physical host. |
1 |
numa.autosize | When you set this option, the virtual NUMA topology hasthe same number of virtual CPUs per virtual node as thereare cores on each physical node. | FALSE |
numa.autosize.once | When you create a virtual machine template with thesesettings, the settings are guaranteed to remain the sameevery time you subsequently power on the virtual machine.
The virtual NUMA topology will be reevaluated if the configured number of virtual CPUs on the virtual machine is modified. |
TRUE |
numa.vcpu.maxPerVirtualNode | If cpuid.coresPerSocket is too restrictive as a power oftwo, you can set numa.vcpu.maxPerVirtualNode directly.In this case, do not set cpuid.coresPerSocket. 此参数设定每个虚拟Node节点的vcpu最大数量。 cpuid.coresPerSocket也可以设置,但是该参数总是2的幂,如1,2,4,8等。 如果不想这样的话可以设置本参数,注意此时就不要设置cpuid.coresPerSocket参数了。 |
8 |
numa.vcpu.min | Minimum number of virtual CPUs in a virtual machine thatare required in order to generate a virtual NUMA topology. | 9 缺省情况下一个虚拟node的vcpu最大数目为8,如果一个虚机分配了9个vCPU,那么将会自动启用vNUMA,如果该虚机是分配了8个vCPU那么刚好一个node可以容下,就不会启动vNUMA了。 |
numa.vcpu.maxPerMachineNode | Maximum number of virtual CPUs that belong to the samevirtual machine that can be scheduled on a NUMA node atthe same time. Use this attribute to ensure maximum
bandwidth, by forcing different NUMA clients on different NUMA nodes. 驻留在单个NUMA节点的最大虚拟CPU数量 |
Number ofcores pernode on the
physical host where a virtual machine is running. |
numa.vcpu.maxPerClient | Maximum number of virtual CPUs in a NUMA client. Aclient is a group of virtual CPUs that are NUMA-managedas a single entity. By default, each virtual NUMA node is a
NUMA client, but if a virtual NUMA node is larger than a physical NUMA node, a single virtual NUMA node can be backed by multiple NUMA clients. 被管理程序重新平衡作为单个单元的最大虚拟CPU数量 |
Equalsnuma.vcpu.maxPerMachin
eNode |
numa.nodeAffinity | Constrains the set of NUMA nodes on which a virtualmachine’s virtual CPU and memory can be scheduled.NOTE When you constrain NUMA node affinities, you
might interfere with the ability of the NUMA scheduler to rebalance virtual machines across NUMA nodes for fairness. Specify NUMA node affinity only after you consider the rebalancing issues. |
|
numa.mem.interleave | Specifies whether the memory allocated to a virtual machineis statically interleaved across all the NUMA nodes onwhich its constituent NUMA clients are running and there
is no virtual NUMA topology exposed. |
True |