Sie werden auch mit 1 GB (und wahrscheinlich weniger) Swap in Ordnung sein. Mein Arbeitscomputer verbraucht normalerweise nicht mehr als 140-150 MiB. Ein Gigabyte ist ausreichend für die Überversorgung.
Wenn Sie keine Aufgaben berechnen, für die Datasets mit Hunderten von Gigabyte erforderlich sind und auf die (dies ist wichtig!) Daten mehr oder weniger auf einmal zugegriffen wird, möchten Sie niemals einen Swap haben, der viel größer ist. Andererseits funktioniert die einfache Speicherzuordnung einer Datendatei für diese Anwendung genauso gut.
Aber mehr Tausch hilft mehr, oder? Mehr von allem ist immer besser!
Überlegen Sie, welchen Unterschied ein Swap von beispielsweise 16GiB macht (oder denken Sie an 64GiB). Wenn Sie diese 16GiB niemals verwenden, können Sie sie auch nicht als erstes beiseite legen. Aber was passiert, wenn Sie sie verwenden? Die Festplatte ist im Vergleich zum Hauptspeicher extrem langsam. Selbst mit einer SATA-600-SSD dauert die Übertragung von 16GiB zwischen 30 und 40 Sekunden und bei einigen anderen Konfigurationen das 2-4-fache.
Jetzt wird jemand unweigerlich einwenden, dass Sie eher ein Dutzend oder so 4-kB-Seiten durchblättern, nicht 16-GB-Seiten auf einmal. Das ist zwar wahr, aber der Punkt steht dennoch. Wenn Sie nur ein paar Seiten ein- und auslagern müssen, benötigen Sie keine 16 GB Swap, aber wenn Sie 16 GB Swap benötigen, werden Sie diese auch übertragen (auf die eine oder andere Weise).
Theoretisch könnten 99,9% aller Benutzer sogar einen 64GiB-Rechner (oder einen 8 + GiB-Rechner) ohne Tausch verwenden und bemerken höchstwahrscheinlich nie, dass etwas fehlt. Dies ist jedoch nicht ratsam.
Erstens ist es nicht optimal, weil das Betriebssystem weniger Möglichkeiten hat, zu verwerfen, wenn der physische Speicher knapp wird. Es gibt zwei Möglichkeiten: Tauschen Sie etwas aus, das nicht verwendet wird, oder werfen Sie Seiten aus dem Puffercache. Wenn Sie keinen Swap haben, gibt es nur eine Möglichkeit. Das Wegwerfen von Seiten aus dem Puffercache ist harmlos, kann jedoch die Leistung merklich beeinträchtigen.
Zweitens können private anonyme Zuordnungen einfach fehlschlagen, wenn es keinen Swap gibt. Das wird normalerweise nicht passieren, aber irgendwann, wenn nicht genügend physischer Speicher zur Verfügung steht, um alle zu befriedigen, und es keinen Swap gibt, hat das Betriebssystem nur diese eine Wahl, außer ...
Drittens kann der gefürchtete OOM-Killer einspringen Dies bedeutet, dass ein mehr oder weniger zufälliger Prozess getötet wird. Nein danke. Dies ist nicht etwas, was Sie wollen.
Tipps wie das X-fache des Arbeitsspeichers, den Sie benötigen, kommen von Leuten, die etwas wiederholen, was sie über Jahrzehnte gehört (und nicht verstanden haben!), Von jemandem, der etwas wiederholt hat, was sie über Jahrzehnte gehört (und nicht verstanden haben!) vor.
Die "Use 2X your RAM" -Regel war in den 1980er und 1990er Jahren eine leicht zu merkende Faustregel, es war nie die "goldene Wahrheit" (nur etwas, das für die meisten Benutzer in Ordnung war) und sie gilt heutzutage überhaupt nicht mehr .
Sie sollten eine angemessene Menge an Swap haben, die Sie sich leicht leisten können (sagen wir ein Gigabyte), damit das Betriebssystem einige veraltete Dinge auslagern kann, und damit die Welt nicht sofort untergeht, wenn Sie einmal nach etwas mehr Speicher fragen. Aber das ist es.
mmap
, Ihre Arbeitsseiten zuzuweisen , wenn Sie die Größe Ihrer Arbeitsumgebung im Voraus kennen oder bereit sind, eine etwas einfachere Speicherverwaltung durchzuführen. Dann entspricht Ihr Swap-Betrag genau dem Betrag, den Sie für Ihren Prozess benötigen.