Knowledge Base

Search the Knowledge Base:

Products:
Search In:
 

Linux guest clock runs slowly on ESX Server 3.0

Details

Why does the clock in my Linux guest run more slowly than real time?

Solution

ESX Server 3.x (and earlier versions) programs the physical timer hardware to deliver between 1000 and 2500 clock interrupts per second per CPU, depending on the requirements of the virtual machines being run. This is ordinarily enough for all guest operating systems in their default configurations. However, it is possible for a guest to require a higher virtual clock interrupt rate. For example, a guest that uses the Linux /dev/rtc feature can request over 8000 virtual clock interrupts per second. ESX Server generally cannot sustain a virtual clock interrupt rate higher than the real hardware rate.
 
With ESX Server 3, you can increase the maximum hardware clock interrupt rate to correct this problem, at the cost of increased CPU overhead for interrupt handling. To do so, perform the following steps:
  1. Log on to VI Client as root.
  2. Select the relevant ESX Server host.
  3. Go to the Configuration tab and look under Software.
  4. Choose Advanced Settings > Misc.
  5. Scroll to the Misc.TimerMinHardPeriod parameter and click the current value. This opens a new window where you can update the value.
  6. Type a new value, then click the OK button to exit. The default value is 400; that is, a minimum of 400 microseconds between interrupts, or in other words, 2500 interrupts per second.
Important: If the clock in your Linux guest is running faster than real time, do not attempt to change TimerMinHardPeriod to slow it down. It is impossible to achieve correct timekeeping that way. Instead, see Timekeeping best practices for Linux (1006427) for an explanation of this issue and a correct workaround.
 
Neither ESX Server nor the guest need to be rebooted after changing TimerMinHardPeriod.

This workaround does not apply to VMware products other than ESX Server 3. For a similar workaround that applies to ESX Server version 2, refer to Linux Guest Clock Runs Slowly on ESX Server 2 (1518). For a similar workaround that applies to some Linux hosts with VMware Workstation or GSX Server, refer to Virtual Machine Seems Slow when Running a Particular Program - Clock Issue (892). For additional information about timekeeping in virtual machines, see Timekeeping in a VMware Virtual Machine.

Note: If you implemented Linux Guest Clock Runs Slowly on ESX Server 2 (1518) on your ESX Server 2 system, you generally don't need to re-implement this workaround after upgrading to ESX Server 3.

Keywords

2219; esx3; URLZ

Feedback

Rating: 1 - Lowest 2 3 4 5 - Highest (1 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? (2000 or fewer characters)
Submit
Rating: 1 - Lowest 2 3 4 5 - Highest (1 Ratings)   
Actions