Manually Configure CPU Model

Follow this document to manually configure CPU model for all hypervisor hosts in your virtualized cluster.

Occasionally you may need to manually configure the CPU model across hosts in your virtualized cluster, to ensure consistent behavior for important features such as Dynamic Resource Rebalancing (DRR), Virtual Machine High Availability (VM HA), Maintenance Mode and overall predictable performance across your hypervisor hosts.

Follow the steps to do this:

Step 1: Query the existing CPU model on a host

Run the following command to query the list of supported CPU models on a host

$ virsh domcapabilities | grep "model usable='yes" | sort

This command will show output similar to the following:

<model usable='yes'>486</model>
      <model usable='yes'>Broadwell-noTSX-IBRS</model>
      <model usable='yes'>Broadwell-noTSX</model>
      <model usable='yes'>Cascadelake-Server-noTSX</model>
      <model usable='yes'>Conroe</model>
      <model usable='yes'>core2duo</model>
      <model usable='yes'>coreduo</model>
      <model usable='yes'>Haswell-noTSX-IBRS</model>
      <model usable='yes'>Haswell-noTSX</model>
      <model usable='yes'>IvyBridge-IBRS</model>
      <model usable='yes'>IvyBridge</model>
      <model usable='yes'>kvm32</model>
      <model usable='yes'>kvm64</model>
      <model usable='yes'>n270</model>
      <model usable='yes'>Nehalem-IBRS</model>
      <model usable='yes'>Nehalem</model>
      <model usable='yes'>Opteron_G1</model>
      <model usable='yes'>Penryn</model>
      <model usable='yes'>pentium2</model>
      <model usable='yes'>pentium3</model>
      <model usable='yes'>pentium</model>
      <model usable='yes'>qemu32</model>
      <model usable='yes'>SandyBridge-IBRS</model>
      <model usable='yes'>SandyBridge</model>
      <model usable='yes'>Skylake-Client-noTSX-IBRS</model>
      <model usable='yes'>Skylake-Server-noTSX-IBRS</model>
      <model usable='yes'>Westmere-IBRS</model>
      <model usable='yes'>Westmere</model>

Step 2 - Choose a Common CPU Model

Run the above command on all hypervisor hosts in your virtualized cluster to find the list of supported models. Then choose the most recent CPU Model that is supported across all hosts.

Step 3 - Apply CPU Model Changes to All Hosts

Now that you have identified the common model, make changes to the compute service config file to apply the CPU model to all hypervisor hosts in your virtualized cluster.

Follow CPU Mode and Model Configuration and edit the CPU model value with the model you identified in step 2.

Make sure to Restart Compute Service on each host following the changes.

Last updated

Was this helpful?