70 votes

Comment puis-je trouver ce qui consomme toute la mémoire de mon système ? (pas SuperFetch)

Comment diagnostiquer/découvrir les problèmes liés à la mémoire, si le gestionnaire de tâches semble ne pas rapporter correctement ?

Je dois avoir une fuite de mémoire ou quelque chose du genre - je suis à 75% d'utilisation de mes 12 Go de mémoire, mais les listes d'utilisation de mémoire des processus dans le gestionnaire de tâches ne s'additionnent pas (oui, "Afficher les processus de tous les utilisateurs" est coché).

Il semble que cette utilisation de la mémoire "fantôme" augmente en fonction de la durée de fonctionnement du système. Il montre qu'il y a 118 processus au total. En dehors des 5 premiers, ils sont tous inférieurs à 50 Mo.

Le processus le plus important est firefox, qui utilise 2,6 Go. Adobe Premiere à 900 Mo. Plugin-container à 300 Mo. Pale Moon : 275 Mo. Explorer.exe avec 94 Mo.

Comment puis-je trouver ce qui occupe le reste de ma mémoire ? On dirait que le Gestionnaire des tâches ne voit pas tout ce qui est utilisé. Peut-être y a-t-il une sorte de fuite de mémoire ? Ou les programmes ne libèrent pas correctement la mémoire utilisée ?

Rapports de Resource Monitor (cliquez pour une version plus grande) :

Resource Monitor Printout

NOTE :

  1. Comme mon disque d'OS principal est un SSD, SuperFetch est désactivé sur mon système.
  2. Et je comprends le principe selon lequel la ram inutilisée est une ram "gaspillée", pour ainsi dire. Cependant, lorsque je vois que ma mémoire est presque utilisée au maximum de sa capacité, cela m'empêche d'exécuter/de charger d'autres programmes (de mon propre chef), et m'envoie même à la tâche de fermer de nombreux programmes (avec à peine un effet sur la diminution de l'utilisation de la mémoire, du moins de façon notable et dans un court laps de temps).
  3. Lorsque la mémoire se remplit, je déteste voir le fichier de page de 1 Go sur mon SSD s'étendre jusqu'à la limite de 6 Go que j'ai fixée, et je "transpire" en sachant que mon "pauvre" SSD est probablement en train d'être réduit en poussière alors que Windows l'utilise comme une carte mémoire à part entière. (Sur cette note, devrais-je simplement plafonner le fichier de la page à 1 Go statique ?)

65voto

diegogs Points 624

Vous pouvez généralement avoir une meilleure idée de ce qui utilise votre mémoire avec des outils comme les suivants RamMap .

enter image description here cliquez pour agrandir

Souvent, la mémoire peut être utilisée par des fichiers mappés en mémoire qui ont été tirés vers la RAM pour augmenter les performances.

Prenez note de la Actif dans RamMap. Il s'agit de la mémoire qui est actuellement utilisée. Les indicateurs concernant gratis La mémoire peut souvent être trompeuse. Cela inclut les outils Windows comme le Gestionnaire des tâches.

Plus d'informations


Je voulais également aborder quelques points supplémentaires de votre question.

Cependant, lorsque je vois que ma mémoire est presque utilisée au maximum de sa capacité, il m'empêche de lancer/charger d'autres programmes (de mon propre chef), et m'envoie même à la tâche de fermer de nombreux programmes (avec à peine un effet sur la diminution de l'utilisation de la mémoire, du moins de façon notable et dans un court laps de temps).

Votre raisonnement est parfait. Mais, à moins que vous ne rencontriez des problèmes dus à des situations de mémoire insuffisante, vous devriez vous abstenir de cette pratique. Le système d'exploitation doit se charger de cette tâche et évacuer les données vers le fichier de pagination lorsque la mémoire physique est requise.

Il est également possible que vous utilisiez le mauvais indicateur pour votre pratique. Vous voulez avoir un œil sur votre commit Chargement ( Explorateur de processus terminologie).

enter image description here

La charge commit est la somme de toute la mémoire utilisée. Vous pouvez voir dans la capture d'écran qu'il y a aussi une limite. Cette limite est la taille de ma mémoire physique + la taille de mon fichier de pagination. Si cette limite était atteinte, ce serait un problème.

Ce qui nous amène à notre prochain sujet.

Lorsque la mémoire se remplit, je déteste voir le fichier de page de 1 Go sur mon SSD s'étendre jusqu'à la limite de 6 Go que j'ai fixée, et je "transpire" en sachant que mon "pauvre" SSD est probablement en train d'être réduit en poussière alors que Windows l'utilise comme une carte mémoire à part entière. (Sur cette note, devrais-je simplement plafonner le fichier de la page à 1 Go).

A mon avis, il y a plusieurs choses qui ne vont pas ici. En général, il est fortement déconseillé de fixer des limites à la taille du fichier de pagination. Mark Russinovich explique cela dans les vidéos dont j'ai donné le lien ci-dessus (bien mieux que je ne pourrais jamais le faire).

Seules de mauvaises choses peuvent en découler. Que doit faire Windows lorsqu'il a besoin de vider plus de 6 Go de données dans le fichier de pagination alors que vous l'avez plafonné à 6 Go ? Ce est un problème majeur.

Laissez Windows gérer le fichier de pagination. La seule chose que je vous conseille fortement de faire, c'est de déplacer le fichier de pagination hors de votre SSD. Tom Wijsman l'explique parfaitement dans son billet de blog Maximiser la durée de vie de votre SSD que je vous recommande de lire.

3voto

Dragan Nikolic Points 141

Dans mon cas, la raison de l'utilisation élevée de la mémoire était une machine virtuelle hyper-v pour laquelle j'avais activé les paramètres de mémoire dynamique pour la RAM.

RamMap m'a aidé à localiser la cause première.

D'abord, j'ai remarqué dans RamMap que le conducteur bloqué a consommé plus que 29GB de mon 32GB RAM. Ensuite, j'ai trouvé un article qui expliquait que l'utilisation élevée de la mémoire par le pilote verrouillé peut être causée par le HyperV Mémoire dynamique activée, et je viens de le confirmer.

2voto

Vadzim Points 1200

RAMMap a montré que C:\Windows\SoftwareDistribution\DataStore\DataStore.edb Le fichier mappé gaspillait 400 Mb de mes précieux 4 Go de RAM.

De plus, Windows Update ralentissait constamment le système lors de la mise à jour de cet énorme fichier.

C'est peut-être un problème commun à de nombreux PC bas de gamme.

Siehe PC Boots écrit alors un fichier datastore.edb géant qui ralentit l'ordinateur. pour une éventuelle résolution.

0voto

tiki Points 64

Si vous voyez que le snap n'affiche pas tous les processus et que le processus affiché lui-même prend 5,8 Go de mémoire, le snap affiché montre qu'il y a beaucoup de programmes de fond inutiles en cours d'exécution. En utilisant msconfig, supprimez les programmes de démarrage inutiles et augmentez également votre mémoire virtuelle (1,5 fois votre mémoire physique).

0voto

Willy2 Points 25

Vous pouvez essayer RAMMAP de Sysinternal, mais il affiche l'utilisation de la mémoire d'une manière différente de celle du gestionnaire de tâches et du gestionnaire de ressources et n'est donc pas très utile.

Le gestionnaire de tâches et le moniteur de ressources n'affichent pas le cache de fichiers ni sa taille. Il fait partie de la partie "en cours d'utilisation" de la mémoire (voir Resource Monitor). Le cache des fichiers peut atteindre une taille TRES importante, surtout lorsque l'ordinateur fonctionne pendant des heures. L'utilisation globale de la mémoire d'un programme augmente au fil du temps, en raison de la croissance du cache de fichiers et des fuites de mémoire. Certains programmes ont tout simplement une mauvaise gestion de la mémoire.

Une façon de minimiser l'utilisation de la mémoire est de réduire le nombre de processus. (Pourquoi 118 processus fonctionnent-ils ? Pourquoi avez-vous plusieurs instances d'Explorer.exe en cours d'exécution ?)

Il existe un programme qui vous aide à réduire régulièrement l'utilisation de la mémoire et à réduire régulièrement le cache des fichiers. (CLEANMEM de PcWinTech). En réduisant l'utilisation de la mémoire de cette façon, Windows réduit ou même élimine le besoin d'écrire des données de la mémoire vers le fichier d'échange (sur votre SSD). Ainsi, cela augmente la durée de vie de votre SSD. La réduction de l'utilisation de la mémoire rend également plus de mémoire "Standby" disponible, permettant à Windows de précharger plus de fichiers dans la mémoire Standby, accélérant ainsi votre système.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X