Wenn Sie Quellen kompilieren, für die fast der gesamte verfügbare RAM erforderlich ist (wenn nicht mehr), ist das Hinzufügen von echtem RAM wahrscheinlich die einzige performante Lösung. Trotzdem können Sie versuchen, eine sehr große Menge Swap hinzuzufügen (zB 2x oder 3x des Arbeitsspeichers) und /proc/sys/vm/swappiness
auf einen niedrigen Wert wie 1 zu setzen (beachten Sie, dass bei Kernel 3.5+ der Wert 0 den Swap völlig deaktiviert), so dass der Swap funktioniert wird nur verwendet, wenn es tatsächlich notwendig ist. Dies sollte das Thrashing minimieren.
Linux ohne Swap fängt immer noch an zu prügeln
Debian 9.4, Linux 4.9
Ich kompiliere manchmal etwas, das kaum in den RAM passt, oder ein Rouge-Prozess beginnt plötzlich, Speicher zu verbrauchen, der über das verfügbare hinausgeht. Wenn der Prozess über den verfügbaren Arbeitsspeicher hinausgeht, beginnt Linux mit dem Thrashing der Festplatte, obwohl Null-Swap aktiviert ist (kein Swap war ein Versuch, dies zu vermeiden). Ich schätze, es beginnt damit, Sachen wie die mmap
Ped-Teile der Binärdateien, die gerade laufen, zu verwerfen und neu zu laden .
An diesem Punkt reagiert meine X-Sitzung schnell nicht mehr, und ich kann nur Dutzende Minuten warten, bis die gesamte X-Sitzung beendet ist und ich mich wieder anmelden kann.
Ich habe versucht, nach Lösungen zu suchen, aber nichts scheint zu funktionieren. Der OOM-Killer fängt diesen Prozess nicht ein und vm.overcommit_memory=2
mit GDM und Gnome kann ich mich nicht einloggen.
Gibt es eine Möglichkeit , Linux mitzuteilen, überhaupt nicht zu tauschen ? Auf diese Weise würde ich zumindest die Chance bekommen, dass der Rouge-Prozess von einem fehlgeschlagenen Prozess beendet wird malloc
, und selbst wenn nicht, würde ich zumindest nicht warten müssen, während ich auf eine nicht reagierende Maschine starrte.
Oder irgendwelche anderen Hinweise, wie man dieses Szenario handhabt?
1 Antwort auf die Frage
Verwandte Probleme
-
9
Was ist der Unterschied zwischen den Befehlen "su -s" und "sudo -s"?
-
4
Gutes freies Ubuntu Server-VMWare-Image benötigt
-
4
Was sind die Unterschiede zwischen den großen Linux-Distributionen? Werde ich es merken
-
2
Begrenzung der CPU-Auslastung für Flash in Firefox?
-
2
Wie kann ich mein Mikrofon unter Debian GNOME zum Laufen bringen?
-
2
Conky-Setups - Beispiele / Ideen?
-
3
Was sind die Unterschiede zwischen Linux Window Managern?
-
2
ThunderBird / Lichtsynchronisation mit SE k770i
-
6
Muss ich 3 RAM-DIMMs haben, um DDR3 verwenden zu können, oder sogar eine 3-Kanal-CPU betreiben könne...
-
4
Linux-Dateisystem