Wie kann ich Messen, CPU-Zeit und die wall-clock-Zeit auf Linux/Windows?

Ich meine: wie kann ich Messen die Zeit, die meine CPU ausgegeben Ausführung der Funktion und wall-clock Zeit, die es braucht, um laufen meine Funktion? (Interessiert mich, Linux/Windows und x86 und x86_64). Sehen, was ich tun will (Im mit C++ hier, aber ich würde lieber C-Lösung):

int startcputime, endcputime, wcts, wcte;

startcputime = cputime();
function(args);
endcputime = cputime();

std::cout << "it took " << endcputime - startcputime << " s of CPU to execute this\n";

wcts = wallclocktime();
function(args);
wcte = wallclocktime();

std::cout << "it took " << wcte - wcts << " s of real time to execute this\n";

Eine weitere wichtige Frage: ist diese Art der Zeitmessung von der Architektur unabhängige oder nicht?

InformationsquelleAutor der Frage yak | 2013-07-02

Schreibe einen Kommentar