On Thu, 14 Nov 2002 22:08:05 +0100, Ulf Lorenz wrote:
mal eine Programmierfrage. Ich wollte die Laufzeit eines Codeteils mal Pi*Daumen messen. Dazu, hab ich mir ueberlegt, waere es ganz nett, den time stamp counter der CPU auszulesen. Also eine Funktion schnell eingefuegt, die nichts weiter macht als diesen auszulesen und vor und nach dem Codeteil diese Funktion aufgerufen und das Ergebnis ausgegeben. Gibt es eine bessere Idee? Falls nicht, koennte mir jemand mal einen Tip fuer eine gebrauchsfaehige derartige Funktion geben, so cookbook-maessig?
#include <stdio.h> #define rdtscl(low) \ __asm__ __volatile__ ("rdtsc" : "=a" (low) : : "edx")
int main() { int t1, t2; rdtscl(t1); // zu testender Code rdtscl(t2); printf("%d Takte benoetigt\n",t2-t1); return 0; }
Reinhard