Sie beziehen sich ohne Zweifel auf "Pushing the Limits of Windows: Virtueller Speicher" von Mark Russinovich.
- Ja, das ist die Nummer.
- Ja, Sie haben nur 2,5 GB RAM zur Verfügung (ungefähr - hier ist keine übermäßige Genauigkeit erforderlich).
Sie schreiben jedoch von "es richtig machen". Ich muss darauf hinweisen, dass in Marks Artikel "die Grenzen überschritten werden", und diese Formel gibt Ihnen ein absolutes Minimum an Seitengröße. Wenn Sie möchten, dass Ihr System eine gute Leistung bringt, möchten Sie nicht an die Grenzen gehen.
In diesem Artikel gibt es keine Empfehlung, die besagt, dass Sie die Einstellungen so klein machen sollten . Nur, dass Sie damit durchkommen können, wenn Sie wirklich wollen. (Angenommen, Sie brauchen nie mehr festgeschriebenes Gedächtnis.)
(Möglicherweise benötigen Sie mehr. Denken Sie daran, dass dieser "Peak", den Sie hier gesehen haben, nur der Peak für die Dauer des Process Explorer-Laufs ist. Dies ist nur dann von Bedeutung, wenn Sie während dieser Zeit Ihre maximale App-Auslastung ausführen. Das bedeutet nicht nur, dass Sie alle Apps starten, von denen Sie glauben, dass Sie sie auf einmal ausführen werden. Sie müssen auch jede App dazu bringen, den maximalen privaten Speicher ("festgeschriebenen" Speicher) zu nutzen, den Sie jemals danach fragen werden Schwierig einzurichten und zu testen. Und wer sagt, dass Sie nie eine andere App zu Ihrer typischen Arbeitslast hinzufügen werden? Die Informationen, die Sie mit den Überwachungstools erhalten, sind daher nicht mit der Garantie verbunden, dass Sie niemals mehr benötigen.)
Wenn Sie tatsächlich diesen Peak erneut erreichen und die Auslagerungsdatei auf die von Ihnen so berechnete Min eingestellt ist, ist kein Platz im RAM für RAM vorhanden, der von zugeordneten Dateien verwendet wird - beispielsweise Codedateien wie Exes und DLLs . (Dies liegt daran, dass die Anzahl der "festgeschriebenen" virtuellen Speicher keine Codepages oder andere Seiten enthält, die durch zugeordnete Dateien gesichert werden.) Da sich Code im RAM befinden muss, um ausgeführt zu werden, ist dies ein Problem.
OK, da Sie die Auslagerungsdateierweiterung aktivieren, ist dies kein "Showstopper" -Problem. Aber es wird sicherlich ein Performance-Hit.
Wenn Sie also nicht aus irgendeinem akademischen Grund versuchen, die absolute Mindestgröße der Auslagerungsdatei zu demonstrieren, die unabhängig von Leistungsproblemen nicht zu App-Abstürzen führt, würde ich das nicht so machen. (Ich kann mir keinen praktischen Grund dafür vorstellen.)
Wenn Sie die Dinge wirklich auf ein praktisches Minimum reduzieren möchten, dh, ohne den für Code verfügbaren RAM einzuschränken, setzen Sie die minimale Größe der Auslagerungsdatei auf die festgelegte maximale Commit-Gebühr. Dies bedeutet, dass auch dann noch RAM für Code zur Verfügung steht, wenn Apps und das Betriebssystem so viel zugesicherten Speicher erstellt haben (und auf alles verwiesen haben).
Es gibt auch keinen Grund, die maximale Größe auf nur 2x zu begrenzen, es sei denn, Sie sind sehr besorgt über die Festplattennutzung.
Sie sehen, es schadet nicht (außer der Speicherplatzbelegung), dass eine Auslagerungsdatei größer ist, als das System jemals benötigen wird. Insbesondere eine größere Auslagerungsdatei als nötig "zieht" nicht mehr Paging an. Und es gibt keinen Vorteil, es nur gerade groß genug zu machen (anders als der Speicherplatz). Wieso sich die Mühe machen? Sie "optimieren" also nichts außer dem von dieser Übung belegten Speicherplatz.
Angesichts der Tatsache, dass das Überschreiten des Festschreibungslimits zu App-Abstürzen (und damit zu Datenverlust) und in seltenen Fällen sogar zu Systemabstürzen führen kann, wäre ich bei weitem nicht daran interessiert, meine Auslagerungsdatei so klein wie möglich zu machen.
Auf der anderen Seite, wenn das System in die Auslagerungsdatei eine Menge schreiben muss - und auf einem Windows 7-System mit nur 2,5 GB Arbeitsspeicher nutzbar ist, kann ich mir vorstellen, dass es eine Auslagerungsdatei sein wird, die erheblich größer ist, als das System jemals verwenden wird beschleunige die Dinge Warum? Da der für die Auslagerungsdatei verwendete Speicherzuweisungsalgorithmus viel schneller sein kann, wenn viel Speicherplatz frei ist.
Aus diesem Grund möchte ich, dass der PerfMon-Zähler für die Verwendung von Pagefile% unter 25 Prozent bleibt.