CPU-Auslastung ist zu niedrig
Hallo Community,
ich habe einen Linux Server auf welchem diverse Dienste laufen. Unter anderem auch eine Java-Anwendung, mit einer durchschnittlichen CPU-Auslastung von 140%.
Das Problem ist nun, dass die CPU-Auslastung der Java-Anwendung jeden Abend ca. 15 min. lange bei ~8% liegt.
Ich wollte fragen woran das liegen könnte.
Intel(R) Core(TM) i7-3930K CPU @ 3.20GHz
64 GB RAM
Debian 6.0.6 amd64
Ich hoffe ihr könnt mir dabei helfen.
Grüße,
EinTyp
ich habe einen Linux Server auf welchem diverse Dienste laufen. Unter anderem auch eine Java-Anwendung, mit einer durchschnittlichen CPU-Auslastung von 140%.
Das Problem ist nun, dass die CPU-Auslastung der Java-Anwendung jeden Abend ca. 15 min. lange bei ~8% liegt.
Ich wollte fragen woran das liegen könnte.
Intel(R) Core(TM) i7-3930K CPU @ 3.20GHz
64 GB RAM
Debian 6.0.6 amd64
Ich hoffe ihr könnt mir dabei helfen.
Grüße,
EinTyp
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 192705
Url: https://administrator.de/contentid/192705
Ausgedruckt am: 22.11.2024 um 15:11 Uhr
4 Kommentare
Neuester Kommentar
Zum eigentlichen Problem:
Java hat einen Garbage-Collector der in regelmäßigen Abständen den Arbeitsspeicher des Programms (Heap) optimiert und bereinigt. Da die Software offenbar alleine 7-8 GB RAM für sich reserviert hat dürfte der Java-Heap ca. 2-3 GB belegen. Den zu optimieren kann durchaus rechenintensiv sein...
Wenn die Software "idlet" - ist sie dann noch benutzbar oder hängt sie?
Ich will damit sagen: Wenn die Software nichts tun muss (z.B. keine Anfragen kommen), dann tut sie natürlich auch nichts auf dem Prozessor - warum auch?
Wird während der Idle-Zeit vielleicht der Datenbankserver gesichert und dieser sperrt alle Tabellen bzw. blockiert alle Verbindungen zum Zwecke der Konsistenten Backups?
Zumindest MySQL verhält sich bei Table-Locks so, dass die Anfragen zwar angenommen werden aber dann bis zur Entsperrung der Tabellen einfach festhängen - ebenso die Software die die Anfrage gestellt hat.
Linux zählt 100% = 1 Kern vollständig ausgelastet. 200% = 2 Kerne vollständig ausgelastet. Also alles in Ordnung
Weil IA64 die Architektur der Intel Itanium-Prozessoren (http://de.wikipedia.org/wiki/Itanium) und nicht kompatibel zu normalen Intel-Prozessoren wie Intel Core oder Xeon ist.
i386 ist der generische Begriff für die klassische x86-Architektur OHNE 64 Bit-Unterstützung - bei 64 GB RAM vielleicht etwas gewagt...
AMD64 hat sich zumindest in der Linux-Welt als Sammelarchitektur für alle Prozessoren durchgesetzt die auf klassischer x86-Architektur basieren, aber 64Bit-Erweiterungen haben (http://de.wikipedia.org/wiki/AMD64).
Er KANN sinnvolerweise keine andere als die AMD64-Version installieren
Java hat einen Garbage-Collector der in regelmäßigen Abständen den Arbeitsspeicher des Programms (Heap) optimiert und bereinigt. Da die Software offenbar alleine 7-8 GB RAM für sich reserviert hat dürfte der Java-Heap ca. 2-3 GB belegen. Den zu optimieren kann durchaus rechenintensiv sein...
Wenn die Software "idlet" - ist sie dann noch benutzbar oder hängt sie?
Ich will damit sagen: Wenn die Software nichts tun muss (z.B. keine Anfragen kommen), dann tut sie natürlich auch nichts auf dem Prozessor - warum auch?
Wird während der Idle-Zeit vielleicht der Datenbankserver gesichert und dieser sperrt alle Tabellen bzw. blockiert alle Verbindungen zum Zwecke der Konsistenten Backups?
Zumindest MySQL verhält sich bei Table-Locks so, dass die Anfragen zwar angenommen werden aber dann bis zur Entsperrung der Tabellen einfach festhängen - ebenso die Software die die Anfrage gestellt hat.
Zitat von @MrNetman:
Hi Typ,
Also wenn 140% normal sind - dann gibt es schon mal ein mathematisches Problem oder meinst du mehrere Kerne?
Hi Typ,
Also wenn 140% normal sind - dann gibt es schon mal ein mathematisches Problem oder meinst du mehrere Kerne?
Linux zählt 100% = 1 Kern vollständig ausgelastet. 200% = 2 Kerne vollständig ausgelastet. Also alles in Ordnung
Weil IA64 die Architektur der Intel Itanium-Prozessoren (http://de.wikipedia.org/wiki/Itanium) und nicht kompatibel zu normalen Intel-Prozessoren wie Intel Core oder Xeon ist.
i386 ist der generische Begriff für die klassische x86-Architektur OHNE 64 Bit-Unterstützung - bei 64 GB RAM vielleicht etwas gewagt...
AMD64 hat sich zumindest in der Linux-Welt als Sammelarchitektur für alle Prozessoren durchgesetzt die auf klassischer x86-Architektur basieren, aber 64Bit-Erweiterungen haben (http://de.wikipedia.org/wiki/AMD64).
Er KANN sinnvolerweise keine andere als die AMD64-Version installieren