rdtsc
-
hallo leute
hab mich gestern n bisschen mit dem rdtsc rumgespielt.
__asm { rdtsc mov value1, eax mov value2, edx } __asm { rdtsc mov value3, eax mov value4, edx }
wenn ich nun die taktdiffernz berechne, komme ich immer auf 84 takte. is das normal ? oder woran liegt das ? nunja, hab dann immer 84 abgezogen, damit ich bestimmte befehle bzw. funktionen messen kann. bei einem normalen mov-befehl komme ich auf 4 takte. auf nem P4. sollte das nicht nur ein takt sein ?
Meep Meep
-
Das deine Differenz Müll liefert mag daran liegen, dass du keine einzige Rechenoperation ausführst.
Wenn rdtsc doch sowieso in eax speichert kannst du doch auch so mit inline-asm eine Funktion machen. Das funktioniert:__int64 rdtsc(void) { __asm rdtsc; }
Ausserdem gibt es noch clock und speziell in der WinAPI High-Resolution Timer
.
-
dank dir
Meep Meep