![Warum ist Linux-Swap so langsam?](https://rvso.com/image/1567515/Warum%20ist%20Linux-Swap%20so%20langsam%3F.png)
Ich bin Softwareentwickler und verbrauche ab und zu versehentlich den gesamten verfügbaren RAM mit einem meiner Programme. Das Betriebssystem tauscht dann alles andere aus, was ich gerade verwende (z. B. Webbrowser, Entwicklungs-IDE, Audioplayer usw.). Nachdem ich es geschafft habe, mein fehlerhaftes Programm zu beenden, ist andere Software, die auf meinem Computer läuft, für einige Minuten nahezu unbrauchbar und wird nicht von selbst zurückgetauscht, ohne dass ich die Software tatsächlich verwende (und nach jedem Klick viele Sekunden warte). Ich kann einfach sudo swapoff -a
alle Speicherseiten zurück in den RAM zwingen, aber das dauert überraschend lange. Ich kann die Swap-Nutzung mit dem free
Befehl überwachen. Der Swap wird mit etwa 1–2 MB/s geleert – wenn ich ihn free
alle paar Sekunden ausführe, zeigt sich nur ein einstelliger Unterschied, und der gesamte Vorgang kann einige Minuten dauern.
Mein System ist ziemlich neu und ich habe gerade die Festplatte getestet, auf der die Swap-Partition gespeichert ist. cpipe
Das Lesen einer 7 GB großen Datei dauert durchschnittlich etwa 150–160 MB/s. Warum wird die Swap-Partition nicht mit ähnlicher Geschwindigkeit zurück in den RAM verschoben?
Kann ich etwas tun, um es schneller zu machen?
$ uname -r
4.15.0-29-generic
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.5 LTS
Release: 16.04
Codename: xenial