Messung der Laufzeit eines Programmes
-
Ich habe einen Algorithmus zur Wegfindung in Graphen geschrieben und möchte seine Effizienz testen (im Vergleich zu anderen Algorithmen). Dazu würde ich gerne die Lafuzeit des Programmes messen.
Zuerst habe ich einen ausreichend großen Graphen benutzt und mich mit der Stoppuhr vor den Bildschirm gesetzt... Irgendwie bin ich damit nicht so zufrieden. Kann man die Zeitmessung direkt in das Programm einbauen?
-

Ja:#include <iostream> #include <ctime> //...weitere includes, usings usw. clock_t start = clock(); //Hier dein Algo clock_t end = clock(); std::cout << "Verbrauchte Zeit: " << static_cast<float>((end - start) / CLOCKS_PER_SEC) << std::endl;MfG
GPC
-
Yo und wenn du ne genauere Auflösung brauchst als "clock" liefert, dann wirds wohl Plattformabhängig. Unter Windows z.B. GetTickCount und QueryPerformanceCounter.
-
Yo und wenns immer noch zu ungenau ist, wiederhol den Algo 10 100 oder 1000 mal, und wenn du viel Zeit hast, 1000000 mal...