QueryPerformanceTimer gibt manchmal kleinere Werte zurück als zu einem früheren Zeitpunkt
-
dEUs schrieb:
Was schlägst du als Alternative vor?
http://support.microsoft.com/?scid=kb;en-us;895980
!???????????
-
Jochen Kalmbach schrieb:
dEUs schrieb:
Was schlägst du als Alternative vor?
http://support.microsoft.com/?scid=kb;en-us;895980
!???????????
Was willst du mir damit sagen?
-
At the end of the line, add a space, and then type /usepmtimer.
-
laut hustbaer ist QueryPerformanceTimer generel unbrauchbar. Unabhängig davon. Daher habe ich nach einer Alternative gefragt...
-
performance counter braucht selber ne gewisse zeit, um befragt zu werden.
davon abgesehen, cool'n'quiet kannste auch kurzzeitig deaktivieren: suche nach CrystalCPUID. da kannst du eigene stufen einstellen oder manuell festdrehen.
-
AFAIK gibt es keine sinnvolle Alternative... mir ist zumindest keine bekannt die nicht noch mehr Probleme verursacht.
-
ok, danke.
-
Was ich vergessen hatte zu schreiben: ich habe auf Intel Plattformen (z.B. P4 mit Hyperthreading) schrottige Werte bekommen, also schrottig im Sinne von "relativ ungenau".
BTW: unbrauchbar würde ich nicht sagen, für Zeitspannen im Bereich 0,1ms oder so geht das schon gut, für Zeitspannen im einstelligen Microsekundenbereich dagegen weniger.
Ahja... was u.U. gehen könnte: direkt RDTSC verwenden und den Thread mittels Affinity auf einen Core festnageln. Hab' ich allerdings noch nie probiert.
-
ok, wir haben offensichtlich unterschiedliche Vorstellungen von "unbrauchbar"

Mir reicht schon 1ms Genauigkeit sehr gut aus.
-
Ah, ok.
Mir nicht
Ich würde QueryPerformanceCounter gerne verwenden um z.B. Aufrufe wie malloc zu timen (bzw. allgemein halt Profiling von recht "kurzen" Funktionen), und die brauchen ja gottseidank weit unter 1ms.EDIT: 1ms Genauigkeit: timeBeginPeriod(), timeGetTime(), timeEndPeriod().
