VMware
 

Knowledge Base

Search the Knowledge Base:

Products:
Search In:
 

Time runs slower than real time due to lost timer interrupts

Symptoms

  • Time runs slowly in guest operating system
  • Time in the guest operating system falls behind the time of the host operating system
  • Guest operating systems that use timer interrupts fall behind

Resolution

Background

When running guest operating systems that keep time by counting timer interrupts, time falls behind real time due to some timer interrupts being lost.
 
Many guest operating systems keep track of time by programming a periodic timer interrupt and incrementing the current time by the period of the interrupt every time an interrupt is received. Such periodic timer interrupts are often referred to as "ticks" and this method of time keeping is known as tick counting.
 
One drawback to this approach is that the x86 interrupt subsystem is only able to keep track of one pending interrupt per vector, so timer interrupts may be lost and when they are, the guest operating system's notion of time falls behind.
 
Affected Operating Systems: 
 Operating systems not affected:
  • Linux using the clocksource timekeeping subsystem does not count interrupts to keep time. This change is in 2.6.18 and later for i386 and 2.6.21, and later for x86_64.
  • Solaris does not count interrupts for timekeeping.

Solution

Run NTP, w32time or VMware Tools periodic time synchronization in the guest to correct for the lost ticks. 

Additional Information

Feedback

Rating: 1 - Lowest 2 3 4 5 - Highest (3 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 (3 Ratings)   
Actions