Ist es wichtig, wenn die Größe eines Swap-Bereichs in Linux zu klein eingestellt wurde (z. B. 1 GB) und der Hauptspeicher zu klein ist 128Gb
?
Sollen wir die Größe des Swap-Bereichs immer auf die doppelte Größe des Arbeitsspeichers festlegen?
AKTUALISIERT:
Hallo, vielen Dank für die Beantwortung dieser Frage. Tatsächlich habe ich diese Frage, weil bei der Verwendung eines kleinen Clustersystems einige Probleme aufgetreten sind. Die Probleme sind hier veröffentlicht . Das folgende Bild enthält einige Informationen zu einigen Computern in diesem kleinen Cluster.
Dies MEMTOT
ist die Gesamtgröße des Arbeitsspeichers dieser Maschine, die SWAPTO
Gesamtgröße des SW-AP-Bereichs dieser Maschine und SWAPUS
die verwendete Größe des SWAP-Bereichs. Wie in der Abbildung gezeigt, ist die Verwendung von SWAP in der Tat gering.
Beim Versuch , diese Probleme im Thema zu lösen Hier sind wir nicht sicher , ob die Menge des SWAP - Bereichs zu klein eingestellt ist, der gerade 1Gb
zu relativ 128Gb
, wie in der Abbildung dargestellt. Somit habe ich diese Frage. Es tut mir leid, dass ich nicht die gesamten Hintergrundinformationen in der Originalversion dieses Beitrags gepostet habe. Davor dachten wir auch, dass wir die Menge an SWAP klein einstellen könnten, wenn die Menge an RAM groß ist. Wir haben versucht , die SWAP - Set c0148
zu sein 16Gb
, das Problem scheint keine zu sein (Vielleicht sollten wir diese Schlussfolgerung nehmen nach deren Status für eine lange Zeit zu beobachten).
Wir sind keine Experten auf Linux-Systemen, und wir konnten nicht erklären, warum dies passiert ist. Es ist wahrscheinlich, dass es sich um ein Clustersystem handelt und der SGE die Ressourcen jedes Computers verwaltet. Außerdem muss er über eine relativ große Menge an SWAP verfügen, da dieser Computer möglicherweise von vielen Jobs verwendet wird, die von vielen Benutzern übergeben wurden.
Wenn wir nur den SWAP-Betrag zu groß einstellen, sollten wir auch überlegen, welche anderen Probleme dies verursachen würde.
quelle
Antworten:
Der Linux-Kernel hat eine Einstellung, mit der gesteuert wird, wie oft der Swap verwendet wird (
swappiness
siehe /unix/88693/why-is-swappiness-set-to-60-by-default) .Ein Swap von Null bedeutet, dass der Swap nur verwendet wird, wenn das System keinen Speicher mehr hat. Ein Swap-Wert von 100 erzwingt die sofortige Verwendung von Swap.
Passen Sie Ihr System so an, wie Sie es möchten, aber mit 128 GB RAM ist es sehr unwahrscheinlich, dass auf Ihrem System der Arbeitsspeicher knapp wird. Daher können 2/4 GB Swap ausreichen. Es ist nicht ratsam, aber möglich, ein System ohne Swap-Partition auszuführen.
Ich denke, die Regel, dass der Auslagerungsbereich doppelt so groß ist wie der Arbeitsspeicher, ist veraltet und nur auf Systemen nützlich, die ungefähr 1 GB Arbeitsspeicher haben und immer am Rande der vollen RAM-Auslastung stehen.
quelle
swappiness
auf 0 bei einer großen Menge an RAM logisch erscheint, ist es möglicherweise besser, diesen Standardwert beizubehalten60
: http://unix.stackexchange.com/a/88820/50687 .Ich glaube die 2x Faustregel ist veraltet. Unsere Workstations haben 16 GB RAM, wir verbrauchen davon normalerweise nur 25% und kaum mehr als 50%. Aus diesem Grund verwenden wir für unsere Zwecke keinen Swap.
Da Sie sich entscheiden müssen, wie viel Swap erstellt werden soll und theoretisch eine beliebige Zahl nicht ausreicht, wählen Sie 0. Oder - warum nicht einfach mehr RAM installieren?
Ich glaube, dies ist eine sehr persönliche Entscheidung, die davon abhängt, wie Ihr Computer verwendet wird und wie viel RAM er hat.
quelle
Sofern Sie nicht einige speicherintensive Berechnungen durchführen, müssen Sie überhaupt keinen Swap durchführen (es ist jedoch besser, eine kleine Swap-Partition zu haben). Ein Swap-RAM ist jedoch erforderlich, wenn Sie Suspend to Disk verwenden möchten.
quelle