KeQueryPerformanceCounter frequency

I notice a significant change in the frequency from
KeQueryPerformanceCounter when moving from Server 2008 R2 to Server 2012, is
there any other timing changes to be aware of between the two systems?

Don Burn
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr

It means there is another base CPU speed reported for your system which
normally stays stable during the session.

Performance measurements are reported in clock ticks, if we calculate
elapsed time we should consider that the actual clock speed may change or
vary from the fixed value reported by the system.

//Daniel

“Don Burn” wrote in message news:xxxxx@ntdev…
I notice a significant change in the frequency from
KeQueryPerformanceCounter when moving from Server 2008 R2 to Server 2012,
is
here any other timing changes to be aware of between the two systems?

Don Burn wrote:

I notice a significant change in the frequency from
KeQueryPerformanceCounter when moving from Server 2008 R2 to Server 2012, is
there any other timing changes to be aware of between the two systems?

What did you see? Most Win 7 and 2008R2 systems seem to use ~ 3 MHz.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

The frequency cannot change while the system is running.

http://msdn.microsoft.com/en-us/library/windows/desktop/ms644905(v=vs.85).aspx

This documentation is for UM QueryPerformanceFrequency, but the same applies
to KM as well.

I have observed significant differences in when thread quanta end and other
scheduling related timing changes, but none that affected code correctness

wrote in message news:xxxxx@ntdev…

It means there is another base CPU speed reported for your system which
normally stays stable during the session.

Performance measurements are reported in clock ticks, if we calculate
elapsed time we should consider that the actual clock speed may change or
vary from the fixed value reported by the system.

//Daniel

“Don Burn” wrote in message news:xxxxx@ntdev…
I notice a significant change in the frequency from
KeQueryPerformanceCounter when moving from Server 2008 R2 to Server 2012,
is
here any other timing changes to be aware of between the two systems?

The Windows 8 and later systems are more likely to use the HPET or the processor-local clocks (with a lot of code to keep time seeming to pass by uniformly on all processors.) So, yes, there are likely lots of timing changes.

In particular, starting with Windows 8, the clock interrupt itself can be aperiodic, firing only when necessary. This helps a lot with processor power management in systems with small batteries. The goal is that you all the existing driver interfaces live up to their contracts. But I’m sure that you’ll be able to observe incidental changes all over the place.

If you ask a specific question, Don, I may be able to provide a specific answer.

  • Jake Oshins
    (former clock guy)
    Windows Kernel Team

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Don Burn
Sent: Monday, October 28, 2013 12:28 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] KeQueryPerformanceCounter frequency

I notice a significant change in the frequency from
KeQueryPerformanceCounter when moving from Server 2008 R2 to Server 2012, is
there any other timing changes to be aware of between the two systems?

Don Burn
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer