negative Ping times & losing Performance data

Did you ever see something like this?

21.05 ping time

The problem also appears to loose performance graph data like this:

21.05 perf

But what’s causing this phenomen? I found this Article in MS KB895980:


This problem occurs when the computer has the AMD Cool’n’Quiet technology (AMD dual cores) enabled in the BIOS or some Intel multi core processors. Multi core or multiprocessor systems may encounter Time Stamp Counter (TSC) drift when the time between different cores is not synchronized. The operating systems which use TSC as a timekeeping resource may experience the issue. Newer operating systems typically do not use the TSC by default if other timers are available in the system which can be used as a timekeeping source. Other available timers include the PM_Timer and the High Precision Event Timer (HPET).

Weird, isn’t it? I decided to use the boot.ini Switch “/userpmtimer” to successfully solve that problem.


32-bit Architektur

Ein 32-bit System hat einen Adressraum um Geräte zu adressieren. Dieser würde knapp ausreichen um ganze 4GB Ram zu adressieren, doch die restliche Hardware des Computers muss auch irgendwie angesprochen werden können.

Physical Adress Extension (PAE)

Durch diese Gegebenheit ist eine “Physical Adress Extension” nötig, welche es ermöglicht einen grösseren Adressraum als nur 32-bit zu verwenden. Bei verwendung der Option “/pae” werden insgesamt 36-bit eingesetzt, dies ermöglicht eine Adressierung von bis zu 64GB Ram.

Data Execution Protection (DEP)

PAE wird auf einem Computer welcher DEP unterstützt und auf welchem ein 32-bit OS läuft automatisch aktiviert. In der boot.ini wird DEP mit der Option “/noexecute” gesteuert.

DEP ausschalten, Windows XP

Wird DEP unter Windows XP ausgeschaltet, wird auch gleichzeitig PAE ausgeschaltet. Diese kann aber wieder durch angabe des Switches “/pae” aktiviert werden.

DEP deaktiviert:

“/noexecute=alwaysoff” entspricht automatisch “/noexecute=alwaysoff /nopae”

DEP deaktiviert, aber PAE aktiviert wäre somit:

“/noexecute=alwaysoff /pae”

DEP ausschalten, Windows 2003

Anders als bei Windows XP wird bei Server 2003 PAE nicht deaktiviert wenn “/noexecute=alwaysoff” gesetzt ist, selbst nicht bei Angabe des “/nopae” Parameters. Um hier beide Optionen wirklich auszuschalten muss der spezielle Parameter “/execute” verwendet werden (gültig ab Windows Server 2003 SP1).

What does *CPU ready time* mean

In ESX / vSphere Environments you maybe already discovered a value called “CPU ready time”. And the confusing thing is, this value doesn’t tell you how long the VM was ready this day 😉

The whole definition can be found fully detailed in a VMware PDF here.

To get a quick explanation, I found a good forum thread where it’s explained quite good:

The rub comes when you have multi core VMs – regardless of the amount of CPU needed by the VM (lets say its a 4 core VM, and only needs 1 core worth of power), it needs to schedule onto 4 cores (because it is a 4 core VM).  While it is scheduled onto 4 processor cores, nothign else can use them, even though that VM isn’t really using all that they can do.  So, when you have a lot of low usage VM’s with 2 or 4 cores, you end up with problems scheduling them onto cores, and not so much the speed of the CPUs themselves.  Hence, the need to watch your CPU Ready times.