PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Load average...



hydronic
30.05.03, 09:50
Hi,

Ich habe ein Problem mit dem Load average meines Rechners (Thunderdome, siehe Signatur):

Wenn er länger als 4 Tage läuft, steigt der Load average auf >= 2.00, 2.00, 2.00 und sinkt nicht wieder unter diesen Wert, wobei ps aux folgendes ausgibt:


USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 500 84 ? S May25 0:16 init
root 2 0.0 0.0 0 0 ? SW May25 0:10 [keventd]
root 3 0.0 0.0 0 0 ? SWN May25 0:00 [ksoftirqd_CPU0]
root 4 0.0 0.0 0 0 ? SW May25 1:30 [kswapd]
root 5 0.0 0.0 0 0 ? SW May25 0:00 [bdflush]
root 6 0.0 0.0 0 0 ? SW May25 0:00 [kupdated]
root 7 0.0 0.0 0 0 ? SW May25 0:03 [kinoded]
root 9 0.0 0.0 0 0 ? SW May25 0:00 [mdrecoveryd]
root 12 0.0 0.0 0 0 ? DW May25 0:03 [kreiserfsd]
root 148 0.0 0.0 0 0 ? SW< May25 0:00 [lvm-mpd]
root 884 0.0 0.2 1456 256 ? S May25 0:02 /sbin/syslogd
root 1152 0.0 0.3 1548 400 ? S May25 0:00 /sbin/resmgrd
root 2186 0.0 0.0 1500 72 tty1 S May25 0:00 /sbin/mingetty --noclear tty1
root 2187 0.0 0.2 2132 316 ? S May25 0:00 login -- root
root 2188 0.0 0.2 2132 316 ? S May25 0:00 login -- root
root 2189 0.0 0.2 2132 316 ? S May25 0:00 [login]
root 2190 0.0 0.0 1500 72 tty5 S May25 0:00 /sbin/mingetty tty5
root 2191 0.0 0.0 1500 72 tty6 S May25 0:00 /sbin/mingetty tty6
root 13158 0.0 0.3 4780 400 tty2 S May25 0:00 -bash
root 7414 0.0 0.0 0 0 ? SW May26 0:00 [rpciod]
root 12725 0.0 0.8 4908 1096 tty3 S May26 0:02 -bash
root 14976 0.0 0.2 3512 340 ? S May27 0:09 /usr/sbin/smpppd
root 14421 0.0 0.2 4288 288 ? S May28 0:00 [su]
root 14434 0.0 0.3 4796 420 ? D May28 0:00 bash
hydronic 20757 0.0 0.0 3436 68 ? D 13:35 0:00 df -k
hydronic 30874 0.0 0.6 4744 832 tty4 S 19:45 0:00 -bash
root 19850 0.0 0.8 4288 1056 tty4 S 22:11 0:00 [su]
root 19851 0.0 1.3 4776 1712 tty4 S 22:11 0:00 bash
root 19876 0.0 0.6 2656 780 tty4 R 22:48 0:00 ps aux

Weiss jemand wie es zu diesen unterschiedlichen Werten kommen kann? Ich kann mir diesen hohen Load Durchschnitt nicht erklären, da kein Prozess mehr als 1% beansprucht.

gruss
Hydronic

Jasper
30.05.03, 16:58
Original geschrieben von hydronic

Weiss jemand wie es zu diesen unterschiedlichen Werten kommen kann? Ich kann mir diesen hohen Load Durchschnitt nicht erklären, da kein Prozess mehr als 1% beansprucht.


loadavg != cpu load. loadavg gibt die anzahl der prozesse in der run_queue an, d.h. die anzahl der aktiven prozesse.
wenn z.b. I/O-operationen recht lange dauern (I/O ist in der regel uninterruptable), treibt das loadavg in die höhe obwohl der prozessor schläft.

-j

hydronic
30.05.03, 17:10
Original geschrieben von Jasper
loadavg != cpu load. loadavg gibt die anzahl der prozesse in der run_queue an, d.h. die anzahl der aktiven prozesse.
wenn z.b. I/O-operationen recht lange dauern (I/O ist in der regel uninterruptable), treibt das loadavg in die höhe obwohl der prozessor schläft.

-j

Hi,

davon habe ich jetz nichts verstanden. :rolleyes:
Könntest du es nochmal deutlicher für mich erklären? :confused:
Und wie könnte man dieses Problem beheben? Hardware aufrüsten?

Gruss
Hydronic

geronet
30.05.03, 17:32
root 14434 0.0 0.3 4796 420 ? D May28 0:00 bash
hydronic 20757 0.0 0.0 3436 68 ? D 13:35 0:00 df -k

Ich würd mal versuchen diese beiden Prozesse zu killen, weil die kein tty zugewiesen haben..

hydronic
30.05.03, 17:48
hi,

aber was haben die beiden Prozesse mit der hohen Auslastung zu tun? Ich werde es mal ausprobieren, wenn dieses Problem mal wieder auftritt, denn heute konnte ich mir ohne einen Reboot nicht mehr helfen (Load Average war > 8,00, 8,00, 8,00 und stieg). Vielleicht sollte ich mir mal mehr Ram zulegen, oder eine neuere CPU. Würde 128MB mehr Ram oder eine 550MHZ CPU mehr Leistung bringen?

Vielen Dank für die Antworten.

Hydronic

tomes
30.05.03, 18:03
-D == diese Prozesse sind auf unbestimmte Zeit schlafen gelegt, stehen aber noch zur Bearbeitung an, sind also noch theoretisch aktiv. Deshalb die hohe "Load average"
Meist sind das Prozesse die auf irgend etwas warten, was aber nicht mehr kommt.
Bei dir vielleicht ein nfs Filesystem das nicht richtig gemountet werden kann (df -k) ?
Hatte mal das selbe Problem, diese Prozesse kehren meist auch nicht mehr wieder.
"Load average" - [Anzahl -D prozesse] zeigt dir die wirkliche Prozessorauslastung.

T;o)Mes

hydronic
30.05.03, 18:14
Hi tomes,


Meist sind das Prozesse die auf irgend etwas warten, was aber nicht mehr kommt.
Bei dir vielleicht ein nfs Filesystem das nicht richtig gemountet werden kann (df -k) ?

Ja, stimmt. Daran kann es liegen. Mal sehen ob sich das Problem jetz beheben lässt. :)

Vielen Dank für alle Antworten!

gruss
hydronic

Windi
30.05.03, 19:54
Ähm, ist zwar eine blöde Frage, aber trotzdem:

Was zeigt denn LoadAverage bei der Auslastung wirklich an? Ich komm mit den Werten nicht ganz zurecht. Warum sind da 3? Kann mir das mal bitte wer erklären?:rolleyes:

Rastaman
30.05.03, 20:13
Original geschrieben von Windi
Ähm, ist zwar eine blöde Frage, aber trotzdem:

Was zeigt denn LoadAverage bei der Auslastung wirklich an? Ich komm mit den Werten nicht ganz zurecht. Warum sind da 3? Kann mir das mal bitte wer erklären?:rolleyes:

Der 1. Wert zeigt die load average der letzten Minute, der 2. die der letzten 5 Minuten und der 3. die der letzten 15 Minuten an.

Gruß, Marius

Jasper
31.05.03, 00:17
Original geschrieben von hydronic

davon habe ich jetz nichts verstanden. :rolleyes:
Könntest du es nochmal deutlicher für mich erklären? :confused:
Und wie könnte man dieses Problem beheben? Hardware aufrüsten?


die lösung wurde bereits genannt:

root 14434 0.0 0.3 4796 420 ? D May28 0:00 bash
hydronic 20757 0.0 0.0 3436 68 ? D 13:35 0:00 df -k

diese beiden prozesse befinden sich in einem sogenannten uninterruptable sleep, d.h. in der regel warten sie auf die rückkehr eines systemcalls. das bedeutet aber wiederum, das mindestens 2 prozesse in der runqueue stehen => der loadavg ist jetzt mindestens 2 obwohl der prozessor nichts tut.

lösung ist den sleep zu beenden. df deutet wie bereits von anderen angedeutet auf ein nfs problem hin. man kann auch versuchen, die prozesse zu killen, was aber wegen des speziellen prozessstatus nicht unbedingt funktionieren muss.

-j

pinglord
21.01.04, 22:59
Original geschrieben von Jasper
wenn z.b. I/O-operationen recht lange dauern (I/O ist in der regel uninterruptable), treibt das loadavg in die höhe obwohl der prozessor schläft.

-j

Hat sich da nicht mit Kernel 2.6 was grundlegend geändert? :)