Error "Insufficient capacity on each physical CPU" recieved after vMotion failure.
search cancel

Error "Insufficient capacity on each physical CPU" recieved after vMotion failure.

book

Article ID: 402537

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

  • The Virtual machine has a Latency Sensitivity value set as high and is part of a heterogeneous cluster. 
  • vMotion of virtual machines between hosts running on different hardware compute capacity fails. 

We see the following error on the destination host logs. 

2025-05-21T06:35:03.518Z Er(163) Vpxa[2102608]: [Originator@6876 sub=Default opID=#####-###_####_##### [VpxLRO] -- ERROR lro-##### -- ######-####-####-####-################ -- vmotionManager -- vim.host.VMotionManager.initiateDestination: :vmodl.fault.S
ystemError
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: --> Result:
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: --> (vmodl.fault.SystemError) {
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->    faultCause = (vim.fault.GenericVmConfigFault) {
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->       faultCause = (vmodl.MethodFault) null,
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->       faultMessage = (vmodl.LocalizableMessage) [
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->          (vmodl.LocalizableMessage) {
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             key = "msg.vmmonVMK.schedCpuMinInvalid",
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             arg = (vmodl.KeyAnyValue) [
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->                (vmodl.KeyAnyValue) {
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->                   key = "1",
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->                   value = "20951"
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->                }
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             ],
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             message = "Invalid CPU reservation for the latency-sensitive VM. Need at least 20951 MHz (measured) of CPU reservation."
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->          },
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->          (vmodl.LocalizableMessage) {
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             key = "msg.vmmonVMK.schedConfigParseError",
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             arg = <unset>,
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             message = "An error occurred while parsing scheduler-specific configuration parameters. "
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->          },
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->          (vmodl.LocalizableMessage) {
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             key = "msg.moduletable.powerOnFailed",
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             arg = (vmodl.KeyAnyValue) [
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->                (vmodl.KeyAnyValue) {
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->                   key = "1",
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->                   value = "MemSchedEarly"
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->                }
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             ],
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             message = "Module 'MemSchedEarly' power on failed. "
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->          },
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->          (vmodl.LocalizableMessage) {
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             key = "msg.migrate.resume.fail",
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             arg = <unset>,
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->             message = "The VM failed to resume on the destination during early power on. "
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->          },


2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->       ],
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->       reason = "Invalid CPU reservation for the latency-sensitive VM. Need at least 20951 MHz (measured) of CPU reservation."
2025-05-21T06:35:03.518Z Er(163) Vpxa[2102544]: -->       msg = "Invalid CPU reservation for the latency-sensitive VM. Need at least 20951 MHz (measured) of CPU reservation."

 

Note:  The sample snippets shown above are samples, and the CPU values in the specified logs may vary in different environments.

Environment

7x, 8.x

Cause

  • Enabling latency sensitivity on a Virtual machine gives exclusive access to vCPUs on the Physical CPU (pCPU), and each vCPU owns a pCPU entirely.
  • When you migrate a Virtual Machine between hosts of different hardware capacity, the destination host should have the same CPU capacity to accommodate the Virtual Machine. 
  • The required CPU capacity on the destination VM is calculated as base clock frequency × vCPU count and is in MHz. This is a hardcoded value and cannot be changed when you enable CPU sensitivity. 
  • If the destination host does not have the calculated CPU capacity for the latency-sensitivity-enabled Virtual Machine, the migration fails. 

Resolution

  • This is an expected behaviour with enabling latency sensitivity on a heterogeneous hardware cluster.  
  • The required CPU capacity is calculated in MHz and is a hardcoded value that cannot be adjusted. Hence, this is a limitation with latency sensitivity enabled Virtual machines in a cluster of different hardware capacities.
  • The recommendation is to configure VM to host affinity between the hosts with the same Physical CPU Capacity.   

Additional Information

Performance Tuning for Latency-Sensitive Workloads . (Refer to page 8 "Performance Tuning for Latency-Sensitive Workloads")

Attachments

latency-tuning-vsphere8-perf.pdf get_app