Pourquoi dwm.exe utilise-t-il autant de mémoire?

25

J'ai parcouru le Web, mais j'en ai marre de lire "analyser votre ordinateur pour les virus" et "mettre à niveau votre RAM" sur les réponses à des questions similaires à cela. Je comprends que dwm.exe est pour (simplement mettre) des bitmaps de mise en cache pour des choses comme Aero-peek et similaires, mais pour autant que j'ai lu, il ne devrait pas utiliser de grandes quantités de mémoire.

Mon collègue et moi avons tous les deux 4 Go de RAM, Core 2 Duo, bla, bla - essentiellement, ils sont assez capables. Son dwm.exe tourne à environ 30 Mo, le mien tourne actuellement à environ un demi-concert, bien qu'il fluctue beaucoup. C'est la même chose lors de l'exécution des mêmes applications (actuellement Zend studio, FireFox (avec firemin - faible utilisation de mémoire), Outlook). De temps en temps, je recevrai une notification me demandant si je veux passer à Aero Basic car il utilise trop de mémoire, et parfois il se passera simplement à la base et me fera savoir pourquoi.

Je sais qu'il est possible de l'arrêter de changer, mais je veux savoir pourquoi il utilise trop de mémoire, sinon c'est juste du papier sur les fissures.

Une chose à ajouter est que cela semble avoir commencé après un vol lundi, où deux de mes moniteurs ont été volés, et j'ai dû utiliser temporairement quelques moniteurs alternatifs. J'utilise maintenant de nouveaux moniteurs mais le problème est le même. Tous les pilotes installés et fonctionnent apparemment bien.

Des idées pourquoi l'utilisation est si élevée?

Nous utilisons Windows 7 64 bits Professional.

Leonard Challis
la source
Pouvez-vous obtenir des indices de Proccess Monitor?
jmreicha
Quel type d'informations considérez-vous comme un indice dans Process Monitor? Désolé, je ne l'ai pas beaucoup utilisé.
Leonard Challis
1
Vous pouvez approfondir les processus et voir à quoi, le cas échéant, d'autres processus avec lesquels il parle.
jmreicha
dwm.exe ne semble pas réellement apparaître dans procmon ...?
Leonard Challis
Ouais, ProcMon peut être un peu poilu. Que diriez-vous de l'outil sysinternals Process Explorer? Pouvez-vous trouver des indices avec ça peut-être?
jmreicha

Réponses:

24

Le DWM.EXEprocessus consommera beaucoup de mémoire lorsque vous avez plusieurs écrans et que les performances du système sont définies par défaut sur Laisser Windows choisir ce qui convient le mieux à mon ordinateur . Pour changer cela:

  1. Allez dans Ordinateur -> Clic droit et choisissez Propriétés
  2. Sélectionnez l' onglet Avancé
  3. Sélectionnez le bouton Paramètres sous la section Performances . Cela fera apparaître la fenêtre Options de performances
  4. Sur le premier onglet se trouve Effets visuels . Sélectionnez Adjust for best performanceou Custom(et sélectionnez la ou les fonctions souhaitées).

Je Customme suis choisi et sélectionné uniquement Smooth edges of fontspour réduire l'utilisation de la mémoire de 534M à 6M avec 4 fenêtres en cours d'exécution.

Wallfodder
la source
2
Eh bien, si vous n'activez pas le DWM, il n'utilisera pas de mémoire bien sûr;)
Joey
1
Ce n'est pas toute la réponse. J'ai la meilleure apparence définie dans les paramètres, et dwm.exe prend généralement 80 à 100 Mo de mémoire, mais récemment, il a commencé à augmenter sporadiquement jusqu'à 1300 Mo de RAM. Si je termine le processus, il redémarre automatiquement avec 80 Mo normaux (et le style Aero s'applique immédiatement à nouveau, donc ce n'est pas comme si le redémarrage tue les effets visuels).
Violet Giraffe
1
Merci, cela a rendu mon ordinateur beaucoup plus rapide, en particulier dans Eclipse. Notez qu'il désactive «Aero» et ses effets de fenêtre transparente, etc.
pjc50
J'ai d'abord essayé le conseil de computerhope.com/issues/ch001182.htm pour passer du style Aero (par défaut?) Au thème de base Win - et cette utilisation réduite (mais pas assez pour moi). Ensuite, j'ai essayé ce correctif et cela semble vraiment avoir aidé.
Lars Nordin
@ pjc50 J'ai récemment commencé à utiliser Eclipse et j'ai remarqué que dwm.exe prenait beaucoup plus de mémoire que d'habitude. Peut-être qu'Eclipse ne fonctionne pas bien avec Aero?
Nicholas Pickering
6

Comme je ne peux pas encore commenter, je vais ajouter ceci comme réponse supplémentaire. Microsoft a confirmé une fuite de mémoire dans DWM.EXE: https://support.microsoft.com/en-us/kb/3078667

En bref, DWM.EXE perd de la mémoire lorsque les fenêtres d'état sont ouvertes pendant longtemps.

Alexandr Zarubkin
la source
1

Essayez de redémarrer le service dwm:

  1. Appuyez sur Win+ ret tapez services.msc .
  2. Recherchez Desktop Window Manager Session Manager .
  3. Cliquez sur Redémarrer le service et voyez si cela le corrige.

Ou si vous souhaitez vous débarrasser du processus tous ensemble, cliquez simplement sur Arrêter .

je suis l'homme
la source
D'après ce que je comprends, le redémarrage de l'ordinateur aurait le même effet que le redémarrage de DWM. Et l'arrêt de DWM serait-il une bonne idée, étant donné que c'est nécessaire?
Leonard Challis
Techniquement oui, mais ici, lisez ceci pour voir si cela aide: howtogeek.com/howto/windows-vista/…
imtheman
1
Je ne vois pas du tout comment cela aide. Notez que je ne recommande pas de désactiver cette option sauf si vous jouez à des jeux en mode plein écran, et même alors, cela n'aidera probablement pas à augmenter la vitesse. pour commencer, et j'ai en effet déjà lu cette page (j'ai fait Google avant de poster cette question). J'ai également dit que je sais qu'il est possible d'arrêter la commutation, mais je veux savoir pourquoi il utilise trop de mémoire, sinon c'est juste du papier sur les fissures. et cela n'aide pas du tout.
Leonard Challis
À partir de Windows 7, il est impossible d'arrêter DWM (donc le service n'apparaît pas dans services.msc)
marijnr
0

Une autre astuce pour accélérer est de maintenir le windows keyet appuyez sur r, tapez msconfiget appuyez enter, cliquez sur boot tab> advanced optionspuis cochez mark number of processorspuis cliquez sur la flèche vers le bas et sélectionnez le nombre maximum de cœurs 2 est le duo 4 est quad hit ok.
Cochez le journal de démarrage et les informations de démarrage du système d'exploitation, puis dans le clic droit make all boot changes permanentet assurez-vous que rien d'autre n'est ouvert et appuyez sur applypuis redémarrez.
La plupart des ordinateurs Microsoft Windows n'utilisent qu'un seul cœur par défaut les paramètres de démarrage. Cela fonctionne à coup sûr sur Windows 8 et 8.1. Je ne l'ai essayé sur rien avant cela.
Bonne chance :)

Mante
la source
cela ne semble vraiment pas une bonne idée de jouer avec cette option - en particulier votre commentaire "La plupart des ordinateurs Microsoft Windows n'utilisent qu'un seul cœur par défaut les paramètres de démarrage." !!
Simon