Kannst du zu viel tauschen?

16

Ich habe mich nur gefragt, ob Sie eine zu große Swap-Partition haben können. Wenn ja, wann ist eine Swap-Partition zu groß? Was sind die Nachteile / Nachteile einer zu großen Swap-Partition (auch wenn ich über ausreichend Speicherplatz verfüge)?

Wenn nein, was sind die Vorteile, wenn mehr als der empfohlene Swap Space zur Verfügung steht?

An0n
quelle
5
Der offensichtliche Nachteil ist, dass Sie Speicherplatz verschwenden. OTOH: Wenn Sie "zu viel" Swap haben (sagen wir 30 GB auf einem 4 GB-System), werden schlecht benommene Apps viel später nicht mehr genügend Arbeitsspeicher haben und das wird Ihr System verlangsamen. Ordnungsgemäßes Verhalten von Apps (ohne Speicherlecks) wird einfach nicht verwendet. (Ich gebe zu, dies ist eine vereinfachte Ansicht.)
PerlDuck
Ich stimme @PerlDuck zu - "zu viel Swap" belegt nur Speicherplatz. Ihr System wird langsam, wenn Swap verwendet wird. In diesem Fall werden entweder weniger Apps ausgeführt, leichtere Apps oder mehr RAM abgerufen
Panther
Ich weiß, also, wenn Sie genug RAM haben, gibt es irgendwelche Nachteile, wenn Sie nicht zu viel Speicherplatz verwenden? Außer natürlich "schlecht benommene" Apps, wie PerlDuck sagte.
18.
1
VTD Alle Fragen in der Bearbeitung rechtfertigen es, den engen Grund von einem doppelten zu einem zu breiten Thema zu ändern. OP ist offensichtlich verärgert, aber Meta oder ein Chatroom sind ein besserer Ort für Diskussionen.
WinEunuuchs2Unix
3
Sollten die Menschen unsicher, was @PerlDuck (und Panther) sprechen, beachten Sie, dass , auch wenn Sie effektiv unbegrenzten Speicherplatz hatte, um mehr Platz zu tauschen, die werden Prozesse machen , dass sollte nur beendet werden, und welche sonst würde schnell sein Wenn das Programm automatisch beendet wird, verlangsamen Sie das System zunächst für längere Zeit, bis es gecrawlt ist . PerlDucks Kommentar würde meiner Meinung nach auch als Antwort dienen. Wenn wir diese Frage am Ende erneut öffnen, kann möglicherweise eine Antwort auf die Nachteile hinzugefügt werden, die sich aus der Tatsache ergeben, dass weitaus mehr Tauschgeschäfte als nötig getätigt werden. Weil es Nachteile gibt.
Eliah Kagan

Antworten:

8

Nein

Auf den ersten Blick können Sie nicht zu viel Swap haben, da Sie Swap als eine Möglichkeit zur Erhöhung des Arbeitsspeichers sehen können. Tatsächlich erhöht es nicht den Arbeitsspeicher, sondern gibt nur Folgendes vor: Wenn Sie 8 GB echten Arbeitsspeicher und einen Auslagerungsspeicher von beispielsweise 24 GB konfiguriert haben, können Ihre Programme bis zu 8 + 24 = 32 GB Arbeitsspeicher zuweisen und verwenden Das klingt zunächst gut.

Aber

Wenn Sie Anwendungen ausführen, die entweder Speicherlecks aufweisen oder nicht für die Ausführung mit 8 GB Arbeitsspeicher ausgelegt sind (denken Sie beispielsweise an die Videobearbeitung), wird dieser Auslagerungsspeicher von diesen Anwendungen verwendet, und der Auslagerungsvorgang ist langsam. Je mehr Auslagerungsspeicher aktiv von diesen Anwendungen verwendet wird, desto mehr ist das System damit beschäftigt, Speicher nur auf die Festplatte und von der Festplatte zu verschieben. Dies wird die Reaktionsfähigkeit des Gesamtsystems drastisch verlangsamen und zu einer schlechten Benutzererfahrung führen.

Wenn der Swap-Speicherplatz erschöpft ist, kann es vorkommen, dass einige Anwendungen nicht mehr genügend Arbeitsspeicher haben und vom OOM_Killer des Kernels beendet werden .

Aus dem Wiki :

Der typische OOM-Fall in modernen Computern tritt auf, wenn das Betriebssystem keinen virtuellen Speicher mehr erstellen kann, da alle potenziellen Sicherungsgeräte belegt sind.

Fazit

Ein Nachteil von zu viel Swap Space ist daher: Je mehr Sie haben, desto später tritt diese OOM-Situation auf und desto länger werden Sie unter einem verzögerten und nicht reagierenden System leiden müssen.

Ein weiterer offensichtlicher Nachteil ist natürlich die Verschwendung von Speicherplatz, aber das ist heutzutage vielleicht nicht mehr so ​​wichtig.

PerlDuck
quelle
+1 für die Berücksichtigung des Kantenfalls. Persönlich bin ich kein großer Swap-Fan, da der Winterschlaf für Bären ist und meine Systeme dafür viel zu beschäftigt sind. ;-) Prost.
Elder Geek
@ ElderGeek LOL. Eigentlich hat mich Eliah Kagan dazu gebracht, meinen einfachen Kommentar in eine Antwort zu verwandeln. Er hat mich davon überzeugt, dass der oben erwähnte Nachteil, zu viel Swap zu haben, eine entscheidende Sache ist und für andere wichtig sein könnte. Ich bin bei dir und habe wenig Swap konfiguriert (2GB mit 8GB RAM) und es wird fast nie angerührt.
PerlDuck
Ich hatte ähnliche Ergebnisse mit ähnlichen Einstellungen. Ich wünschte, das 2x-Tausch- Gerücht würde endgültig sterben.
Elder Geek
5

Es gibt keinen direkten Nachteil für einen großen Swap-Bereich. Bei der Art und Weise, wie es vom Kernel verwaltet wird, hat eine Erhöhung des Swap-Speicherplatzes über das, was ausreicht, keinen oder einen vernachlässigbaren Einfluss auf die Leistung.

Der einzige Nachteil von "zu viel" Auslagerungsspeicher ist, dass Sie diesen Speicherplatz nicht für die Speicherung verwenden können.

David Foerster
quelle
1
@ An0n: Ich denke, es wäre ein ziemlich großer Nachteil, alle ~ 6 TB, die derzeit mit meiner Maschine verbunden sind, als Swap-Speicherplatz zuzuweisen. Wo würde ich all meine Musik ablegen ...?
David Foerster
2
@ An0n: Was nützt ein Computer, wenn er nur booten und dann keine nützlichen Daten speichern kann? Das klingt eher nach einer teuren Raumheizung.
David Foerster
1
@ An0n: Klar, das habe ich auch angenommen, aber du verpasst den Punkt. Ich denke, wir können uns einig sein, dass ein Computer, um nützlich zu sein, in der Lage sein muss, einen verwendbaren Systemstatus zu erreichen (einschließlich Booten) und Zugriff auf Speicherplatz zu haben, den der Benutzer für seine persönlichen Daten verwenden kann. Das setzt voraus, dass es nicht mit Swap Space belegt ist.
David Foerster
2
Natürlich ist es relativ. Genau wie "zu viel" relativ ist. Wenn ich ein bootfähiges System besitze und meinen gesamten freien Speicherplatz als Auslagerungsspeicher reserviere, ist dies für mich nicht mehr nützlich, da kein freier Speicherplatz mehr vorhanden ist, bis ich die Systemkonfiguration so ändere, dass mehr freier Speicherplatz zur Verfügung steht. In diesem Sinne würde der Swap Space während dieser Zeit "zu viel" sein, was das System während dieser Zeit unbrauchbar macht. Jedenfalls bin ich nicht hier, um mit Ihnen über Wortsemantik zu streiten.
David Foerster
1
@ An0n Um den Punkt hier zu unterstreichen, ist Swap Space ein Bereich, den Sie für nichts anderes verwenden können. Festplattenspeicher kostet Geld. Wenn Ihr Speicherplatz begrenzt ist (meins ist nur 32 GB groß), möchten Sie so viel wie möglich davon freigeben, um Programme zu installieren und Dateien mit Ihren Inhalten wie Musik zu schreiben. Die Leute versuchen im Allgemeinen, Swap auf ein Minimum zu beschränken, und keinen anderen Grund. Swap ist etwas, das das System möglicherweise für einen effizienten Betrieb benötigt, das für den Benutzer sonst keinen Wert hat. Im Allgemeinen möchten wir, dass unser System nur die erforderlichen Ressourcen verwendet und uns genügend Spielraum lässt.
Zanna
4

Sie werden keine anderen Nachteile bemerken als weniger Speicherplatz auf Ihrer Festplatte. Ich denke, dass heutzutage die Vorstellung von der doppelten Menge an RAM in den meisten Systemen veraltet ist. Normalerweise empfehle ich, für den Swap-Speicher in Laptops die gleiche Größe Ihres RAM zu verwenden, um Ihnen die Möglichkeit zu geben, Ihren PC in den Ruhezustand zu versetzen, ohne Daten zu verlieren, da der RAM flüchtig ist.

Die einzigen Fälle, in denen ich erwägen würde, mehr als 1x RAM für die Auslagerungspartition zu verwenden, sind die Fälle, in denen Sie glauben, dass Sie Ihre RAM-Größe in kurzer Zeit aktualisieren werden. Oder wenn Sie vorhaben, ein System zu verwenden, in dem Sie den von nicht zur gleichen Zeit verwendeten Programmen belegten Speicher in einer Art Cache speichern.

Ich hoffe, mein Standpunkt war klar genug, und ich wiederhole, ich glaube nicht, dass Sie Probleme haben werden, wenn Sie zu viel Swap-Speicher haben.

Einen schönen Tag noch!

zurg
quelle
2
Ich verwende Swap überhaupt nicht, wenn RAM> 2-4 GB auf einem einzelnen Benutzer-Desktop.
Panther,
1
@Panther Warum nicht? Und es geht nicht darum, wie oder wann Sie es verwenden. Es geht um die Größe und die Verwendung.
19.
2
Haben Sie die Auswirkungen von Speicherlecks
Elder Geek
@ ElderGeek Hallo, nein, ich habe es nicht in Betracht gezogen. Ich mag Ihre Antwort, ich wusste nicht über Speicherlecks Problem!
Zurg
2

Wie viel SWAP braucht der Winterschlaf wirklich?

Es ist ein Irrtum, dass Sie RAM x 2 für die SWAP-Größe benötigen, wenn Sie den Ruhezustand verwenden. Die Auslagerungsgröße muss der Größe des verwendeten Arbeitsspeichers und nicht des installierten Arbeitsspeichers entsprechen . Im Allgemeinen muss die Auslagerungsgröße 2/5 des installierten RAM betragen. So finden Sie heraus, wie viel Arbeitsspeicher mindestens für die Verwendung benötigt wird:

$ cat /sys/power/image_size
3153907712

Auf diesem 8-GB-RAM-Computer sind mindestens 3 GB für den Ruhezustand erforderlich.

Sie können die Werte image_sizefür eine kleinere Swap-Größe mit dem Risiko eines Ausfalls optimieren . Sie können es für eine größere Auslagerungsgröße optimieren und möglicherweise den Ruhezustand beschleunigen.

Referenz: https://wiki.archlinux.org/index.php/Power_management/Suspend_and_hibernate


16 MB RAM im Jahr 1995, andere Regeln für 16 GB RAM im Jahr 2018

In den Tagen, in denen Sie 16 MB RAM hatten, machte der Austausch von x 2 für 32 MB auf Ihrer 720 MB-Festplatte Sinn. Ein wenig RAM- und HDD-Geschichte in diesem Artikel der Washington Post von 1995 .

23 Jahre später könnten einige technische Artikel aus dem Jahr 1995 (obwohl ich keine gefunden habe) gefunden werden, um neue Benutzer in die Irre zu führen. Ich fand jedoch einen Artikel von 2007, in dem SWAP = RAM x 2 empfohlen wurde .

Im Jahr 1995 betrug der Anteil der 32-MB-Swap-Auslagerungen von 760-MB-Festplatten 4%. Tatsächlich wurde die Swap-Partition 1995 möglicherweise häufig verwendet. Heute, 2018, sind 16 GB RAM x 2 für 32 GB SWAP auf Ihrer 256 GB SSD nicht mehr sinnvoll, da 13% der SSD benötigt werden. Heute wird meine 8-GB-SWAP-Partition nur verwendet, wenn ich sie beim Testen von OOM-Killer zwinge, sie zu füllen: Google Chrome beansprucht meinen Speicher so weit, dass mein Computer fast zum Stillstand kommt. Was kann ich tun, um dies zu verhindern? .

WinEunuuchs2Unix
quelle
+1, um auf das Missverständnis der oft angepriesenen 2x-Regel hinzuweisen, bei der es sich um eine totale Koje handelt.
Elder Geek
@ ElderGeek Danke. Ich habe einen Verlaufsabschnitt hinzugefügt, der angibt, wann 16 MB RAM mal 2 für 32 MB SWAP sinnvoll gewesen sein könnten.
WinEunuuchs2Unix
Eine andere zu berücksichtigende Sache ist SSD gegen HDD. Wollen wir eine Menge Lese- / Schreibzugriffe auf die SSD, um sie in diesem Teil der SSD schneller zum Scheitern zu bringen (oder ist das ein Mythos)? Auf meinem 32-GB-RAM-System habe ich 2 GB Velociraptor-Laufwerk für SWAP verwendet, aber ohne Absicht für den Ruhezustand. Ich bin mir immer noch nicht sicher, ob dies in Ordnung ist. Möglicherweise hätte ich keinen Swap haben können. Aber wenn ich im Ruhezustand wäre, würden vielleicht 4 GB ausreichen, aber wahrscheinlich würde ich 20 GB Browser verwenden, und dann würden 4 GB nicht ausreichen ???
NZ Dev
@NZDev Ich habe meinen Swap auf SSD, aber es wird selten verwendet. Als ich das letzte Mal nachgesehen habe, war es nach einem Jahr noch zu 100% haltbar. Um den Prozentsatz des verbleibenden
WinEunuuchs2Unix
1

Was ist SWAP:

Swap Space unter Linux wird verwendet, wenn der physische Speicher (RAM) voll ist. Wenn das System mehr Speicherressourcen benötigt und der RAM voll ist, werden inaktive Seiten im Speicher in den Auslagerungsspeicher verschoben. Während Swap Space Computern mit wenig RAM helfen kann, sollte es nicht als Ersatz für mehr RAM betrachtet werden. Der Auslagerungsspeicher befindet sich auf Festplatten, auf die langsamer zugegriffen werden kann als auf den physischen Speicher.

Swap Space kann eine dedizierte Swap-Partition (empfohlen), eine Swap-Datei oder eine Kombination aus Swap-Partitionen und Swap-Dateien sein.

Swap sollte gleich 2x physischem RAM sein.


Vorteile:

Bietet Überlaufspeicher, wenn der Speicher voll ist. Kann selten benötigte Objekte aus dem Hochgeschwindigkeitsspeicher entfernen. Ermöglicht den Ruhezustand

Nachteile:

Benötigt Speicherplatz auf Ihrer Festplatte, da die Größe der SWAP-Partitionen nicht dynamisch geändert wird. Kann den Verschleiß Ihrer Festplatte erhöhen. Verbessert nicht unbedingt die Leistung (siehe unten).


Wenn SWAP-Partitionen "nicht helfen" wie in "im Vergleich zu zusätzlichem Speicher nicht würdig":

Wenn Ihre Festplatte nur 5400 U / min hat und Sie wenig RAM haben, sagen wir> 2 GB. Warum ? Da das System ständig auf die SWAP-Partition zugreifen wollte, wird es mit der Zeit sehr langsam. Obwohl Sie jetzt Speicherplatz im Speicher haben, muss alles in der SWAP-Partition zurückgesetzt werden. Da das System langsam wird, verbleibt allot in der SWAP-Partition. Dies kann nur durch einen Neustart behoben werden. Dies wird ohnehin eine Weile dauern, da das System vor dem Herunterfahren alles von der SWAP-Partition entfernen muss.


** Fazit: **

Wenn Sie Ihren Computer in den Ruhezustand versetzen möchten , sollten Sie über eine SWAP-Partition verfügen. Die Größe dieser Partition sollte der Größe Ihres installierten Speichers und zusätzlich 10-25% entsprechen, um Platz für alle Elemente zu schaffen, die bereits in die SWAP-Partition verschoben wurden.

Wenn Sie nur eine kleine Leistungssteigerung wünschen (und Sie haben mindestens eine Festplatte mit 7200 U / min), können Sie eine SWAP-Partition hinzufügen, die Sie jedoch nicht benötigen, es sei denn, Sie haben weniger als 4 GB installierten Speicher. Die Größe kann beliebig sein. Allerdings empfehle ich 2x das RAM als Pinpoint. WENN Sie genügend Speicherplatz haben.

Wenn Sie eine 5400 U / min-Festplatte haben, sollten Sie keine SWAP-Partition erstellen, nur weil der Engpass Ihren Computer verschlimmert. Wenn Sie jedoch unbedingt SWAP verwenden möchten, können Sie eine Partition nach den oben beschriebenen Richtlinien für die Größe erstellen. Ändern Sie jedoch den Wert für swappiness in einen wesentlich niedrigeren Wert.



Meine Meinung:

Wenn Sie jedoch Ubuntu als Hauptbetriebssystem für den täglichen Gebrauch verwenden, empfehle ich die doppelte Größe des Arbeitsspeichers. Weil Sie Ubuntu nicht installieren, nur weil Sie einen alten Computer haben. Aber weil Sie das System als Ihr Hauptbetriebssystem verwenden möchten.

Kaufen Sie bei Bedarf lieber zusätzliche Hardware, anstatt die Systempartitionen so anzupassen, dass sie weiterhin ausgeführt werden. Wenn Sie ein Spiel kaufen, vergewissern Sie sich auch, dass Ihr System "auf dem neuesten Stand" ist, anstatt die Einstellungen so anzupassen, dass es "spielbar" ist.

Sie können mehr Speicherplatz, SWAP, Geschwindigkeit und Leistung haben, anstatt zu kurz zu sein oder später die Größe zu ändern. Weil Sie SWAP oder Speicherplatz benötigen, RAM gekauft haben? Oder müssen RAM schnell kaufen, weil ein Speichersteckplatz oder Stick kaputt ist.

An0n
quelle
Betreff: Ihre Schlussfolgerung Es macht einfach keinen Sinn, oder anders ausgedrückt: Wo ziehen wir die Grenze? zB RAM 8GB plus 16GB Swap: Was passiert, wenn ich 8GB RAM und 9GB Swap verwende, dann ist immer noch nicht genug Platz für den Ruhezustand. Also was gibt es? Mit anderen Worten, egal welche Größe Sie wählen, Sie können immer noch alles und mehr verwenden. Warum wird der Swap-Datei nicht 2 dedizierte Speicherplätze zugewiesen, 1 als virtueller Speicher und der andere als Ruhezustand, der die Summe oder der andere ist.
NZ Dev
0

Es gibt zwar einen Mehraufwand, der jedoch sehr gering ist; Für jede "Seite" auf der Festplatte gibt es einen Referenzzähler und für jeden Auslagerungsbereich gibt es ein paar Strukturen. Dies ist im Kernel-Speicher, kann also nicht ausgelagert werden. Es liegt je nach Architektur zwischen 2 und 16 MB pro 4 GB. Der Rest ist ziemlich dynamisch und abhängig von der Nutzung.

Sie können also eine Menge davon haben, aber denken Sie daran, dass der ausgelagerte Adressraum selbst einen gewissen Overhead für den Arbeitsspeicher bedeutet. Darüber hinaus wird für ausgelagerte Seiten eine gewisse Nachverfolgung durchgeführt, sodass die Größe nicht sehr hoch ist. Auch wenn der Aufwand beträchtlich ist, sind Dateisysteme bei der Verarbeitung größerer Bereiche weitaus effizienter als die Auslagerungsbereiche, da die vfs strukturelle Informationen auf die Festplatte auslagern können (normalerweise können mindestens Seitentabellen aufgrund von Hardwareeinschränkungen nicht ausgelagert werden) Das vmm verwendet wahrscheinlich nicht austauschbaren Speicher für die gesamte Buchhaltung.

Ich kann mir keinen anderen Nachteil vorstellen. Wenn OTOH zu wenig Auslagerungen aufweist, kann dies beim Auslagern von Seiten zu Fragmentierungen führen. Wenn man viel hat, gibt es nach einem gewissen Punkt auch keine Verbesserungen mehr.

Das Auslagern ist in der Regel eine letzte Ressource (außer dem Ruhezustand). Daher profitieren Sie wahrscheinlich nicht von mehr Auslagerungsspeicher als RAM, insbesondere wenn Sie über 4 GB RAM verfügen und manchmal sogar so groß wie RAM sind (denken Sie an 64 GB). .

Ismael Luceno
quelle
Entschuldigung, Ihre letzte Aussage / Ihr letzter Satz ist verwirrend, ansonsten eine gute Ergänzung zu den oben genannten.
NZ Dev
@NZDev ist es jetzt besser?
Ismael Luceno