- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
In developing software that runs on a Dell Presision machine with a Xeon processor, I have found that using Sleep() and SetWaitableTimer() only has a 15ms resolution. The same code running on my desktop which is a Dell Dimension 5150 with a Pentium processor has a timing resolution down to the millisecond for those same function calls. Both machines run Windows XP Pro SP2 and have DirectX 9.0c. Is there a way to fix the time resolution on the Xeon machine? Thanks - Noelle
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Here are a couple of different suggestions we've gotten for you from our engineering team:
From one engineer:Some Dell* machines come with the HPET multimedia timer turned off in the BIOS by default, and it's quite possible that Windows* uses this for the higher accuracy timer. The first thing I always do with Dell machines is turn HPET on in theBIOS (Linux* does use HPET) so maybe that is something worth trying...it could be thatyour non-server machine has this already turned on.
From another engineer: I'm very curious about the .015 second resolution reported for the Intel Xeon processor-based system. 1/60 = 0.01667, very close to the .015 second report. Could it be counting line frequency?
==
Lexi S.
IntelSoftware NetworkSupport
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for the reply. I'll have to look into the HPET in the BIOS. The solution I have found that works is calling timeBeginPeriod(1) at the start of my thread. This is setting the windows multimedia clock/timer to a 1ms resolution according to the MSDN docs. I am assuming then that SetWaitableTimer() is using that same clock since this fixes my problem.
Once I can get back on the Xeon machine I'll check the BIOS for the HPET multimedia timer and let you know. I would not be surprised if it is turned off since hyperthreading was off by default too.
Once I can get back on the Xeon machine I'll check the BIOS for the HPET multimedia timer and let you know. I would not be surprised if it is turned off since hyperthreading was off by default too.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page