Windows Swap (Auslagerungsdatei): Aktivieren oder Deaktivieren?

28

Aus eigener Erfahrung habe ich festgestellt, dass das Deaktivieren der Auslagerungsdatei in Windows XP mir im Allgemeinen den größten Geschwindigkeitsgewinn bei allen anderen Softwareänderungen verschafft, die ich vornehmen kann. Dies muss natürlich gemacht werden, wenn eine erhebliche Menge an RAM verfügbar ist. Normalerweise finde ich, dass es gut mit + 2 GB RAM funktioniert. Die einzigen Probleme, die ich jemals hatte, waren das Laden von Adobe Photoshop.

Ist das wirklich eine Geschwindigkeitsverbesserung oder stelle ich es mir vor?

Hinweis: Um es tatsächlich auszuschalten, müssen Sie es nicht nur auf 0 MB einstellen, sondern deaktivieren. Andernfalls wird Windows es nur erweitern, wenn es benötigt wird, um seine Anforderungen zu erfüllen.

Joe Phillips
quelle
9
Achtung: Den Treibern steht nur eine begrenzte Menge an Speicher zur Verfügung, die als non-pagedund pagedPool- Speicherabschnitte bezeichnet wird. Eine Auslagerungsdatei ist erforderlich, wenn der ausgelagerte Bereich voll ist. Als Spieler habe ich ein Spiel gesehen, das sich über ausgelagerten Poolspeicher beschwert, nur weil ich meine Auslagerungsdatei auf einem 8-GB-System deaktiviert hatte. Fazit: Auslagerungsdateien sind erforderlich, sie verhindern die Erschöpfung des ausgelagerten Pools und beschleunigen Ihr System tatsächlich .
Tamara Wijsman

Antworten:

18

Windows XP spült minimierte Anwendungen wie verrückt auf die Festplatte. Probieren Sie es selbst aus, laden Sie einen großen Torrent herunter und minimieren Sie alles. Ziemlich bald wird fast der gesamte Arbeitsspeicher als Dateicache für den Torrent anstelle Ihrer anderen Anwendungen verwendet. Durch Deaktivieren der Auslagerungsdatei wird dieses Verhalten verhindert.

In Windows Vista und Windows 7 kann das System dieses Szenario jedoch viel besser handhaben. Daher bin ich mir nicht sicher, ob das Deaktivieren der Auslagerungsdatei in diesen Versionen einen großen Unterschied bewirken wird.

Bei einigen Spielen muss eine Auslagerungsdatei vorhanden sein, auch wenn diese nicht wirklich benötigt wird. Dies ist mir kürzlich beim Versuch aufgefallen, eine von Steam heruntergeladene Spieledemo zu spielen. Obwohl ich 6 GB RAM zur Verfügung hatte, weigerte sich das Spiel zu starten, bis ich eine winzige, winzige Auslagerungsdatei erstellte. Seufz

Persönlich, wenn ich viel RAM habe, verzichte ich lieber auf eine Auslagerungsdatei.

Zidar
quelle
Seit ich diese Frage gestellt habe, habe ich auf eine Auslagerungsdatei für WinXP verzichtet und es war großartig. Ich habe es unter Win7 noch nicht wirklich ausprobiert, daher kann ich nicht sagen, ob es sich für neuere Windows-Versionen lohnt oder nicht.
Joe Phillips
Ich habe es auf Win7 ausprobiert und hatte keine großartige Erfahrung. Da SSDs nicht verfügbar sind, ist es sinnvoll, nur eine
Joe Phillips
Eine Auslagerungsdatei zu haben oder nicht, hat nichts direkt mit dem Cache-Verhalten von Dateien zu tun.
Jamie Hanrahan
25

Leg dich nicht damit an, lass Windows es selbst herausfinden.

Diese ServerFault-Antwort ist die beste Erklärung dafür, warum:

Viele Leute scheinen anzunehmen, dass Windows Daten bei Bedarf in die Auslagerungsdatei pusht. ZB: Etwas braucht viel Speicher und es ist nicht genug RAM vorhanden, um diesen Bedarf zu decken. Daher beginnt Windows in letzter Minute damit, Daten vom RAM auf die Festplatte zu schreiben, um RAM für die neuen Anforderungen freizugeben.

Das ist falsch.

Die Pointe:

Wenn Sie die Auslagerungsdatei vollständig entfernen, kann dies zu einer weiteren Überlastung der Festplatte führen.

Factor Mystic
quelle
12
Wie würde das Entfernen der Auslagerungsdatei JEGLICHE Datenträgerbeschädigung verursachen? Wenn überhaupt, sollte es aufhören zu krachen. Windows gibt einen Fehler aus, wenn der Arbeitsspeicher knapp wird - es wird sich nicht dafür entscheiden, Swap zu verwenden, wenn es deaktiviert wurde.
Joe Phillips
2
d03boy, lies den SF Beitrag. Wenn Sie den aktiven Prozessspeicher aus dem RAM verschieben müssen, führt dies zu VIEL mehr Festplattenaktivität.
Factor Mystic
3
@ d03boy: Die Antwort ist im verlinkten Beitrag. Wenn Sie zu viel RAM verwenden, wird die Festplatte in gewisser Weise verwendet. Wenn Sie die Auslagerungsdatei entfernen, wird die Festplatte möglicherweise weiterhin zum Speichern des Programmcodes verwendet (einfach nach Bedarf aus den Originaldateien lesen), wenn mehr RAM zugewiesen werden muss.
Sean
1
@Factor, Windows gibt einfach eine Fehlermeldung aus, wenn zu viel physischer Arbeitsspeicher verwendet wird. Es wird nichts aus RAM AFAIK @Darth bewegen, der verknüpfte Beitrag lässt es so klingen, als ob es das tut, egal ob das Paging aktiviert oder deaktiviert ist
Joe Phillips
2
Dies gilt jedoch nicht für Windows XP. Windows XP verfügt über eine fürchterliche Speicherverwaltung. Lies meine Antwort.
Zidar
7

von Microsoft Antwort "Auslagerungsdatei deaktivieren"

http://social.answers.microsoft.com/Forums/en-US/w7performance/thread/0bd8a75c-2607-4468-8342-c35ea82ea670

Ken Blake, Microsoft MVP

Gibt es daraus einen Leistungsgewinn? Danke.

Können Sie? Ja. Solltest du? Nein, definitiv nicht.

Gibt es einen Leistungsgewinn, wenn Sie das tun? Nein, und es besteht die Möglichkeit eines Leistungsverlusts.

Erstens sind 2 GB nicht viel RAM, sondern die Mindestmenge , über die die meisten Benutzer verfügen sollten.

Zweitens, wenn Sie keine Auslagerungsdatei haben, können Sie nicht den gesamten verfügbaren RAM verwenden. Dies liegt daran, dass Windows virtuellen Speicher vorbelegt, um einen möglichen Bedarf zu erkennen, auch wenn der zugewiesene Speicher niemals verwendet wird. Ohne eine Auslagerungsdatei muss diese Zuordnung im realen Speicher erfolgen, wodurch dieser Speicher gebunden und für keinen Zweck verwendet werden kann.

Drittens ist es niemals vorteilhaft, keine Auslagerungsdatei zu haben. Wenn es nicht benötigt wird, wird es nicht verwendet. Verwechseln Sie den zugewiesenen Speicher nicht mit dem verwendeten Speicher.

Ken Blake, Microsoft MVP (Windows Desktop Experience) seit 2003 Ken Blake

miki
quelle
Was ist mit Prügeln? Gibt es weniger HD-Nutzung, wenn es deaktiviert ist? Dies scheint nicht die ganze Antwort zu sein. Ganz zu schweigen davon, dass es sich bei dieser Frage um XP und bei dieser Antwort um Win7 handelt
Joe Phillips
Ich glaube nicht, dass MVP korrekt ist, da Sie die Auslagerungsdatei bei ausreichendem Speicher deaktivieren können. Achte nur darauf, dass dir nicht der Speicher ausgeht.
Tamara Wijsman
1
@JoePhilllips - Nein, wenn Datenspeicher + Programmspeicher den Systemspeicher ohne Auslagerungsdatei überschreitet, wird der für Programme verfügbare Speicherplatz reduziert, um Platz für Daten zu schaffen, da Programme immer wieder aus den ursprünglichen Programmdateien abgerufen werden können. Wenn Sie also über 8 GB Speicher, 6 GB Daten und 4 GB Anwendungen verfügen, verfügt Ihr Betriebssystem nur über 2 GB, die Sie mit diesen 4 GB Programmen gemeinsam nutzen können. Es würde ständig Code einlesen und die Festplatte zertrümmern. Wenn tatsächlich nur 4 GB Daten benötigt würden und Sie 2 GB Auslagerungsdatei hätten, in die Sie den Rest einlagern könnten, könnte das Betriebssystem die anderen 4 GB für die Programme verwenden, also kein Thrashing!
Mark Booth
6

Ich würde sagen aktivieren .

Egal wie viel RAM Sie haben, es wird Szenarien geben, in denen eine Auslagerungsdatei zumindest nützlich ist. Außerdem sollte beachtet werden, dass bei einer Auslagerungsdatei ein Großteil der Windows-Laufzeit für die meiste Zeit dort abgelegt wird. Der Grund? Während es im Speicher benötigt wird, wird es im Moment nicht benötigt . Das Einfügen in die Auslagerungsdatei kann bedeuten, dass der Zugriff länger dauert, für die aktuell verwendeten Programme bleibt jedoch mehr RAM frei.

Der Grund, warum Sie die Leistung gesteigert haben, ist, dass Sie das gesamte System gezwungen haben, in den Arbeitsspeicher zu laden, was zugegebenermaßen viel schneller ist. Ich vermute jedoch, dass diese Verbesserung sofort eintritt, wenn Sie eine Reihe von Programmen gleichzeitig verwenden, insbesondere speicherintensive Programme wie Firefox und Photoshop. *

Es ist jedoch möglich, dass Sie dieses Problem nicht allein aufgrund Ihrer Computergewohnheiten finden. Ich weiß, wenn ich versuchen würde, die Auslagerungsdatei auszuschalten, würde es mir kein bisschen Spaß machen. Wenn Sie es also wirklich wollen, lassen Sie es eine Weile ausgeschaltet und sehen Sie, was passiert. Sie können es später jederzeit wieder einschalten.

* "Dieser Absatz war eine Menge Spekulation" / Haftungsausschluss;)

Sean
quelle
Ich habe jetzt 4 GB RAM, seitdem ich kürzlich aktualisiert habe (obwohl WinXP nur ungefähr 3.5 sieht) und ich habe die Auslagerungsdatei für ein paar Monate ohne irgendwelche Probleme und nur einen oder zwei Neustarts ausgeschaltet. Bisher verwende ich ziemlich schwere Programme (einschließlich Photoshop) ohne Probleme.
Joe Phillips
In diesem Fall können Sie meinen Rat ignorieren und das tun, was für Sie richtig zu sein scheint. Obwohl Factor Mystics Post ein viel besseres Argument für die gleiche Schlussfolgerung hat, sollten Sie zumindest daran denken, was er sagt;)
Sean
Vielleicht werde ich es wieder einschalten und sehen, ob es hilft. Ich kann mir einfach nicht vorstellen, dass es gut für meine Festplatte ist, ständig zu tauschen.
Joe Phillips
5

Ich würde sagen, aktivieren, aber verschieben Sie es auf ein zweites Laufwerk, vorzugsweise ein Laufwerk, das nicht von einem anderen E / A-Schwein verwendet wird. Das hat mich oft schneller gemacht, als die Auslagerungsdatei komplett zu deaktivieren. Das Maximieren des Arbeitsspeichers ist natürlich eine gute parallele Optimierung.

Romandas
quelle
1
Stellen Sie in diesem Fall sicher, dass Sie die Auslagerungsdatei auf ein anderes physisches Gerät verschieben. Das Verschieben auf eine andere Partition auf demselben Gerät ist Zeitverschwendung, es sei denn, Sie verfügen über eine industrietaugliche Festplatte (wie SCSI).
Paweł Polewicz
3

Ich deaktiviere die Auslagerungsdatei auf 32-Bit-Windows-Systemen mit 4 GB physischem Speicher. Wenn der virtuelle Speicher aktiviert ist, werden dem System keine weiteren Adressen hinzugefügt, und wenn er deaktiviert ist, muss ich nie darauf warten, dass Windows ein- oder auslagert.

kquinn
quelle
6
Welche Timing-Tests haben Sie durchgeführt und unter welchen Belastungen?
Michael Kohne
2
Keine harten Daten == noch subjektive Anekdote
Romandas
4
Natürlich ist es eine subjektive Anekdote - habe ich jemals etwas anderes behauptet? Ich bin mir nicht sicher, warum Leute nach Timing-Daten fragen: Ich führe keine Server unter Windows aus (es sei denn, ich muss!), Ich führe meinen persönlichen Desktop und meinen Spielcomputer darauf aus. Und für eine solche Maschine ist subjektive Reaktion alles, was zählt.
kquinn
1
Und Sie haben nie mehr als einen Prozess ausgeführt, nehme ich an? Selbst auf einem 32-Bit-System können zu einem bestimmten Zeitpunkt mehr als 4 GB physischer Arbeitsspeicher zugewiesen werden. Sie können einem einzelnen Prozess sogar mehr als 4 GB RAM zuweisen, indem Sie die APIs für den virtuellen Speicher verwenden, um Abschnitte Ihres Adressraums neu zuzuordnen.
Eclipse
1
Meinten Sie, dass mehr als 4 GB virtueller Arbeitsspeicher zugewiesen werden können? Wenn der gesamte physische Arbeitsspeicher aufgebraucht ist, werden Paging-Fehler von der MMU angezeigt, die zum Auslagern führen. Da keine Auslagerungsdatei vorhanden ist, werden alle DLL- / EXE-Daten, die ausgelagert wurden, ausgetauscht. Bei einer Auslagerungsdatei ist dies alles, was in die Auslagerungsdatei geschrieben wurde.
JBRWilkinson
3

Ich deaktiviere die Auslagerungsdatei auf 32-Bit-Windows-Systemen mit 4 GB physischem Speicher. Wenn der virtuelle Speicher aktiviert ist, werden dem System keine weiteren Adressen hinzugefügt, und wenn er deaktiviert ist, muss ich nie darauf warten, dass Windows ein- oder auslagert.

Nein. Der Adressraum ist wie folgt: Jeder PROCESS verfügt über einen eigenen 31-Bit-Adressraum (unter 2 GB) und der Kernel über einen eigenen 31-Bit-Adressraum (immer derselbe, unabhängig davon, welcher Prozess den aktuellen Thread besitzt). Dies gibt Ihnen 2 GB * Anzahl von Prozessen des verfügbaren Adressraums im Benutzermodus. Ohne einen Swap ist der Benutzermodus auf die physische Speichergröße abzüglich der Kernelspeichergröße (normalerweise ca. 200 MB) beschränkt. Natürlich kann es eine künstliche Beschränkung geben, wie viel virtuellen Speicher Ihr System zuordnen kann, aber ich bin kein Experte für die Lizenzrichtlinien von Microsoft.

Beachten Sie außerdem, dass das Deaktivieren von Swap nicht unbedingt bedeutet, dass keine Seitenfehler vorliegen, die zu einem Datenträgerzugriff führen. Die Auslagerungsdatei ist nicht die einzige Datei, der Speicher zugeordnet ist. Jede ausführbare Datei (d. H. Exe oder dll, mit Ausnahme der Kernelmodustreiber) verfügt über eine eigene Festplattensicherung, nämlich die exe-Datei. Natürlich benötigen Seiten, die im Arbeitsspeicher geändert wurden, wie z. B. beschreibbare Datensegmente, IAT oder sogar Codesegmente (z. B. bei gepackten ausführbaren Dateien), ein separates Swap-Backing, aber einen Großteil des Codes / der statischen Daten / Ressourcen brauche keinen Swap und ... kann aus dem Speicher entfernt werden, wenn das System wenig Ressourcen hat. Wenn der Prozess Zugriff auf solche Daten benötigt, treten Seitenfehler und Festplattenzugriff auf, unabhängig davon, ob der Austausch aktiviert ist oder nicht.

kmode MZ
quelle
2

Sean Nyman sagte zuvor: "Besonders speicherintensive Programme wie Firefox und Ihr Photoshop werden diese Verbesserung sofort in Angriff nehmen."

Ich wollte das nur in Firefox hinzufügen. Wenn Sie about:configin die Adressleiste tippen , um zu den erweiterten Einstellungen in Firefox zu gelangen, können Sie eine neue Zeichenfolge hinzufügen browser.cache.disk.enableund den booleschen Wert auf setzen. Dadurch falsewird Firefox gezwungen, nur im RAM zu speichern. Sie können die Zeichenfolge auch hinzufügen browser.cache.disk.capacityund einen Wert angeben, um zu steuern, wie viel Speicherplatz in RAM Firefox für den Browser-Cache verwendet wird. Ich hoffe das hilft. Ich habe meinen Cache auf RAM eingestellt und Firefox ist immer super schnell.

Ich habe auch ein SSD-Laufwerk für das Systemlaufwerk in diesem Laptop, mit einem 500-GB-Rotationslaufwerk im sekundären Schacht für die Speicherung, und ich habe die Ordner TMP, TEMP und Temporäre Internetdateien so eingestellt, dass sie auf das Rotationslaufwerk in Windows 7 Pro verweisen. zusammen mit dem Verschieben meiner pagefile.sys auf meinen Drehantrieb auf D: und mein System arbeitet sehr schnell wie ein Blitz. Ich habe sowieso 4 GB RAM, also denke ich, dass Windows 7 die Auslagerungsdatei nicht oft verwendet, aber was schadet es, wenn es eingeschaltet bleibt?

ojosch
quelle
Egal wie viel Speicher Sie haben, Windows verwendet die Auslagerungsdatei aus irgendeinem Grund gern
Joe Phillips
0

Das Deaktivieren der Auslagerungsdatei ist möglicherweise die dramatischste Verbesserung, mit der Sie die Leistung Ihres Computers steigern können. Im typischen Szenario verwenden die meisten Laptops physische Magnetfestplatten mit beweglichen Teilen. Diese Laufwerke sind im Vergleich zur Speichergeschwindigkeit Ihres Computers sehr langsam. Wenn Sie also den RAM haben, der Windows dazu zwingt, "innerhalb seiner Möglichkeiten" zu bleiben und niemals auf die Festplatte zu schreiben, verlangsamt sich dies nur, wenn die Festplatte nach einer Datei durchsucht werden muss, die sich noch nicht im Speicher befindet. Alles im Speicher wird deutlich schneller ausgeführt. Die Idee ist, das gesamte Betriebssystem zwischenzuspeichern, sodass es nur dann auf eine physische Festplatte schreibt oder diese liest, wenn etwas benötigt wird, das sich noch nicht im Arbeitsspeicher befindet.

RAM-Lese- / Schreibvorgänge erfolgen in Nanosekunden gegenüber Millisekunden auf physischen Magnetplatten.

Zu berücksichtigen ist nun, dass es jetzt neue Optionen für Auslagerungsdateien gibt, die praktisch werden. Wenn Sie eine Solid-State-Festplatte verwenden oder Windows zum Speichern der Auslagerungsdatei auf einer SD-Karte verwenden, werden Sie auch erhebliche Leistungssteigerungen feststellen.

Nur meine 0,02 $

Axxmasterr
quelle
3
Das Deaktivieren von Swap bedeutet nicht, dass alles im Speicher bleibt. Es bedeutet, dass das, was aus dem Speicher herausgespült wird, von seinem ursprünglichen Speicherort auf der Festplatte zurückgelesen werden muss, wenn es benötigt wird. Dies bedeutet, dass Ihr System langsamer ist. Siehe den SF-Beitrag, den ich in meiner Antwort verlinke.
Factor Mystic
3
Genau deswegen optimieren Sie es so, dass es nie auf die Festplatte kommen muss. Ich habe das schon einmal gemacht und es funktioniert.
Axxmasterr