Mal wieder ein versuchter Zugriff auf Euer Know-How: ich wurde gefragt ob es ein Tool gibt mit dem ich den CPU-Verbrauch eines Programmes messen kann. Also nicht beobachtend wie top
oder als Momentaufnahme (das geht glaube ich irgendwie mit ps
), sondern mehr so wie mit time
: ich starte mein Programm mit $toolname $programmname
, und nach Abschluss erhalte ich eine Angabe darüber wie viel CPU-Last das Programm tatsächlich erzeugt hat.
Die Laufzeit mit time
zu messen ist zwar ein Ansatz, allerdings ist die Ausgabe wohl stark davon abhängig was sonst auf meiner Maschine los ist.
Nach einer kleineren Google-Orgie bin ich um folgendes schlauer, vielleicht ist das sachdienlich: der Kernel misst CPU-Zeit in sogenannten Jiffies. Ein Jiffy ist auf einem System immer gleich lang (typischerweise 1/100 oder 1/250 Sekunde) und stellt praktisch eine Zeitscheibe dar die der Kernel auf einen Prozess verwendet. Man kann im /proc-Dateisystem nachsehen wie viele Jiffies ein Prozess bis dato verbraucht hat. Allerdings nur so lange der Prozess auch noch läuft.
Was ich suche ist also praktisch ein Tool das mir nach Beendigung meines Programms sagt wie viele Jiffies es gebraucht hat. Oder so. Gibt es das irgendwo fertig? Oder suche ich eigentlich was völlig anderes?