"Lastdurchschnitt" bleibt bei 7.0 hängen

1116
Daniil

Ich benutze Gentoo und immer, wenn ich Betriebszeit mache, bleibt mein "Lastdurchschnitt" bei 7.0 auf der ganzen Linie stecken. Bei Verwendung von top oder htop oder dstat ist die CPU-Nutzung immer inaktiv. Auf dem Computer wird ein Java-Programm ausgeführt, das viele Pakete von NIO und java.util.concurrent verwendet (möglicherweise gibt es viele Spin-Locks). Könnte dies zu falschen Durchschnittslasten führen? Wie fängt man eigentlich an, dies zu debuggen? Der Computer scheint nicht ausgelastet zu sein, da seine Leistung normal ist. Irgendwelche Vorschläge?

uptime: " 10:56:50 up 327 days, 21:01, 4 users, load average: 7.00, 7.03, 7.00" uname -a: "Linux host 2.6.30-gentoo-r6 #1 SMP Tue Oct 6 12:08:22 EDT 2009 i686 Intel(R) Xeon(R) CPU X5550 @ 2.67GHz GenuineIntel GNU/Linux" 
4
Kannst du hier irgendwo im Web einen Screenshot von top hinzufügen? ott-- vor 11 Jahren 0
Wie Sie sehen können, ist alles im Leerlauf, aber der Durchschnitt liegt bei 7,00 Daniil vor 11 Jahren 0
Ich wollte den oberen Screenshot sehen, um zu sehen, wie viele Prozesse die CPU kostet. ott-- vor 11 Jahren 0
Es könnte der Netzwerkverkehr sein, überprüfen Sie http://serverfault.com/questions/365061/high-load-average-low-cpu-usage-why ott-- vor 11 Jahren 0
Sie da! Bei Stack Exchange stoßen wir darauf, ob Sie es glauben oder nicht. Können Sie uns mitteilen, welche Art von Hardware Sie verwenden? Wir haben dies bei Dell Gen-12-Hardware. Ich habe etwas gegoogelt und es sieht so aus, als ob die Leute seit 2004 auf dieses Problem gestoßen sind! Peter Grace vor 10 Jahren 0
Peter - ich bin überrascht, dass diese Site unter Linux läuft. Ich dachte, es wäre eine .net-Plattform. Jedenfalls betreibe ich einen Dell 1950, einen "PowerEdge-Server der 9. Generation". Dieser Durchschnitt scheint die Leistung in keiner Weise zu beeinflussen, ist aber wirklich ungewöhnlich. Post zurück, wenn Sie etwas finden. Daniil vor 10 Jahren 0

1 Antwort auf die Frage

2
Ярослав Рахматуллин

Ihre Nummern scheinen gültig zu sein und unterhalb der Auslastung. Ein voll ausgelastetes System mit acht Kernen (oder CPUs) hätte eine durchschnittliche Last von 8,0. Derzeit liegt der Auslastungsdurchschnitt bei rund 88%. Aus diesem Grund weist das System keine Leistungsprobleme auf.

Verweise:

http://blog.scoutapp.com/articles/2009/07/31/understanding-load-averages
http://www.linuxjournal.com/article/9001?page=0,1


Aus Wikipedia

Ein Computer im Leerlauf hat eine Ladezahl von 0. Jeder Prozess, der eine CPU (Bereitschafts- oder Laufwarteschlange) verwendet oder darauf wartet, erhöht die Ladezahl um 1. Die meisten UNIX-Systeme zählen nur Prozesse, die in der Ausführung (auf CPU) oder in Runable (Warten auf) laufen CPU) Zustände. Linux umfasst jedoch auch Prozesse im unterbrechungsfreien Ruhezustand (in der Regel auf Festplattenaktivität wartend), die zu deutlich unterschiedlichen Ergebnissen führen können, wenn viele Prozesse aufgrund eines ausgelasteten oder blockierten E / A-Systems in der E / A blockiert bleiben [1]. Dazu gehören beispielsweise Prozesse, die aufgrund eines Ausfalls eines NFS-Servers oder wegen langsamer Medien (z. B. USB 1.x-Speichergeräte) blockiert werden. Solche Umstände können zu einem durchschnittlichen Lastanstieg führen, der keine tatsächliche Erhöhung der CPU-Auslastung widerspiegelt (gibt jedoch auch eine Vorstellung davon, wie lange Benutzer warten müssen).

Dies bedeutet, dass Ihre Java-Threads für das Laden verantwortlich sind, da (erraten) die meisten Dinge util.concurrentvom Betriebssystem als E / A-Blockierung betrachtet werden. Sie können beginnen, diese Prozesse mit Tools zu untersuchen, die als Antwort auf diese Frage erwähnt werden: Wie können Sie herausfinden, welcher Prozess in Anspruch genommen wird?