Load average - Triviales Thema - denke ich mal
Load average - Triviales Thema - denke ich mal
Hi Zusammen,
Ich habe auf meiner box:
fred@liberia:~$ uptime
23:36:19 up 112 days, 8:22, 2 users, load average: 1.45, 1.38, 1.12
Es geht mir um die Load Average: Ich weis das es sich um den wert gerade - vor 5 Min und 15 Min handelt.
Aber was sagen mit die Zalen aus - Irgendwas über Prozesse.
Kann mir jemand da mal nachhilfe geben?
Matze
Ich habe auf meiner box:
fred@liberia:~$ uptime
23:36:19 up 112 days, 8:22, 2 users, load average: 1.45, 1.38, 1.12
Es geht mir um die Load Average: Ich weis das es sich um den wert gerade - vor 5 Min und 15 Min handelt.
Aber was sagen mit die Zalen aus - Irgendwas über Prozesse.
Kann mir jemand da mal nachhilfe geben?
Matze
Das Load-Average ist die durchschnittliche Anzahl an Prozessen, die laufbereit waren und auf einen Prozessor gewartet haben, und zwar nicht vor n Minuten, sondern während der letzten n Minuten.
Sprich: Der erste Wert ist der Durchschnitt der letzten Minute, gefolgt vom Durchschnitt der letzten fünf Minuten bis zum Durchschnitt der letzten 15 Minuten.
Sprich: Der erste Wert ist der Durchschnitt der letzten Minute, gefolgt vom Durchschnitt der letzten fünf Minuten bis zum Durchschnitt der letzten 15 Minuten.
No language can express every thought unambiguously, least of all this one. -- D. R. Hofstadter
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Um es mit einer kleinen Metapher zu erklären:
Die CPU ist die einzige Bedienung hinter der Fleischtheke im Supermarkt. Die load gibt dann an, wie lang die Warteschlange im Durchschnitt in der letzten Minute, in den letzten 5 Minuten und in den letzten 15 Minuten war.

Patrick
Die CPU ist die einzige Bedienung hinter der Fleischtheke im Supermarkt. Die load gibt dann an, wie lang die Warteschlange im Durchschnitt in der letzten Minute, in den letzten 5 Minuten und in den letzten 15 Minuten war.
- load = 0: Die Bedienung lagweilt sich, es ist nie jemand da.
- load = 1: Immer wenn die Bedienung einen Kunden abgefertigt hat, steht immer genau einer da, der schon wartet. Das ist im Prinzip der Idealfall: Die Bedienung ist immer beschäftigt, und es muss aber nie ein Kunde wirklich warten.
- load > 1: Es ist eine längere Warteschlange. load = 14 bedeutet z.B., dass die Warteschlange in der letzten Minute im Durchschnitt aus 14 Personen bestand.

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
- peschmae
- Beiträge: 4844
- Registriert: 07.01.2003 12:50:33
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: nirgendwo im irgendwo
Naja, leider ist die CPU nicht alleine hinter der Ladentheke. D.h. eigentlich schon - aber gewisse Artikel sind im Fest-Platten-Lager - und da kann nur der alte Sid hin.
Die Kunden warten also geduldig auf den alten Sid und die CPU hinter der Theke geht mal ein Bier trinken.
Die Länge der Warteschlange lässt also nicht direkt auf die Auslastung der CPU (hinter der Theke) schliessen - sie sagt auch was darüber aus wieviele von den Kunden was aus dem Lager wollten.
MfG Peschmä
Die Kunden warten also geduldig auf den alten Sid und die CPU hinter der Theke geht mal ein Bier trinken.
Die Länge der Warteschlange lässt also nicht direkt auf die Auslastung der CPU (hinter der Theke) schliessen - sie sagt auch was darüber aus wieviele von den Kunden was aus dem Lager wollten.
MfG Peschmä
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Ersetze CPU durch System und alles ist gut.
Ganz genau gesagt, ist die Load die durchschnittliche Länge der Scheduler Runqueue (in der letzten Minuten, 5 Minuten, 15 Minuten...). Also: Wieviele Prozesse sind bereit, durch den Scheduler auf Running gesetzt werden.
Grunsätzlich kann man sagen, dass ein System, das permanent auf Load 1 ist voll ausgelastet ist: Es hat immer etwas zu tun. Ob der POC die CPU ist, oder was anderes macht nichts...
Patrick
Ganz genau gesagt, ist die Load die durchschnittliche Länge der Scheduler Runqueue (in der letzten Minuten, 5 Minuten, 15 Minuten...). Also: Wieviele Prozesse sind bereit, durch den Scheduler auf Running gesetzt werden.
Grunsätzlich kann man sagen, dass ein System, das permanent auf Load 1 ist voll ausgelastet ist: Es hat immer etwas zu tun. Ob der POC die CPU ist, oder was anderes macht nichts...
Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
ok, das heisst dann also folgendes:

- single cpu system: landmetzgerei auf dem dorf. mensch kennt sich, plauscht auch mal gerne in vertrauter und entspannte atmosphäre. don't panic.
- echtes smp system: supermarkt mir mehreren fleischereifachverkäuferInnen hinter der theke. massenabfertigung, anonymität, soziale leere..
- pseudo-smp (ht): die fleischereifachverkäuferIn ist schizophren?

[..] Linux is not a code base. Or a distro. Or a kernel. It's an attitude. And it's not about Open Source. It's about a bunch of people who still think vi is a good config UI. - Matt's reply on ESR's cups/ui rant
- suntsu
- Beiträge: 2947
- Registriert: 03.05.2002 10:45:12
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: schweiz
-
Kontaktdaten:
ohä...chimaera hat geschrieben:ok, das heisst dann also folgendes:
*hüstel*
- single cpu system: landmetzgerei auf dem dorf. mensch kennt sich, plauscht auch mal gerne in vertrauter und entspannte atmosphäre. don't panic.
- echtes smp system: supermarkt mir mehreren fleischereifachverkäuferInnen hinter der theke. massenabfertigung, anonymität, soziale leere..
- pseudo-smp (ht): die fleischereifachverkäuferIn ist schizophren?

- Picknicker
- Beiträge: 654
- Registriert: 25.04.2003 16:28:02
- Wohnort: Saarland
Wieso Gefuehl?
Das kann man ohne weiteres messen. Einfach auf die Uhr schauen, wenn man sich hinten anstellt, und wann man mit den Taschen voll Wurst die Metzgerei verlaesst. Ansonsten gilt, dass man ab einem Load von 1.0 ueber neue Fleischereifachverkaeuferinnen oder ein Upgrade zu einem Supermarkt nachdenken koennte.
Das kann man ohne weiteres messen. Einfach auf die Uhr schauen, wenn man sich hinten anstellt, und wann man mit den Taschen voll Wurst die Metzgerei verlaesst. Ansonsten gilt, dass man ab einem Load von 1.0 ueber neue Fleischereifachverkaeuferinnen oder ein Upgrade zu einem Supermarkt nachdenken koennte.
Magic is always the best solution -- especially reliable magic.
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Also die Load als Richtwert zum Upgraden zu verwenden ist nicht sinnvoll. So kann man bei Webservern durchaus mit einer Load von 3 oder 4 noch problemlos arbeiten. Die Kiste ist dann langsamer, was die Antwortzeiten angeht, aber die eigentlichen Latenzen bewegen sich alle noch in akzeptablen Bereichen. Bei einem Datenbankserver sollte man eigentlich unter 1 bleiben, kommt aber auch sehr auf die Anforderungen an. Fileserver liegen normalerweise immer deutlich unter 1, können aber dennoch zu langsam sein (Plattenengpass z.B.).
Allgemein sollte man sich die Load einfach anschauen, und dabei bewerten, ob das System seinen Zweck erfüllt. Wenn die Load permanent sehr hoch ist, lohnt es sich aber bei Servern auf jeden Fall einfach 'mal herauszufinden *warum* die Load so hoch ist. Dann kann man sich daran machen, das Problem zu beheben. Manchmal reicht schon eine Config Änderung (RAID5 im PIO Mode 4 ist schon ziemlich seltsam
)...
Patrick
Allgemein sollte man sich die Load einfach anschauen, und dabei bewerten, ob das System seinen Zweck erfüllt. Wenn die Load permanent sehr hoch ist, lohnt es sich aber bei Servern auf jeden Fall einfach 'mal herauszufinden *warum* die Load so hoch ist. Dann kann man sich daran machen, das Problem zu beheben. Manchmal reicht schon eine Config Änderung (RAID5 im PIO Mode 4 ist schon ziemlich seltsam

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
- feltel
- Webmaster
- Beiträge: 10477
- Registriert: 20.12.2001 13:08:23
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Leipzig, Germany
-
Kontaktdaten:
Done. Sowas darf nicht verloren gehen.GeoKid hat geschrieben:Geil! Der gehört ja wohl in die Sprüchesammlung, oder?![]()

http://www.debianforum.de/wiki/DebianforumQuotes
debianforum.de unterstützen? Hier! | debianforum.de Verhaltensregeln | Bitte keine Supportanfragen per PM
Hm, das stimmt so nur bedingt. Wenn ein Prozeß was von z.B. der Festplatte braucht, sorgt die CPU dafür, daß die Festplatte die Daten liefert, kümmert sich aber unterdessen um einen anderen Prozeß -- insofern der Kernelrequest blockt.peschmae hat geschrieben:Naja, leider ist die CPU nicht alleine hinter der Ladentheke. D.h. eigentlich schon - aber gewisse Artikel sind im Fest-Platten-Lager - und da kann nur der alte Sid hin.
Die Kunden warten also geduldig auf den alten Sid und die CPU hinter der Theke geht mal ein Bier trinken.
Die Länge der Warteschlange lässt also nicht direkt auf die Auslastung der CPU (hinter der Theke) schliessen - sie sagt auch was darüber aus wieviele von den Kunden was aus dem Lager wollten.
MfG Peschmä
D.h. mit unserer netten Metapher: Kunde A kommt und will Hackfleisch. Ist aber keines fertig, so schiebt die Bedienung Fleisch in den Fleischwolf und schaltet ihn an. Dann bedient sie Kunde B. Irgendwann ist der Fleischwolf fertig und meldet das. Dann kommt's auf die Bedienung an: entweder sie macht erst B fertig oder läßt B warten, um A fertig zu bedienen.
Ist letzlich eine Frage der Implementierung des Schedulers.
Jedenfalls ist A glücklich, weil er bedient wird; B ist auch glücklich, da sie auch bedient wird. Und die Warteschlange verkürzt sich dadurch, weil während das Hackfleisch durchgeleiert wird, kann A ja keine weitere Bestellung aufgeben, die bearbeitet wird (wenn der Request blockt, wovon man an der Stelle ausgehen kann, denn ohne Hackfleisch keine Fleischwurst... äh?!)
Also guten Appetit!
cheers,
Jochen
___________________________________________________
Testing can prove the presence of bugs, but not their absence. -- Dijkstra
Jochen
___________________________________________________
Testing can prove the presence of bugs, but not their absence. -- Dijkstra
Nein, dann ist die Load niedrig, weil kein Prozeß lauffähig ist. Schließlich sind sie geblockt und warten auf Ressourcen. Nur running und runnable fließen IMHO in die Load
cheers,
Jochen
___________________________________________________
Testing can prove the presence of bugs, but not their absence. -- Dijkstra
Jochen
___________________________________________________
Testing can prove the presence of bugs, but not their absence. -- Dijkstra
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Jepp... genau richtig...
Allerdings: Es kann natürlich durch "Festplattenblockade" mit z.B. Sync I/O dazu kommen, dass einzelne Prozesse extrem lange "R" sind, und sich die anderen dahinter stauen. Allerdings muss man diese Situation schon gezielt provozieren; im Wirklichen Leben (TM) passiert das normalerweise nicht...
Patrick
Allerdings: Es kann natürlich durch "Festplattenblockade" mit z.B. Sync I/O dazu kommen, dass einzelne Prozesse extrem lange "R" sind, und sich die anderen dahinter stauen. Allerdings muss man diese Situation schon gezielt provozieren; im Wirklichen Leben (TM) passiert das normalerweise nicht...
Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
Hm, eigentlich ist es unabhaengig davon, was man mit der Kiste macht. Wenn der Load >= 1 ist, ist die Kiste (irgendwo) ausgelastet, und bestimmt Prozesse koennten schneller dran kommen, d.h. es kommt zu Verzoegerungen. Natuerlich kann es varieren, welche Verzoegerungen man akzeptabel findet, aber das ist eh subjektiv.
Magic is always the best solution -- especially reliable magic.
Hier würde es gut passen die 2 aktuellen Scheduler genauer zu betrachten :
http://www.linux-magazin.de/Artikel/aus ... chnik.html
http://www.linux-magazin.de/Artikel/aus ... chnik.html