it-swarm.com.de

Wie groß ist eine Swap-Partition im Ruhezustand?

Ich habe diese Frage gelesen, aber es beantwortet meine Frage nicht definitiv.

Wenn ich möchte, dass mein Computer in den Ruhezustand versetzt wird, muss ich eine Swap-Partition haben, die so groß ist wie mein RAM, oder Ubuntu kann klugerweise in den Ruhezustand versetzt werden, wenn die Swap-Partition in die aktuelle passt -in-Use RAM? Ich bin dabei, Ubuntu auf einem Computer mit viel RAM und einer relativ kleinen Festplatte zu installieren, daher möchte ich nicht mehr Festplattenspeicher als nötig nutzen.

Ich wollte es vermeiden, meine tatsächlichen Spezifikationen anzugeben, um diese Frage allgemeiner zu halten, aber ich werde sie bei Bedarf angeben.

11
Closure Cowboy

Es ist schwer vorherzusagen: Ihr Swap muss Platz bieten

  • was ist bereits im Swap, wenn Sie im Ruhezustand sind
  • was ist in RAM, wenn Sie in den Ruhezustand versetzt werden, aber nur der Teil, der weder Festplatten-Cache noch Puffer ist? Das RAM Bild wird komprimiert, wenn Sie uswsusp verwenden.
  • ein paar kernel datenstrukturen

Sie können also auch dann nicht in den Ruhezustand wechseln, wenn Ihr Swap größer als Ihr RAM ist, da der größte Teil Ihres Swap bereits verwendet wird. Außerdem können Sie mit einem Swap, der kleiner als der Arbeitsspeicher ist, erfolgreich in den Ruhezustand wechseln, wenn Sie zu diesem Zeitpunkt nicht viel davon verwenden.

Wenn Sie eine Auslagerungspartition mit fester Größe vermeiden möchten, weil Ihre Festplatte sehr klein ist, können Sie stattdessen eine Auslagerungsdatei auswählen. Es ist einfacher, die Größe zu ändern, und der Ruhezustand in eine Auslagerungsdatei soll unterstützt werden (nicht sicher, ob es derzeit aus der Box heraus funktioniert, das ist zwischen Ubuntu-Versionen hin und her gegangen; IIRC tat es in 9.10, aber es musste sein) eingerichtet in 10.1 ).

9
Gilles

Diese Frage taucht weiterhin in allgemeinen Abfragen auf, wenn die Größe von Swap geändert wird, um den Ruhezustand einzurichten. Die ursprüngliche Antwort ist insofern richtig, als sie je nach Arbeitsbelastung sehr unterschiedlich ausfallen kann, aber ich glaube nicht, dass dies eine vollständige Antwort ist.

Die vollständige Antwort lautet, dass Sie anhand Ihrer spezifischen Arbeitsbelastung feststellen können, wie viel Sie benötigen, und dann die Größe entsprechend anpassen können.

Das grundlegende Tool sind die Kernelmeldungen im Ruhezustand. Sie möchten sehen, wie viel Speicher mit diesem Befehl belegt wurde:

Sudo cat /var/log/syslog | grep 'PM:'|grep kbytes

Sie sollten eine Ausgabe wie folgt erhalten:

Aug 14 11:03:20 mike-XPS-15-9570 kernel: [17594.823584] PM: Allocated 11809876 kbytes in 2.65 seconds (4456.55 MB/s)
Aug 14 11:03:20 mike-XPS-15-9570 kernel: [17605.365657] PM: Wrote 11787284 kbytes in 9.09 seconds (1296.73 MB/s)

Dann besteht die Strategie darin, die maximale Auslastung auszuführen und einen Ruhezustand auszulösen, festzustellen, welcher Auslagerungsspeicher erforderlich war, möglicherweise eine Sicherheitsmarge hinzuzufügen und dann den Auslagerungsspeicher auf diese Größe zu bringen.

2
Mike Hardy