Host power management causes problems with guest timekeeping on Windows hosts
search cancel

Host power management causes problems with guest timekeeping on Windows hosts

book

Article ID: 315328

calendar_today

Updated On:

Products

VMware VMware Desktop Hypervisor

Issue/Introduction

  • The host is a computer running Windows that has power management features in the hardware that varies the processor's operating speed.
  • When the host processor speed increases, the guest operating system's real-time clock (RTC) runs too fast.
  • In the vmware.log file, you see the error:

    [msg.log.error.unrecoverable] VMware Workstation unrecoverable error: (vmx) ASSERT /build/mts/release/bora-528992/bora/vmcore/vmx/main/timeTracker_user.c:237 bugNr=148722


Environment

VMware Player 4.x (Windows)
VMware Player 6.x (Windows)
VMware Player 2.x (Windows)
VMware Player Pro 7.x (Windows)
VMware Player 7.x (Windows)
VMware Workstation 10.x (Windows)
VMware Workstation Player 14.x (Windows)
VMware Workstation Pro 12.x (Windows)
VMware Workstation Player 12.x (Windows)
VMware Workstation 5.x (Windows)
VMware GSX Server 3.x (Windows)
VMware Workstation 9.x (Windows)
VMware Server 1.0.x (Windows)
VMware Workstation 6.x (Windows)
VMware Workstation Pro 14.x (for Windows)
VMware Player 3.x (Windows )
VMware Workstation 4.x (Windows)
VMware Workstation 8.x (Windows)
VMware Player 5.x (Windows)
VMware Server 2.0.x (Windows)
VMware Workstation 7.x (Windows)
VMware Workstation 11.x (for Windows)

Resolution

This problem can occur on some host computers that use Intel SpeedStep, AMD Cool 'n' Quiet, or other similar power-saving technologies that vary the processor speed.

Note: This article is designed for hosts running Windows for the listed product versions. For Linux hosts running these product versions, see Host power management causes problems with guest timekeeping on Linux hosts (1591).

Workaround

You must specify the correct maximum CPU speed of the physical hardware in the global configuration file (config.ini).

Note: Before making any modifications to the config.ini, back up your virtual machine.

To specify the correct maximum CPU speed:

  1. Find the maximum speed of the host computer's CPU. To do this, open Control Panel > System. Note the speed rating of the processor (CPU) written in the model designation text. This may be higher than the current operating speed of the processor noted here. This value can often also be obtained from the computer's BIOS diagnostic screen when starting the computer.
     
  2. Find the config.ini file:
     
    • Windows 2000 or XP – %AllUsersProfile%\Application Data\VMware\<VMware-Product>\config.ini
    • Windows Vista, Windows 7, Windows 8, Windows Server 2008 R2, or Windows Server 2012 – C:\ProgramData\VMware\<VMware-Product>\config.ini


    Note: This file is normally created when the VMware product is installed. Make sure that Show hidden files and folders is enabled under Tools > Folder options > View. However, if the file does not exist, create a new text file in the appropriate location as described above, then add the required lines to form a valid config.ini file. For the specifications of the file, see Creating and editing config.ini on Windows hosts (1754).

  3. Edit config.ini, and add these lines.

    • host.cpukHz = "1700000"

      Modify the cpukHz value according to the value of the physical computer's maximum CPU speed from step 1.
       
    • host.noTSC = "TRUE"
    • ptsc.noTSC = "TRUE"
       
    This enables a mechanism that keeps the guest's clock accurate even when the time stamp counter (TSC) is slow.
     
  4. The example above is for a computer that has a maximum CPU speed of 1700 MHz (or 1.7 GHz). The value entered on this line must be in KHz. To convert the speed from MHz, multiply by 1000. To convert from GHz, multiply by 1000000.
     
  5. Restart the VMware Authorization service for the changes to take effect. Click Start > Control Panel > Administrative Tools > Services. Right-click VMwareAuthorization Service and click Restart.
     
  6. In addition, verify that the VMware Tools in the guest operating system is set to enable time synchronization:
     
    1. Open the VMware Tools toolbox application by double-clicking the VMware icon in the system notification area (tray).

      Note: The VMware Tools control panel can also be run by opening C:\Program Files\VMware\VMware Tools\VMControlPanel.cpl.
       
    2. Click Options, select Time synchronization between the virtual machine and the host operating system.

Additional Information

For additional information about timekeeping, see Timekeeping in VMware Virtual Machines.

For translated versions of this article, see: