2012-06-17 11:40:44 +0000 2012-06-17 11:40:44 +0000
64
64

Comment trouver ce qui ronge toute la mémoire de mon système ? (pas SuperFetch)

Comment diagnostiquer/découvrir des problèmes de mémoire si le gestionnaire de tâches ne semble pas faire ses rapports correctement ?

Je dois avoir une fuite de mémoire ou quelque chose comme ça - j'utilise 75% de mes 12 Go de mémoire, mais la liste des gestionnaires de tâches concernant l'utilisation de la mémoire des processus ne s'additionne pas (oui, “Show processes from all users” est coché).

Il semble que cette utilisation de mémoire “fantôme” augmente en fonction de la durée de fonctionnement du système. Elle montre qu'il y a 118 processus au total. Outre les 5 premiers, tous sont 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 à 94 Mo.

Comment puis-je trouver ce qui occupe le reste de ma mémoire ? Il semble que le gestionnaire de 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 du moniteur de ressources (cliquez pour agrandir) :

NOTE :

  1. Comme mon disque dur principal est un SSD, SuperFetch est désactivé sur mon système.
  2. Et je comprends le principe que le RAM inutilisé est un RAM “gaspillé”, pour ainsi dire. Cependant, quand je vois que ma mémoire est presque utilisée au maximum de sa capacité, cela m'empêche d'exécuter/charger les programmes suivants (de mon propre chef), et m'envoie même à la tâche pour en fermer beaucoup (avec peu d'effet sur la diminution de l'utilisation de la mémoire, au 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 1 Go de pages de mon SSD s'étendre jusqu'à la limite de 6 Go que j'ai fixée, et je “transpire” en sachant que mon “pauvre” SSD risque d'être réduit en poussière, car Windows se tourne massivement/rapidement vers son utilisation comme une véritable clé USB. (À ce propos, devrais-je me contenter d'enregistrer le fichier de la page sur un disque dur statique de 1 Go ?)

Réponses (5)

60
60
60
2012-06-17 12:17:17 +0000

Normalerweise können Sie mit Tools wie RamMap einen besseren Einblick in den Speicherverbrauch gewinnen.

click to enlarge

Häufig kann der Speicher durch Memory-Mapping-Dateien aufgebraucht werden, die zur Leistungssteigerung in den RAM gezogen wurden.

Beachten Sie die Spalte Active in RamMap. Das ist der Speicher, der gegenwärtig tatsächlich genutzt wird. Indikatoren für freien Speicher können oft irreführend sein. Dazu gehören Windows-Tools wie Task Manager.

Weitere Informationen


Ich wollte auch einige zusätzliche Punkte aus Ihrer Frage ansprechen.

Wenn ich jedoch sehe, dass meine Speicherauslastung fast bis zur Spitzenkapazität ausgelastet ist, hindert mich das daran, nachfolgende Programme (aus eigener Sorge) auszuführen/zu laden, und schickt mich sogar an die Aufgabe, viele zu schließen (mit kaum Auswirkungen auf die Verringerung der Speicherauslastung, zumindest merklich und innerhalb kurzer Zeit).

Ihre Argumentation ist vollkommen in Ordnung. Aber wenn Sie keine Probleme aufgrund von Situationen mit geringer Speicherauslastung haben, sollten Sie von dieser Praxis Abstand nehmen. Das Betriebssystem sollte diese Aufgabe übernehmen und Daten in die Auslagerungsdatei spülen, wenn physischer Speicher benötigt wird.

Möglicherweise verwenden Sie auch den falschen Indikator für Ihre Praxis. Sie wollen Ihre Commit Charge Terminologie des Process Explorer ) im Auge behalten.

Die Commit Charge ist die Summe des gesamten verwendeten Speichers. Wie Sie auf dem Screenshot sehen können, gibt es auch ein Limit dafür. Dieses Limit ist die Größe meines physischen Speichers + die Größe meiner Auslagerungsdatei.

Wenn der Speicher voll ist, hasse ich es zu sehen, wie sich die 1-GB-Auslagerungsdatei auf meiner SSD auf die von mir festgelegte 6-GB-Grenze ausdehnt, und ich “schwitze” mit dem Wissen, dass meine “arme” SSD wahrscheinlich zu Staub zermahlen wird, wenn Windows sich stark/schnell daran gewöhnt, sie als vollwertigen Speicherstick zu verwenden. (In diesem Sinne: Soll ich die Seitendatei einfach auf 1 GB begrenzen?)

Meiner Meinung nach sind hier mehrere Dinge falsch. Generell sollte dringend davon abgeraten werden, die Größe der Auslagerungsdatei zu begrenzen. Mark Russinovich erklärt dies in den Videos, die ich oben verlinkt habe (viel besser als ich es je könnte).

Daraus können nur schlechte Dinge entstehen. Was soll Windows tun, wenn es mehr als 6 GB Daten in die Auslagerungsdatei spülen muss, Sie aber die Auslagerungsdatei auf 6 GB begrenzt haben? **Das ist ein großes Problem.

Überlassen Sie Windows die Auslagerungsdatei. Das einzige, wozu ich Ihnen dringend raten würde, ist, die Auslagerungsdatei von Ihrer SSD zu entfernen. Tom Wijsman erklärt dies hervorragend in seinem Blogbeitrag Maximierung der Lebensdauer Ihrer SSD , den ich Ihnen zum Lesen empfehle.

2
2
2
2018-03-09 11:52:05 +0000

Dans mon cas, la raison de la forte utilisation 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é à en trouver la cause.

Tout d'abord, j'ai remarqué dans RamMap que Driver Locked consommait plus de 29 Go sur mes 32 Go de RAM. Ensuite, j'ai trouvé un article qui expliquait que l'utilisation élevée de mémoire de Driver Locked peut être causée par la mémoire dynamique HyperV activée, et je viens de le confirmer.

0
0
0
2015-02-19 07:39:14 +0000

RAMMap a montré que C:\Windows\SoftwareDistribution\DataStore\DataStore.edb fichier mappé gaspillait 400 Mo de ma précieuse RAM de 4 Go.

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

Cela peut être un problème courant pour de nombreux PC bas de gamme.

Voir PC Boots écrit ensuite un fichier datastore.edb géant ralentissant l'ordinateur pour une résolution éventuelle.

0
0
0
2014-05-04 05:05:49 +0000

Vous pouvez essayer le RAMMAP de Sysinternal mais il montre l'utilisation de la mémoire d'une manière différente que le Task Manager & Resource Manager et n'est donc pas très utile.

Task Manager & Resource Monitor ne montrent pas le cache et sa taille. Ils font partie de la partie “en cours d'utilisation” de la mémoire (voir le moniteur de ressources). Le cache de fichiers peut atteindre une taille TRES importante, surtout si l'on laisse l'ordinateur fonctionner pendant des heures. L'utilisation globale de la mémoire du programme augmente au fil du temps, en raison de la croissance du cache de fichiers et des fuites de mémoire. Certains programmes ont 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 sont-ils 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). Cette réduction de l'utilisation de la mémoire permet également de réduire, voire d'éliminer, la nécessité pour Windows d'écrire des données de la mémoire dans 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 permet également de disposer de plus de mémoire “de secours”, ce qui permet à Windows de précharger davantage de fichiers dans la mémoire de secours, accélérant ainsi votre système.

0
0
0
2012-06-17 13:15:52 +0000

Si vous voyez que l'instantané n'affiche pas tout le processus et que le processus affiché lui-même prend 5,8 Go de mémoire, cela montre qu'il y a beaucoup de programmes d'arrière-plan inutiles en cours d'exécution. L'utilisation de msconfig permet de supprimer les programmes de démarrage inutiles et d'augmenter votre mémoire virtuelle (1,5 fois votre mémoire physique).