为什么dwm.exe使用那么多内存?


25

我已经在网上搜索过,但是我讨厌阅读“扫描您的计算机中的病毒”和“升级您的RAM”等类似问题的答案。我知道dwm.exe是用于(简单地说)为Aero-peek之类的东西缓存位图的,但是据我所读,它不应该使用大量的内存。

我和我的同事都有4GB的RAM,Core 2 Duo,等等,等等-本质上来说,他们的能力相当强大。他的dwm.exe运行在30mb左右,我的dwm.exe目前运行在大约半个演出,尽管它的确波动很大。在运行完全相同的应用程序(当前为Zend studio,FireFox(具有firemin-低内存使用率),Outlook)时,这是相同的。每隔一段时间,我会收到一条通知,询问我是否要切换到Aero Basic,因为它占用了太多内存,有时它只会将自己切换为Basic,并告诉我原因。

我知道有可能停止它的切换,但是我想知道为什么它使用了过多的内存,否则它只是在解决问题。

要补充的一点是,这似乎是在周一发生抢劫之后开始的,当时我的两个监视器被盗,我不得不暂时使用几个备用监视器。我现在正在使用全新的显示器,但问题是相同的。安装了所有驱动程序,并且工作正常。

有什么想法为什么使用率如此之高?

我们正在使用Windows 7 64位专业版。


您可以从Proccess Monitor中获得任何线索吗?
jmreicha 2012年

您将哪种信息视为Process Monitor的线索?抱歉,没有使用很多。
伦纳德·查利斯

1
您可以进一步深入查看流程,并查看正在与之对话的其他流程(如果有)。
jmreicha 2012年

dwm.exe实际上似乎没有在procmon中显示...?
伦纳德·查利斯

是的,ProcMon可能有点毛。sysinternals工具Process Explorer怎么样?也许您能找到任何线索吗?
jmreicha 2012年

Answers:


24

DWM.EXE当您有多个屏幕并将系统性能设置为默认值时,该过程将占用大量内存,让Windows选择最适合我的计算机。要更改此设置:

  1. 转到计算机 ->右键单击并选择属性
  2. 选择高级选项卡
  3. 选择性能”部分下的“ 设置”按钮。这将弹出“性能选项”窗口
  4. 在第一个选项卡上是Visual Effects。选择Adjust for best performanceCustom(然后选择所需的功能)。

我选择了Custom自己,只选择了Smooth edges of fonts,在运行4个窗口的情况下将内存使用从534M减少到6M。


2
好吧,如果您不启用DWM,那么它当然不会使用任何内存;)
Joey

1
那不是全部答案。我在设置中设置的外观最好,并且dwm.exe通常占用80-100 MB的内存,但是最近它偶尔会突然增加到1300 MB的RAM。如果我终止该过程,它将以正常的80 MB自动重新启动(并且Aero样式立即再次适用,因此,就像重启不会杀死视觉效果一样)。
紫罗兰色长颈鹿

1
谢谢你,这使我的电脑快,尤其是在Eclipse。请注意,它会关闭“航空”和它的透明窗口效果等等
pjc50

我首先尝试了来自computerhope.com/issues/ch001182.htm的提示,从(默认?)Aero风格切换为Win基本主题-并降低了使用率(但对我来说还不够)。接下来,我尝试了此修复程序,这似乎确实有所帮助。
Lars Nordin

@ pjc50我最近开始使用Eclipse,并注意到dwm.exe占用的内存比平时多得多。也许Eclipse在Aero上不能很好地工作?
Nicholas Pickering


1

尝试重新启动dwm服务:

  1. 点击Win+ r并键入services.msc
  2. 查找桌面窗口管理器会话管理器
  3. 单击重新启动服务,然后查看是否可以解决该问题。

或者,如果您想一起摆脱该过程,只需单击停止


据我了解,重新启动计算机与重新启动DWM具有相同的效果。考虑到需要,停止DWM是个好主意吗?
伦纳德·查利斯

技术上是可以的,但在这里阅读本看看这可以帮助任何:howtogeek.com/howto/windows-vista/...
imtheman

1
我完全看不到这有什么帮助。请注意,除非您以全屏模式玩游戏,否则我不建议您关闭此功能,即使那样也可能无助于提高速度。对于初学者来说,我确实已经读过此页面(在发布此问题之前,我曾使用过Google)。我还说过,我知道有可能停止它的切换,但是我想知道为什么它使用过多的内存,否则它只是在解决问题。这根本没有帮助。
伦纳德·查利斯

从Windows 7开始,无法停止DWM(因此服务不会显示在services.msc中)
marijnr

0

另一个提高速度的技巧是按住,windows key然后按r,键入msconfig并按enter,单击boot tab> advanced options然后检查,mark number of processors然后单击向下箭头并选择最大核数2是duo 4是quad hit ok
检查标记引导日志和操作系统引导信息,然后右键单击make all boot changes permanent并确保没有其他打开,apply然后单击然后重新启动。
默认情况下,大多数Microsoft Windows计算机仅使用一个内核启动设置。当然,这适用于Windows 8和8.1。在那之前我还没有尝试过。
祝好运 :)


搞混此选项确实不是一个好主意-特别是您的评论“默认情况下,大多数Microsoft Windows计算机仅使用一个内核作为启动设置。” !!
西蒙(Simon)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.