CPU Clockrate of guest virtual machines running on ESXi [EN version]


Maybe you noticed it before, Guest VMs running on ESXI hosts always shows the base clock rate of a CPU in Tools like Taskmanager, HWinfo or CoreTemp.

ESXi reports the guest operating system the base clock of the CPU only. This leads to the conception that the CPU would only run with the base clock all the time. But instead CPU Turboboost mechanisms or Power saving features can be active to optimize the CPUs performance / energy consumption behavior.

Based on BIOS PowerProfile or ESXi PowerProfile configuration the CPU uses all available Turboboost clockrates. In Fact, Singlecore turbo boost can be observed, when the total CPU load is low. In general, clockrates below the Singlecore Turboboost and the base clockrate can be observed in reality.

For example, an AMD Epyc 75F3 can often run at up to 3.9GHz on all cores as long as the total load does not reach the 280W TDP budget. The CPU has a base clock of 2.95 Ghz.

The current clock rate can be detected via the ESX CLI tools esxtop.

To do this, switch to P mode for power and then select %aperf/Mperf via the f key in Config mode and press f again. Confirm by pressing Enter.

This view lists all cores with a percentage value. The percentage value displays the current clock rate  in relation to the base clock. A value above 100% indicates a clock rate in turbo mode of the CPU. A value below 100% means that the core is in an power-saving state below the base clock.

In the example above an AMD Epyc 75F3 with a base clock of 2.95Ghz  results in 100% %A/MPerf. In this scenario the CPU clocks between 3,7Ghz and – 3,95Ghz, which results in a much higher performance in comparison to the base clock. This especially interesting for CPU intensive workloads like CAD-VDI.