Muss ich Swap löschen, um meinen Computer wieder schnell zu machen?

1

Ich habe einen Prozess ausgeführt, der zum größten Teil meinen gesamten RAM und meinen gesamten Swap verbraucht hat ... Ich musste den Prozess beenden, aber jetzt sehe ich etwas Seltsames. Meine Swap-Auslastung ist ein wenig zurückgegangen, aber sie wird immer noch zur Hälfte genutzt, während sich mein RAM im Zustand befindet Überhaupt kaum genutzt ... Tatsächlich wird viel mehr Swap verwendet als RAM, und obwohl die RAM-Auslastung niedrig ist, ist mein Computer sehr langsam und ich gehe davon aus, dass dies immer noch mit den Swap-Ebenen zusammenhängt hoch sein? Wenn ja, wie lösche ich meinen Swap, wenn dies nicht automatisch geschieht? Oder was mache ich? Ich habe mir diese Frage bereits angeschaut , es scheint nicht nur um Swap zu gehen und ich möchte den RAM nicht beeinflussen, daher wäre eine Lösung das Löschen von Swap, sondern nur Swap ...

Als dies das letzte Mal passierte, musste ich meinen Computer neu starten, aber ich musste es tun. Ich verwende Ubuntu GNOME 15.10 mit GNOME 3.18.


quelle
Mögliches Duplikat von Wie kann ich den Speichercache bereinigen oder deaktivieren?
Sergiy Kolodyazhnyy
@ Serg, kein Duplikat .. zumindest diese Frage.
Psusi

Antworten:

6

Sobald Daten ausgetauscht werden, ist es normal, dass sie dort verbleiben, auch wenn der Speicher wieder frei wird. Es ist eine gute Sache und es besteht kein Grund zur Sorge.

Da der Festplattenzugriff erheblich langsamer als der Arbeitsspeicher ist, vermeidet Ihr System das Ein- und Auslagern von Daten, wenn es dies nicht für die Systemleistung oder -stabilität für erforderlich hält. Der Datenaustausch wird also nur dann durchgeführt, wenn auf dem System nicht genügend freier Speicherplatz vorhanden ist oder der Festplatten-Cache stark beansprucht wird, und Ihr System entscheidet, dass sich der zeitaufwändige Prozess des Datenaustauschs mit einer höheren oder höheren Auslastung auszahlt danach zuverlässige Systemleistung.

Das Übertragen von Daten aus dem Swap ist (zumindest für herkömmliche Festplatten) genauso zeitaufwendig wie das Einspielen. Daher wird Ihr System nur ungern Daten aus dem Swap entfernen, wenn diese nicht tatsächlich verwendet werden. Wenn Sie Daten in Swap haben und diese nicht verwendet werden, ist es eigentlich eine gute Sache, dass sie in Swap bleiben, da mehr freier Speicher für andere Dinge übrig bleibt, die verwendet werden, was möglicherweise Ihr System beschleunigt.

Der beste Weg, das Auslagern vollständig zu vermeiden, ist, mehr physischen Arbeitsspeicher zu kaufen, wenn dies möglich ist. Wenn es ausgetauscht wird, bietet Ihnen Ihr System die bestmögliche Leistung mit der Größe des physischen Speichers, über den es verfügt.

Wenn Sie sich jedoch sicher sind, dass das Ereignis mit geringem Arbeitsspeicher und hohem Cache, das den Auslagerungsvorgang ausgelöst hat, nicht erneut auftritt und es Ihnen nichts ausmacht, zu warten, können Sie das System zwingen, alle Auslagerungsdaten freizugeben mit den folgenden Befehlen.

sudo swapoff -a
sudo swapon -a

Dadurch wird der Swap deaktiviert und wieder aktiviert, wodurch Daten aus dem Swap entfernt werden. Wie bereits erläutert, gibt es wahrscheinlich keinen wirklichen Grund, dies zu tun - abgesehen von Neugier oder der Frage, wie Ihr Swap funktioniert.

thomasrutter
quelle
Also, wenn mein Swap zu 90% ausgelastet ist und mein RAM zu 10% ... Warum wird mein Computer unglaublich langsam?
Zwei Möglichkeiten. Eine davon ist, dass die Langsamkeit nichts damit zu tun hat, was ich für richtig halte. Ein weiteres Problem ist, dass bei jedem Ereignis, bei dem alle Daten ausgetauscht wurden, so viel Druck auf den verfügbaren Speicher ausgeübt wurde, dass Ihr System gezwungen war, aktivere Daten auszutauschen, um das Beenden von Prozessen zu vermeiden. Dies wird jetzt zurückgetauscht, da dies der Fall ist erforderlich. Diese Langsamkeit würde allerdings nur kurze Zeit anhalten, wenn dies der Fall ist, und sie kann immer noch auf ein Ereignis zurückgeführt werden, bei dem der gesamte Arbeitsspeicher in Anspruch genommen wurde.
Thomasrutter
Ich bin mir sicher, dass es damit zusammenhängt, weil ich einige Tests durchgeführt habe und mein Computer immer in Ordnung und schnell ist, außer wenn ich Swap nutze und mehr Swap benutzt wird, je langsamer es wird ... und es scheint so lange zu dauern, bis ich meinen Computer neu starte machine and Swap ist gelöscht, also ist es ziemlich seltsam, gibt es keine Möglichkeit, dies weiter zu analysieren oder zu sehen, was tatsächlich vor sich geht?
Stellen Sie sich die Auslagerungsnutzung als Reaktion Ihres Systems auf das Problem und nicht als Ursache vor. Die Hauptursache ist das speicher- oder cacheintensive Ereignis, das das Auslagern verursacht hat (Sie haben nicht viele Informationen dazu angegeben). Korrigieren Sie das, oder holen Sie sich mehr physischen Arbeitsspeicher. Um zu sehen, wie sich Ihr System ohne Swap verhalten würde, deaktivieren Sie Swap und führen Sie den Problemprozess erneut aus. Unter der Annahme, dass es dasselbe tut, stürzt es möglicherweise früher ab, und wenn dies nicht der Fall ist, wird es möglicherweise genauso oder langsamer.
Thomasrutter
Ich habe einen Befehl ausgeführt, der eine große Anzahl von bchat. Als er dann nicht mehr reagierte und meinen gesamten Arbeitsspeicher und einen Großteil meines Swap-Speichers verbrauchte, habe ich ihn beendet Swap-Nutzung.
2

Die Langsamkeit klärt sich schnell von selbst auf, da die ausgelagerten Daten bei Bedarf wieder eingehen. Es wird nicht wieder ausgetauscht, solange Sie über ausreichend freien Arbeitsspeicher verfügen. Viele andere Daten, auf die Sie nicht zugegriffen haben, verbleiben jedoch möglicherweise im Austausch und warten darauf, dass Sie sie tatsächlich erneut benötigen.

Psusi
quelle
0

Wenn Sie eine schnelle CPU haben, versuchen Sie es mit Zram .

Sie können darüber im Detail lesen Sie hier .

Sirajus Salekin
quelle
0

Das Löschen von Swap würde nichts für die Langsamkeit Ihres Computers bewirken und muss nicht ausgeführt werden, es sei denn, Sie glauben, dass ein fehlerhaftes Programm vertrauliche Daten (z. B. Kennwörter) im austauschbaren Speicher gespeichert hat, die möglicherweise auf der Swap-Partition geendet haben. Wenn Sie potenziell vertrauliche Daten nicht aus dem Swap löschen müssen, müssen Sie den Swap niemals manuell bereinigen oder formatieren, wenn er funktioniert.

Der wahrscheinlichste Grund dafür, dass sich Ihr System langsam anfühlt, ist, dass das RAM des Systems fast aufgebraucht ist. Dies kann auch dann der Fall sein, wenn der Systemmonitor anzeigt, dass auf dem System noch Speicher verfügbar ist, da der Speicherbedarf häufig sporadisch ist und der Speicher möglicherweise nur für weniger als eine Sekunde benötigt wird und in keinem langsam aktualisierenden Systemmonitor angezeigt wird.

Am einfachsten ist es, ein Terminal zu öffnen und den Befehl auszuführen sudo vmstat -SM 10(möglicherweise müssen Sie die Installation vmstatzuerst ausführen sudo apt install vmstat):

Die Ausgabe sieht ungefähr so ​​aus (alle 10 Sekunden erscheint eine neue Zeile):

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 2  0      0   1609   6565  13230    0    0    88   195   17  178 44 10 45  1  0
 1  0      0   1599   6565  13232    0    0     0   226 4621 18688 22  6 72  0  0
 4  0      0   1566   6565  13234    0    0     0    67 5217 20819 27  7 65  1  0
 2  0      0   1533   6566  13241    0    0     0   847 6021 23359 35  6 58  0  0

Die Felder, die Sie überwachen möchten, sind swap siund sodas heißt, die Anzahl der Megabytes in einem Zeitraum von 10 Sekunden, die eingelagert (vom Swap-Gerät in den Arbeitsspeicher) oder ausgelagert werden . Normalerweise sospielt dies keine Rolle für die Systemgeschwindigkeit, siführt jedoch zu Langsamkeit und wird dadurch verursacht, dass das System über zu wenig RAM für die Prozesse verfügt, die Sie parallel ausführen möchten. Mögliche Lösungen sind: (1) Schließen einer oder mehrerer von Ihnen verwendeter Anwendungen oder (2) Erhalten von mehr physischem RAM.

Drücken Sie Ctrl+ Czum Verlassen vmstat.

Beachten Sie, dass vmstates nicht möglich ist, festzustellen, ob das System für kurze Zeit in die Nähe des freien Speichers von Null geht free, buffund cachegroße Zahlen haben kann, selbst wenn der Speicher langsam ist. sarist wahrscheinlich das einzige Programm, das mit Sicherheit feststellen kann, ob der Speicher voll ist, aber das Programm ist ziemlich schwer zu konfigurieren (nicht unmöglich - installieren Sie es einfach und beginnen Sie mit man sar).

Mikko Rantalainen
quelle