J'utilise Windows 7 64 bits avec 8G de RAM. Après quelques utilisations, je sens que Windows commence à ralentir. Le lecteur est en furie. Lorsque je regarde le moniteur de ressources et l'activité du disque, je vois quelques cas d'utilisation du fichier de page (c: \ pagefile.sys). Je vérifie la mémoire physique et je vois environ 2,3G de mémoire disponible et 700 Mo de mémoire libre.
Pourquoi Windows n'utilise-t-il pas plus de mémoire disponible et moins de fichier de page? At-il besoin de laisser une quantité x de bélier gratuit, combien cela ferait-il? Est-ce un pourcentage de bélier physique?
Mon plan est d'obtenir plus de RAM et un SSD pour le lecteur principal. En attendant je souffre de la performance lente.
windows-7
memory
task-manager
resource-monitor
Tony_Henrich
la source
la source
Réponses:
Premièrement, ne placez pas votre fichier de page sur un SSD. Alors que les disques SSD ont amélioré leur niveau d'usure, le fichier d'échange est écrit fréquemment et il dégradera votre disque SSD beaucoup plus rapidement que son utilisation habituelle.
Ce que beaucoup de gens ne comprennent pas, c'est que Windows n'a jamais vraiment de mémoire libre. Quelques Mo sont laissés libres pour répondre aux demandes en rafale, mais sinon, la différence entre la mémoire d'application active en cours d'utilisation et la mémoire totale est généralement consommée par ce que l'on appelle la mémoire de «veille».
Ce sont des pages de mémoire qui peuvent être vidées si nécessaire (la mémoire de réserve est un très gros cache), donc, du point de vue de l'application, elle est disponible, mais elles ne sont en aucun cas non utilisées. Ils fonctionnent généralement comme cache de disque ou comme cache de fichier d'échange.
L'objectif de Windows est de conserver les données les plus susceptibles d'être utilisées dans ce cache de secours, en fonction des modèles d'utilisation. Pour utiliser un exemple artificiel, comparons la valeur relative de la mémoire privée d'un programme tel que Windows Update (généralement configuré pour s'exécuter une fois par semaine), en mettant en cache le contenu de votre bureau dans cette mémoire en attente:
Pendant une bonne majorité du temps, Windows Update est en veille. Cela bloque la mémoire et, pour la plupart, ne fait absolument rien qui lui soit utile en attendant que le calendrier soit respecté. D'autre part, le contenu de votre dossier de bureau peut être interrogé en permanence, surtout si vous souhaitez y enregistrer des fichiers.
Dans ce cas, Windows va supprimer la mémoire allouée à Windows Update (même si la mémoire n’est pas "saturée") et utiliser l’espace disponible dans la RAM pour mettre en cache le contenu de votre bureau. toi.
Windows prend des milliers de ces décisions et gère un cache disque pour des centaines de fichiers constamment écrits par des services d'arrière-plan, tout en essayant de faire contrepoids à la demande en mémoire d'applications actives. Parfois, il y a un problème pendant un moment, et il est possible que nous devions attendre qu'il pille les données en mémoire lorsque nous passons à une application qui dort en arrière-plan depuis un moment. Mais ce que vous devez penser, c’est que si elle avait gardé cette application entièrement en mémoire, combien d’autres applications seraient à leur tour bloquées dans l’attente d’attentes d’écritures et de lectures sur disque, ou seraient elles-mêmes obligées de feuilleter? Et si c'étaient des applications que vous utilisiez entre temps?
Les applications allouent fréquemment des pages de mémoire qui sont très rarement utilisées, telles que le code de démarrage (utilisé une fois et ensuite inutile), le code de fermeture (utilisé une fois et ensuite inutile) ou le code de mise à jour. Il n’est pas pratique de garder tout cela en mémoire lorsque les utilisations sont beaucoup plus importantes. Ainsi, une fois que Windows a identifié les sections de code qui n’ont pas été utilisées pour le fonctionnement actuel d’une application, il place heureusement ces sections dans le fichier d'échange, même si il pourrait techniquement les garder en mémoire.
(Et en fait, en fonction des applications, les systèmes peuvent fréquemment allouer plus de mémoire qu’ils ne l’ont réellement, et s’attendre à ce que la plus grande partie finisse par être paginée. Si vous recherchez une panne de mémoire détaillée, les frais "Commit" ou "Commit" La quantité de mémoire allouée par Windows à diverses applications est déterminée par le fichier d'échange, qui fournit des garanties pour cette mémoire, même si celle-ci ne dispose pas de suffisamment de RAM physique pour la couvrir.)
Je viens de remarquer que vous avez fait une distinction entre mémoire disponible et mémoire libre dans votre question; Je m'excuse si vous vous sentez sermonné et que vous connaissez déjà la différence. Idéalement, la mémoire disponible est toujours égale à 0. Toutefois, bien que la mémoire de secours soit une mémoire pouvant être libérée, elle ne peut pas toujours être libérée rapidement. Si j'essaie d'écrire un fichier de 1 Go sur le disque, Windows va le coller dans un cache de disque en mémoire s'il le peut, puis l'écrire lentement sur le disque dur en arrière-plan. Si une application doit demander 50 Mo de mémoire supplémentaire, mais qu'aucune n'est disponible car ce cache disque énorme est toujours vidé, l'application sera bloquée jusqu'à ce qu'elle soit disponible. Le fait de garder un petit tampon sous la main permet au système de résoudre ce problème avec un délai minimal du point de vue de l'utilisateur.
la source
Cela s'appelle planifier à l'avance.
Écrire des pages de mémoire dans le fichier d'échange lorsqu'il reste encore beaucoup de RAM est une bonne chose. Dès qu'un programme demande plus de mémoire qu'il n'en reste de disponible, le système d'exploitation peut commencer à libérer de l'espace dès que possible. Mieux vaut préparer maintenant que plus tard.
Si le système d'exploitation doit attendre, vous rencontrez un goulot d'étranglement au niveau des performances. Si un programme demande plus de mémoire que ce qui est disponible, vous devez maintenant attendre que le système d'exploitation écrit le bloc de mémoire modifié, puis les libérer.
la source
Il existe un outil pour définir le cache disque par SysInternal.
Vous pouvez le trouver ici:
http://technet.microsoft.com/en-us/sysinternals/bb897561.aspx
la source
Le fichier d'échange est désactivé depuis 7 ans. En fait, c’est la première chose que je fais après une nouvelle installation. Jamais eu de problème avec ça. (En fait, un jeu appelé "titan quest" a effectué un contrôle très stupide au démarrage; j'ai donc créé un fichier d'échange de 4 Mo uniquement pour le rendre heureux et pour le désactiver plus tard). En ce qui concerne la question initiale. Windows utilise notre RAM pour le cache d'E / S de disque. Pour une raison quelconque, le cache disque est tout aussi important pour le code et les données des programmes actifs. Et il n'y a aucun moyen de limiter la taille du cache disque. C'est là, par conception, et nous ne pouvons rien y faire ... Oh, attendez! Nous pouvons! Il suffit de désactiver le fichier d'échange. Vous exécutez des applications gourmandes en mémoire vive? Achetez plus de RAM ou fermez une application avant d'en lancer une autre. Vous pouvez utiliser Process Explorer pour voir la quantité de mémoire utilisée à un moment donné.
la source
Les arguments ( ici et ici ) pour conserver et utiliser le fichier d'échange même s'il y a suffisamment de RAM sont:
Avec le moniteur de ressources Windows, il est possible de voir la quantité de RAM utilisée pour la mise en cache (indiqué par "Veille").
Si vous voyez que votre RAM est réellement utilisée ou en veille, le fichier de page vous est utile. Si la combinaison de vos tâches et de la mémoire RAM disponible est telle qu'une partie importante de la mémoire apparaît inutilisée ("Libre"), je pense qu'il n'est pas nécessaire de broyer le disque dur uniquement par respect pour quelqu'un qui "sait mieux et l'a dit ici ".
la source
Tous ces commentaires et la bonne réponse sont manquants. Désactivez votre fichier de page. Cela ne sert à rien avec 8 Go de RAM, et si vous avez besoin de plus de RAM, achetez-le. assez simple vraiment.
la source