CPU Auslastung Raspberry Pi

Hallo Leute,

bei meinem Modul gibt es eine Instanz zum abrufen von diversen Daten des Raspberry Pi selbst, ähnlich dem RPiMonitor.

Eine Frage hat sich dabei ergeben: Welche Methode ist die Beste, um die CPU auslastung zu bestimmen.
Trival scheint diese hier zu sein:

cat /proc/loadavg

Jedoch wird immer wieder daran gezweifelt ob die Daten korrekt sind.
Auch wird an mancher Stelle

top

favorisiert.
Ich habe mich dazu entschlossen es über

cat /proc/stat

zu versuchen, weil diverse Foren dieses als die Methode mit dem geringsten Messfehler beschreiben.
Hier wird die Funktion der Dateiausführlich erläutert.

Nur: Ich bekomme damit unglaubliche Werte - viel zu konstant nach meiner Einschätzung…

Wie geht ihr da vor? Welche Methode favorisiert ihr?

Joachim

…ich habe hier folgendes gefunden:

Die CPU-Auslastung entspricht dem invertierten prozentualen Anteil, den Idle in der Gesamtkalkulation einnimmt. Ein Beispiel für die Datei /proc/stat:
cpu  35421 0 4092 158570 3325 408 6 0
cpu0 35421 0 4092 158570 3325 408 6 0
[...]


Relevant sind jeweils die ersten vier Zahlen, die für User, Nice, System und Idle stehen. Zusammengerechnet geben sie im Beispiel 198'083, wovon der Idle-Wert 158'570 ausmacht, was etwa 80 % des Gesamtwerts entspricht. Die effektive CPU-Auslastung seit Systemstart liegt also bei gerade 20 %. Um eine prozentuale CPU-Auslastung über einen bestimmten Zeitraum zu erhalten, muss die Veränderung dieser Werte über diesen Zeitraum durch zweimaliges Auslesen der Datei ermittelt werden.

Stehe da irgendwie auf dem Schlauch: Ich muss zwei Messungen machen und die Veränderung über die Zeit zwischen diesen ins Verhältnis setzen. Aber was und wie??

Joachim