Gibt es eine Möglichkeit (Anwendung), die RAM / Swap-Nutzungsrichtlinie auf Anwendungsebene zu steuern?
Ich habe einige Anwendungen, die ich ständig verwende, und ich möchte, dass sie die ganze Zeit im RAM bleiben. Es gibt auch Anwendungen, die ich nur sehr selten verwende und die möglicherweise bei Bedarf zum Austauschen verwendet werden. Ich weiß, dass standardmäßig konfigurierte Fenster die beste Leistung bringen sollten, aber ich möchte prüfen, ob ich mehr bekommen kann :).
Ich benutze Windows 7.
windows-7
performance
swap
Darqer
quelle
quelle
Antworten:
Ja, es gibt: das Programm ruft die VirtualLock- Funktion auf:
Ich glaube, dass die SetProcessWorkingSetSize- Funktion auch hilfreich sein könnte.
Für diese Leute denken , ich bin ein Ketzer noch was darauf hindeutet , dass dies könnte nützlich sein:
Beachten Sie, dass es möglicherweise gültige Gründe für das Sperren von Seiten im Speicher gibt. Ein gültiger Grund könnte sein, dass der Benutzer einen CD-Brenner ausführt und der CD-Brenner ständig ausblättert und daher einen Pufferunterlauf verursacht, wodurch ein Untersetzer erstellt wird. In diesem Fall ist es gültig, die Speicherpuffer so zu sperren, dass sie nicht ausgelagert werden, auch wenn der Rest des Computers dadurch langsamer wird, da dies immer noch besser ist, als dem Benutzer einen Untersetzer zu geben. Es kann auch andere triftige Gründe geben. Mein Punkt ist, dass es in der Regel nicht empfohlen wird, Seiten im Speicher zu sperren. Es gibt jedoch noch gültige Situationen, und ich glaube nicht, dass das Töten der Idee dem OP hier helfen würde.
Update: Werfen Sie einen Blick auf Process Hacker ‚s
Reduce Working Set
Menüoption.quelle
SetProcessWorkingSetSize
. Das ist ein Weg. Wenn Sie natürlich nicht wissen, was das bedeutet, weil Sie kein Entwickler sind, können Sie natürlich nicht viel tun. Aber es ist immer noch möglich und zu sagen, dass es unmöglich ist, ist immer noch falsch. Es erfordert nur mehr Wissen, als das OP haben könnte.Die einzige Möglichkeit, die ich gefunden habe, besteht darin, die Auslagerungsdatei zu deaktivieren. Es ist jedoch keine perfekte Lösung: Sie erhalten Fehlermeldungen, wenn Sie sich dem RAM-Limit nähern oder dieses überschreiten, und es kann sein, dass Absturzabbilder nicht richtig gespeichert werden. Schalten Sie es also wieder ein, wenn Sie Probleme beheben müssen. Abgesehen davon benutze ich Win7 seit Monaten ohne Probleme ohne Auslagerungsdatei.
Meine Erfahrung: Ich hatte dieses Problem mit einer Klaviersoftware (1 GB RAM-Verbrauch), die nach einer Weile ohne Verwendung in den Swap geworfen würde. Ein paar Stunden später eine Klaviertaste zu spielen, würde zu einem Durcheinander führen, da der Swap nicht schnell genug nachgeladen würde, damit der Sound abgespielt werden kann. (Ich würde dann meinen ganzen Arm auf jeden Schlüssel legen, um ein Nachladen zu erzwingen!)
Wenn RAM ein Problem ist, empfehle ich Ihnen, mehr zu kaufen (z. B. 8 bis 12 GB bei Windows 7 x64). Für RAM-Bewusste ist es ein Glücksfall, reichlich RAM zu haben.
Zuvor sollten Sie jedoch in Betracht ziehen, ein SSD-Laufwerk zu erwerben und Ihren Swap darauf abzulegen. Dies beschleunigt die Wiederherstellung von Auslagerungen erheblich und bietet viele weitere Systemvorteile. RAM bietet keine Vorteile, wenn es nicht verwendet wird.
quelle
Die Verwendung von Auslagerungsdateien hängt von vielen Faktoren ab. Wenn Sie viele Programme verwenden und nicht genug RAM für alle gleichzeitig haben, werden möglicherweise Teile (oder alle) in die Auslagerungsdatei ausgelagert.
Wenn Sie über 4 GB RAM verfügen und etwa 3 GB RAM verfügbar sind, weil Grafikkarten und andere Ressourcenbenutzer Teile der 4 GB blockieren, und Sie theoretisch nur einige Programme verwenden, die nicht viel Arbeitsspeicher benötigen sollte nie eine Auslagerungsdatei benötigen. Windows Vista und Windows 7 sind jedoch in Bezug auf das Austauschen von Programmen auf die Festplatte bekanntermaßen aggressiv.
Früher hatte ich eine Einstellung, die die Auslagerungsrate von Windows 7 reduzierte (Auslagerungsrate ist ein Linux-Begriff, gilt aber auch für Windows. Da es eine Registrierungseinstellung gibt, mit der die Aggressivität des Windows-Auslagerungsprozesses gebändigt werden kann, stimmt Microsoft widerwillig zu, wenn auch in einer bestimmten Hinsicht versteckte Weise), aber ich kann es nicht mehr zu finden scheinen. Auf der Suche danach bin ich hier gelandet. Die beste Alternative zu dieser Einstellung, die ich gefunden habe, besteht darin, sicherzustellen, dass Sie eine Auslagerungsdatei mit fester Größe verwenden (ich wähle 4096-4096 für 32-Bit-Betriebssysteme und 12 GB für 64-Bit-Betriebssysteme, da ich 6 GB System-RAM habe). auf einer dedizierten Partition. Mit einem freien 200-GB-Laufwerk mit 7200 U / min platziere ich alle meine Swap-Partitionen (Windows XP, 7, 7 64-Bit und verschiedene Linuxes) auf diesem Laufwerk. Es scheint für mich zu funktionieren, aber YMMV.
quelle
Erwähnenswert: Wenn Windows feststellt, dass Sie bestimmte Anwendungen häufig verwenden, werden diese Apps mit dem Superfetch im Speicher abgelegt, damit sie schneller geladen werden. Ich glaube, vertraue darauf, dass Windows hier seine Sache macht.
quelle