dakota97
Centurion
Hi all,
Anytime I've needed answers to questions, you guys haven't failed me yet, so here it goes.
I am developing an app that requires a high precision timer. I need something with the resolution that QueryPerformanceCounter provides, but I am finding that Intel SpeedStep, AMD Cool and Quiet, Dual Core, and just bad motherboards are causing QPC to return unexpected delta values. I have seen in a couple of different threads that using /usepmtimer will cause Windows to use the ACPI timer. Is this the best way to go?
1) For what operating systems will the /usepmtimer switch work in boot.ini? (2000? Dependant on XP service pack? Dependant on num CPUs?)
2) Will the /usepmtimer switch work with non-intel CPUs?
3) Does using the /usepmtimer switch mean that QueryPerformanceFrequency will always use the ACPI timer and return 3579545?
4) Is there an API or assembly to read the ACPI timer directly w/o needing to use the /usepmtimer switch?
5) Has anyone ever seen a case where QPF will change? I have tried SpeedSwitch XP and laptops with no A/C attached and cant get it to do so.
6) Has anyone ever seen a case where QPF doesnt change but acts as an order of magnitude difference? I have an end user who has a new Dual Core Dell and when they specify 1800 milliseconds for a duration value, it actually acts as 18000 (18 seconds).
7) Will XP SP3 when released fix some of the QPC/QPF anomalies?
8) I am aware there is a hotfix for dual core systems, what does it actually technically do?
If anyone can answer any or all of these questions, or point me in the right direction, I would greatly appreciate it.
Thanks,
Chris
Anytime I've needed answers to questions, you guys haven't failed me yet, so here it goes.
I am developing an app that requires a high precision timer. I need something with the resolution that QueryPerformanceCounter provides, but I am finding that Intel SpeedStep, AMD Cool and Quiet, Dual Core, and just bad motherboards are causing QPC to return unexpected delta values. I have seen in a couple of different threads that using /usepmtimer will cause Windows to use the ACPI timer. Is this the best way to go?
1) For what operating systems will the /usepmtimer switch work in boot.ini? (2000? Dependant on XP service pack? Dependant on num CPUs?)
2) Will the /usepmtimer switch work with non-intel CPUs?
3) Does using the /usepmtimer switch mean that QueryPerformanceFrequency will always use the ACPI timer and return 3579545?
4) Is there an API or assembly to read the ACPI timer directly w/o needing to use the /usepmtimer switch?
5) Has anyone ever seen a case where QPF will change? I have tried SpeedSwitch XP and laptops with no A/C attached and cant get it to do so.
6) Has anyone ever seen a case where QPF doesnt change but acts as an order of magnitude difference? I have an end user who has a new Dual Core Dell and when they specify 1800 milliseconds for a duration value, it actually acts as 18000 (18 seconds).
7) Will XP SP3 when released fix some of the QPC/QPF anomalies?
8) I am aware there is a hotfix for dual core systems, what does it actually technically do?
If anyone can answer any or all of these questions, or point me in the right direction, I would greatly appreciate it.
Thanks,
Chris