Question Supprimer un fichier d'échange sur une machine RAM de 8 Go présente-t-il un avantage ou un inconvénient?


J'utilise Windows 7 sur un processeur AMD x64 double cœur avec 8 Go de RAM.

Ai-je même besoin d'un fichier de page?

L'enlever aidera-t-il ou nuira-t-il à la performance?

Cela ferait-il une différence s'il s'agit d'un serveur ou d'un poste de travail?

Windows 7 par rapport à Windows 2008 fait-il une différence avec un fichier de page?


214
2018-06-10 19:50


origine




Réponses:


Version TL; DR: laissez Windows gérer vos paramètres de mémoire / fichier d'échange. Les gens chez MS ont passé une lot plus d'heures de réflexion sur ces questions que la plupart des administrateurs système.

De nombreuses personnes semblent supposer que Windows insère des données dans le fichier d'échange à la demande. EG: quelque chose demande beaucoup de mémoire, et il n’ya pas assez de RAM pour répondre à la demande. Windows commence donc à écrire des données folles de la RAM sur le disque à la dernière minute, afin de libérer de la RAM pour les nouvelles demandes.

Ceci est une erreur. Il se passe plus de choses sous le capot. De manière générale, Windows maintient une magasin de support, ce qui signifie qu’il veut voir tout ce qui est en mémoire également sur le disque quelque part. Désormais, lorsque quelque chose survient et demande beaucoup de mémoire, Windows peut libérer la mémoire vive très rapidement, car ces données sont déjà sur le disque, prêt à être renvoyé dans la RAM si nécessaire. Donc, on peut dire qu'une grande partie de ce qui est dans le fichier d'échange est également en RAM; les données étaient préventivement placé dans le fichier d'échange pour accélérer Nouveau demandes d'allocation de mémoire.

Décrire les mécanismes spécifiques impliqués prendrait plusieurs pages (voir le chapitre 7 de Windows internes, et notez qu'un nouvelle édition sera bientôt disponible), mais il y a quelques bonnes choses à noter. Premièrement, une grande partie de la mémoire vive est intrinsèquement déjà présente sur le disque - code de programme extrait d'un fichier exécutable ou d'une DLL, par exemple. Cela n'a donc pas besoin d'être écrit dans le fichier d'échange; Windows peut simplement garder une trace de l'origine des bits. Deuxièmement, Windows garde la trace des données dans la RAM les plus fréquemment utilisées et efface ainsi de la RAM les données qui ont duré le plus longtemps sans être consultées.

La suppression complète du fichier d'échange peut entraîner davantage de thrash sur le disque. Imaginez un scénario simple dans lequel certaines applications sont lancées et exigent 80% de la RAM existante. Cela forcerait le code exécutable actuel à sortir de la RAM - peut-être même du code du système d'exploitation. Désormais, chaque fois que ces autres applications, ou le système d'exploitation lui-même (!!), ont besoin d'accéder à ces données, le système d'exploitation doit les rechercher à partir du magasin de sauvegarde sur disque, ce qui entraîne beaucoup de problèmes. Parce que sans le fichier d'échange servant de magasin de sauvegarde pour les données transitoires, les seuls éléments pouvant être paginés sont les exécutables et les DLL comportant des magasins de sauvegarde inhérents.

Il existe bien sûr de nombreux scénarios d'utilisation des ressources. Il n'est pas impossible que vous ayez l'un des scénarios dans lesquels il n'y aurait pas d'effets néfastes de la suppression du fichier d'échange, mais ceux-ci sont minoritaires. Dans la plupart des cas, la suppression ou la réduction du fichier d'échange entraînera une réduction des performances dans des scénarios d'utilisation maximale des ressources.

Quelques références:

dmo noté une récente Eric Lippert post ce qui aide à la compréhension de la mémoire virtuelle (bien que moins liée à la question). Je le mets ici parce que je soupçonne que certaines personnes ne chercheront pas d’autres réponses - mais si vous le trouvez précieux, vous devez dmo un vote, alors utilisez le lien pour y arriver!


301
2018-06-10 21:15



Pour Jeff et Joel: ça rime avec "canards" - quux
Sous Solaris, il était / est encore plus impliqué. Le fichier d'échange est reflété dans un disque virtuel, comme tmpfs, de sorte que la mémoire est presque toujours pleine, mais il est apparemment prouvé qu'il s'agit de la stratégie optimale. - Martin Beckett
J'ai longtemps pensé qu'au lieu de permettre à Windows de gérer la taille de mon fichier de page, je devrais le définir sur un montant fixe (par exemple, minimum 2 Go, maximum 2 Go), car sa croissance et sa réduction peuvent entraîner des problèmes de fragmentation. Est-ce une bonne idée ou devrais-je suivre votre première ligne et laisser Windows gérer tout? - John Fouhy
@ Mehrdad: Parce que vous ne voulez pas garder 50% de votre RAM libre. Bien sûr, vous pouvez le faire, mais vous perdriez 50% de la RAM physique que vous pourriez utiliser comme cache de disque pour les données actives. La RAM libre est un signe d’inefficacité, c’est comme des camions FedEx à un dépôt plutôt que sur la route. Cela signifie que vous êtes ne pas transporter autant de marchandises que vous le pouvez parce que vous passez trop de temps à charger et à décharger. - David Schwartz
@ Mehrdad: Le problème est que, sans fichier de page, il y a beaucoup de données qui doit être conservés dans la mémoire vive même s’il n’y aura probablement jamais accès. Considérons, par exemple, toute mémoire allouée par un processus démarré au démarrage du système mais offrant un service qui ne sera pas utilisé pendant des jours. Le système ne peut pas prouver que les données ne seront pas accédées et il n'a pas d'autre emplacement que la RAM pour les conserver. Ainsi, le cache disque se réduit tandis que les données sont conservées dans de la RAM qui n'a pas été utilisée depuis plusieurs jours. - David Schwartz


Eric Lippert a récemment écrit un entrée de blog décrivant comment Windows gère la mémoire. En bref, le modèle de mémoire Windows peut être considéré comme un magasin de disques sur lequel la RAM agit comme un cache améliorant les performances.


80
2018-06-24 19:47





Comme je vois d’autres réponses, je suis le seul à avoir désactivé le fichier de page et ne l’ai jamais regretté. Génial :-)

À la maison et au travail, j'ai Vista 64 bits avec 8 Go de RAM. Le fichier d'échange est désactivé pour les deux. Au travail, il n’ya rien d’inhabituel pour moi à avoir quelques instances de Visual Studio 2008, Virtual PC avec Windows XP, deux instances de SQL Server et Internet Explorer 8 avec de nombreux onglets fonctionnant ensemble. J'atteins rarement 80% de la mémoire.

J'utilise également le sommeil hybride tous les jours (hibernation avec sommeil) sans aucun problème.

J'ai commencé à expérimenter avec Windows XP avec 2 Go de RAM et j'ai vraiment vu la différence. L'exemple classique est celui où les icônes du Panneau de configuration ont cessé de s'afficher l'une après l'autre, mais simultanément. De plus, le temps de démarrage de Firefox / Thunderbird a considérablement augmenté. Tout a commencé à fonctionner immédiatement après avoir cliqué sur quelque chose. Malheureusement, 2 Go était trop petit pour l'utilisation de mes applications (Visual Studio 2008, Virtual PC et SQL Server), je l'ai donc réactivé.

Mais pour le moment, avec 8 Go, je ne veux plus jamais revenir en arrière et activer le fichier de page.

Pour ceux qui parlent de cas extrêmes, prenez celui-ci de l'époque de Windows XP.
Lorsque vous essayez de charger un tableau croisé dynamique volumineux dans Excel à partir d'une requête SQL, Excel 2000 augmente assez rapidement l'utilisation de la mémoire.
Lorsque vous avez désactivé le fichier d'échange, attendez un peu, puis Excel explose et le système efface toute la mémoire qui le suit.
Lorsque le fichier d'échange est activé, vous attendez un certain temps et vous remarquerez que quelque chose ne va pas, vous ne pouvez pratiquement rien faire avec votre système. Votre disque dur fonctionne à merveille et même si vous parvenez à exécuter le Gestionnaire des tâches (après quelques minutes d’attente) et à tuer excel.exe vous devez attendre une minute ou deux jusqu'à ce que le système charge tout le contenu du fichier d'échange.
Comme je l'ai vu plus tard, Excel 2003 gère le même tableau croisé dynamique sans aucun problème avec le fichier d'échange désactivé - il ne s'agissait donc pas d'un "problème de fichier trop volumineux".

Donc, à mon avis, un fichier de page désactivé vous protège même parfois des applications mal écrites.

En bref: si vous connaissez votre utilisation de la mémoire, vous pouvez la désactiver en toute sécurité.

Modifier: Je veux juste ajouter que j'ai installé Windows Vista SP2 sans aucun problème.


47
2018-06-28 21:10



Mon fichier d'échange a été désactivé et je l'ai regretté au moment où j'ai vraiment utilisé ma mémoire. Alors soyez heureux, vous avez plus de mémoire que nécessaire. - Sam
+1, "moi aussi" :-). Même histoire - 8 Go de mémoire, Vista x64, exécution de Visual Studio avec ReSharper + SQL Server Express + IIS + 1 à 2 machines virtuelles (chacune avec 1 500 Mo de mémoire) + plusieurs utilitaires - jamais eu de problème. - Milan Gardian
J'aime la façon dont tout le monde dit: "Microsoft a passé de nombreuses heures à réfléchir à ce problème, alors ne jouez pas avec lui", mais ignorez complètement les expériences du monde réel. Le fichier de pagination est désactivé depuis XP et je ne l’ai jamais regretté. C'est comme si l'ordinateur recevait une injection de génial. - AngryHacker
Il est assez courant de désactiver la pagination sur les serveurs initialisés par iSCSI. La pagination sur le réseau de stockage serait lente. Vous devez vraiment surveiller votre utilisation de la mémoire et rester à l’écart du maximum. - Chris S
-1 Je ne vois aucune référence dans cette réponse. Mon système s'est bloqué car le fichier de page a été désactivé et la mémoire de la réserve paginée est saturée. Pourtant, mon utilisation de mémoire physique n’était que de 2 Go ... - Tom Wijsman


Vous voudrez peut-être effectuer des mesures pour comprendre comment votre propre système utilise la mémoire avant de procéder aux réglages du fichier d'échange. Ou (si vous voulez encore faire des ajustements), avant et après lesdits ajustements.

Perfmon est l'outil pour cela. ne pas Gestionnaire des tâches. Un compteur de clé est Mémoire - Entrée de pages / s. Cela va spécifiquement représenter graphiquement difficile les défauts de page, ceux pour lesquels une lecture à partir du disque est nécessaire avant qu'un processus puisse continuer. Doux défauts de page (qui représentent la majorité des éléments représentés par défaut dans le graphique) Défauts de page / s compteur; Je recommande d'ignorer ce compteur!) Ne sont pas vraiment un problème; ils montrent simplement les éléments lus de la RAM normalement.

Graphique Perfmon http://g.imagehost.org/0383/perfmon-paging.png

Ci-dessus est un exemple de système sans soucis, du point de vue de la mémoire. Très occasionnellement, il se produit un pic de défauts matériels - ceux-ci ne peuvent être évités, car les disques durs sont toujours plus grands que la RAM. Mais le graphique est en grande partie à zéro. Ainsi, le système d’exploitation envoie très rarement la pagination à partir du backing store.

Si vous voyez un Mémoire - Entrée de pages / s graphique qui est beaucoup plus pointu que celui-ci, la bonne réponse est soit de réduire l’utilisation de la mémoire (exécuter moins de programmes), soit d’ajouter de la RAM. La modification de vos paramètres de fichier d'échange ne changera pas le fait que le système demande plus de mémoire que ce dont il dispose réellement.

Un compteur supplémentaire pratique à surveiller est Disque physique - Avg. Longueur de la file d'attente (toutes les instances). Cela montrera l'impact de vos modifications sur l'utilisation du disque lui-même. Un système bien comporté affichera ce compteur en moyenne à 4 ou moins par broche.


34
2018-06-10 21:52



haleter quelqu'un fait même de son mieux pour montrer comment inspecter le fichier d'échange. impressionnant. - cgp
Lien mort à l'image. Besoins résolus. - kinokijuf
Oui, "ImageHost.org est fermé" - Peter Mortensen


J'ai utilisé ma boîte Vista x64 de 8 Go sans fichier de page pendant des années, sans aucun problème.

Des problèmes se sont posés lorsque j'ai vraiment utilisé ma mémoire!

Il y a trois semaines, j'ai commencé à éditer de très gros fichiers image (~ 2 Go) dans Photoshop. Une séance de montage a englouti toute ma mémoire. Problème: Je n'ai pas pu enregistrer mon travail car Photoshop a besoin de plus de mémoire pour enregistrer le fichier!

Et comme c'était Photoshop lui-même, qui consommait toute la mémoire, je ne pouvais même pas libérer de la mémoire en fermant des programmes (eh bien, oui, mais c'était trop peu pour être utile).

Tout ce que je pouvais faire était de supprimer mon travail, d’activer mon fichier de page et de refaire tout mon travail - j’ai perdu beaucoup de travail à cause de cela et je ne peux pas vous recommander de désactiver votre fichier de page.

Oui, cela fonctionnera très bien la plupart du temps. Mais au moment où ça casse, ça risque d'être douloureux.


34
2017-07-22 09:43



vous devriez économiser plus souvent: D afin de minimiser les dommages - alexandrul
facile à dire, lorsque la sauvegarde prend plusieurs minutes, il s’agit d’un pita. - Sam
Nous sommes tous en sécurité si vous utilisez un logiciel plus complexe, mais parfois, un "crash" s'aligne sur "Oh merde, je n'ai pas enregistré depuis un moment". - Damon


Bien que les réponses ici couvrent assez bien le sujet, je recommanderai quand même cette lecture:

http://blogs.technet.com/markrussinovich/archive/2008/11/17/3155406.aspx

Il parle de la taille de PF presque à la fin:

Certains pensent que le fait de ne pas avoir de fichier de pagination entraîne de meilleures performances, mais en général, un fichier de pagination signifie que Windows peut écrire des pages sur la liste modifiée (qui représentent des pages auxquelles l'utilisateur n'a pas accédé activement mais qui n'ont pas été enregistrées sur le disque). fichier de pagination, rendant ainsi cette mémoire disponible à des fins plus utiles (processus ou cache de fichiers). Ainsi, bien que certaines charges de travail fonctionnent mieux sans fichier de pagination, généralement, cela signifie que le système disposera de plus de mémoire utilisable (peu importe que Windows ne puisse pas écrire de dumps sur les pannes du noyau sans un fichier de pagination de grande taille. assez pour les tenir).

J'aime beaucoup les articles de Mark.


19
2018-06-29 00:42



+1, simple pour le lien Mark Russinovich. Il est intéressant de noter que win7 affiche même une notification indiquant que vous ne pourrez pas "suivre les problèmes du système" si vous désactivez le fichier d'échange. - cgp


La meilleure réponse à laquelle je puisse penser est que, sous une charge normale, vous ne pouvez pas utiliser les 8 Go, mais ce sont les charges inattendues qui vous posent problème.

Avec un fichier de page, le système fonctionnera au moins lentement une fois qu’il commencera à frapper la page. Mais si vous supprimez le fichier de page, il mourra (de ce que je sais).

De plus, 8 Go semble beaucoup maintenant, mais dans quelques années, cela pourrait être considéré comme la quantité de mémoire minimale requise pour de nombreux logiciels.

Quoi qu'il en soit, je vous recommande de conserver au moins un petit fichier de page; mais d'autres s'il vous plaît corrigez-moi si je suis hors de la base.


13
2018-06-10 19:56



J'irais un peu plus loin et ne pas plafonner le fichier de page. Ce n'est pas vraiment améliorer les choses. Laissez les fenêtres le faire ... elles le savent mieux. - Michael Haren
J'ai juste essayé d'utiliser Media Player Classic pour charger un fichier mkv de 6 Go. Il m'a sorti de ma mémoire vive et de ma pagefile. Je suis retourné à VLC assez rapidement. +1 pour le "vous ne savez jamais ce que vous allez rencontrer". MPC est finalement tombé en panne et ma mémoire vive a été restaurée, mais que se passe-t-il si une DLL d'un logiciel tiers contient une fuite de mémoire? Vous aurez beaucoup plus de kilométrage si vous avez une mémoire sauvegardée sur disque pour vous aider. - mpbloch
De plus, à quoi sert-il d'avoir 8 Go si vous devez vivre dans la peur constante de l'utiliser?! - David Schwartz
Le "garder au moins un petit fichier d'échange" me semble un peu bizarre, car on ne sait pas comment Windows va l'utiliser. Par exemple, il est possible que cela blesse encore plus qu'un fichier page plus volumineux qui offre plus d'espace - je suppose, mais tant qu'il n'y a pas de source fiable à ce sujet, je considérerais que le petit conseil pagefile est potentiellement dangereux et recommande plutôt une pratique standard. - mafu