Search the VMware Knowledge Base (KB)
View by Article ID

Host power management causes problems with guest timekeeping on Linux hosts (1591)

  • 16 Ratings


I have a Linux host with power management features that vary the processor speed. When the host processor speed changes, the guest clock runs too quickly or too slowly. Can I correct this?


This article applies to VMware Workstation 4.0 and higher, VMware GSX Server 2.5.1 and higher, and VMware Server 1.x running on Linux hosts. For more information on these products on Windows hosts, see Host power management causes problems with guest timekeeping on Windows hosts (1227).

This problem occurs because current VMware for Linux products do not have complete support for host power management features (such as Intel SpeedStep, or AMD PowerNow or Cool'n'Quiet) that vary the processor speed. This article gives one workaround that prevents guest clocks from running quickly and another that periodically corrects the time when guest clocks run slowly. Alternatively, for more accurate time, you can lock the host processor to a constant speed. For more information, see Locking SpeedStep, PowerNow, or Cool'n'Quiet on the Host to a Constant Speed (708) and System Clocks Running at a Slower Speed in the Guest Operating System (916).

To prevent guest clocks from running too quickly, specify the correct maximum host CPU speed in your global configuration file, /etc/vmware/config . If this file exists, edit it with a text editor, adding the lines described below. The file may not exist. If it does not exist, create it as a plain text file.

The example presented here assumes that the host computer has a maximum speed of 1700MHz. The first line is the most important one. It should be your host computer's maximum speed in kHz -- that is, its speed in MHz times 1000, or its speed in GHz times 1000000. To find your actual host's maximum CPU speed, run cat /proc/cpuinfo and look for the line cpu MHz, which is your host's maximum CPU speed. Add these lines to your global configuration file:

host.cpukHz = 1700000
host.noTSC = TRUE
ptsc.noTSC = TRUE

To periodically correct the time (once per minute) when a guest clock runs slowly, VMware Tools must be installed in the guest. On the Options tab of VMware Tools in the guest, verify that Time synchronization between the virtual machine and the host operating system is selected.


  • If the problem is still not corrected, this may be addressed by disabling power management altogether. This can be done by adding apm=off to the boot entry of the host's /etc/grub.conf file.
  • If the problem is more widespread than just timekeeping and the virtual machine is simply running too slowly or quickly, and using apm=off is not sufficient, add acpi=off noapic to the boot entry of the host's /etc/grub.conf file.
  • If the CPU of the host machine uses Intel SpeedStep, AMD Cool-N-Quiet, VIA Longhaul, or any other CPU speed throttling and power saving technology, the cat /proc/cpuinfo command displays the current speed at which the CPU is running and not the maximum CPU speed. To get the correct speed, you need to run this command:

    cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq

    If a limit has been configured for the CPU, use this command:

    cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

Update History

05/18/2012 - Added commands to get the correct speed when the processor uses CPU throttling and power saving technology. 01/31/2013 - Added Workstation 9.x to Products 10/16/2013 - Added Workstation 10.x information.

Request a Product Feature

To request a new product feature or to provide feedback on a VMware product, please visit the Request a Product Feature page.


  • 16 Ratings

Did this article help you?
This article resolved my issue.
This article did not resolve my issue.
This article helped but additional information was required to resolve my issue.

What can we do to improve this information? (4000 or fewer characters)

Please enter the Captcha code before clicking Submit.
  • 16 Ratings