我如何发现正在耗尽系统所有内存的内容?(不是SuperFetch)


62

如果任务管理器似乎无法正确报告,如何诊断/发现与内存相关的问题?

我一定有内存泄漏之类的东西-我的12 GB内存使用率是75%,但是任务管理器中进程的内存使用情况清单并未累加(是的,已选中“显示所有用户的进程” )。

似乎这种“虚拟”内存使用量与系统启动了多长时间有关。结果表明,共有118个过程。除了前5名之外,所有这些文件都小于50 MB。

顶级进程是Firefox,使用2.6 GB。900 MB的Adobe Premiere。插件容器为300 MB。275 MB的苍白月亮。94 MB的Explorer.exe。

在世界上如何找到剩余的内存?似乎任务管理器没有看到正在使用的所有内容。也许有某种内存泄漏?还是程序没有正确释放使用的内存?

资源监视器报告(单击以查看大版本):

资源监视器打印输出

注意:

  1. 由于我的主要操作系统驱动器是SSD,因此在系统上禁用了SuperFetch。
  2. 而且我了解未使用的公羊是“浪费”的公羊的原理,可以这么说。但是,当我看到我的内存使用率快要达到峰值时,这使我无法运行/加载后续程序(出于我自己的考虑),甚至使我无法执行任务以关闭许多程序(对减少内存使用率几乎没有影响,至少在很短的时间内)。
  3. 当内存已满时,我讨厌看到SSD上的1GB页面文件扩展到我设置的6GB限制,而我却冒着汗,知道我的“劣质” SSD可能会由于Windows大量使用而尘土飞扬。 /狂奔地转向将其用作成熟的记忆棒。(请注意,我是否应该将页面文件的大小固定为静态1GB?)

4
只是一个旁注:使用过的RAM本身并不是一件坏事。聪明的事物缓存通常会加快事物的速度。如果您没有“ omg,programm xyz启动太慢,我几乎不能接受它,因为它必须把其他东西扔出ram”之类的问题..那么这可能根本不是问题。
akira 2012年


谢谢,但是由于SuperFetch在我的系统(使用主SSD OS驱动器)上被禁用,因此问题有所不同。更新原始问题。
Coldblackice 2012年

@Coldblackice仅仅因为一个(不被接受的)答案对您没有帮助,并不意味着它不是同一个问题。另一个问题的OP甚至表示更改SuperFetch没有帮助。:)
Ƭᴇcʜιᴇ007

是的,但这不是正确的答案,这需要另一个问题。问题已更新,以反映此特定问题。
Coldblackice 2012年

Answers:


58

通常,您可以使用RamMap之类的工具来更好地了解内存消耗了什么

在此处输入图片说明点击放大

通常,已被拉入RAM以提高性能的内存映射文件可能会耗尽内存。

记下RamMap 中的“ 活动”列。那就是当前正在实际使用的内存。有关可用内存的指标通常会产生误导。这包括Windows工具,如任务管理器。

更多信息


我还想谈谈您的问题中的其他几点。

但是,当我看到我的内存使用率快要达到峰值容量时,这使我无法运行/加载后续程序(出于我自己的考虑),甚至使我无法执行任务以关闭许多程序(对减少内存使用率几乎没有影响,至少在很短的时间内)。

您的推理完全可以。但是,除非因内存不足而遇到问题,否则应避免这种做法。当需要物理内存时,操作系统应处理此任务并将数据刷新到页面文件中。

可能您在练习中也使用了错误的指示器。您想关注您的“ 提交费用”Process Explorer术语)。

在此处输入图片说明

提交费用是所有已用内存的总和。您可以在屏幕截图中看到它的限制。该限制是我的物理内存大小+页面文件的大小。如果要达到该极限,那将是一个问题。

这将我们带入下一个主题。

当内存已满时,我讨厌看到SSD上的1GB页面文件扩展到我设置的6GB限制,而我却冒着汗,知道我的“劣质” SSD可能会由于Windows大量使用而尘土飞扬。 /狂奔地转向将其用作成熟的记忆棒。(关于这一点,我是否应该将页面文件的大小固定为statci 1GB?)

我认为这里有些错误。通常,强烈建议不要设置页面文件的大小限制。马克·鲁西诺维奇(Mark Russinovich)在我上面链接的视频中对此进行了解释(比我能做到的要好得多)。

唯一的坏事可能来自于此。当Windows需要将超过6GB的数据刷新到页面文件但您将其限制为6GB时,Windows应该怎么做?是一个主要问题。

让Windows处理分页文件。我强烈建议您做的唯一一件事,就是将页面文件移离SSD。汤姆·维斯曼(Tom Wijsman)在他的博客文章“ 最大限度地延长SSD的使用寿命”中做了出色的解释,我建议您阅读。


1
嗯,我明白了。是的,“虚拟”内存使用情况似乎来自“映射的文件”类别(特别是此“待机”列)。因此,任务管理器不会报告正在映射的这些文​​件,而只是报告正在使用内存?
Coldblackice 2012年

2
感谢您的帮助和附录。关于您关于页面文件和SSD的注释-我听说过完全相反的内容(因此,为什么要按原样使用它)。并不是说我有绝对的“权利”,但是我已经读到页面文件在SSD上是“最好的”,因为它具有SSD的速度优势。至于降低SSD的寿命,我听说这是可以忽略的,只要页面文件受到限制即可。
Coldblackice 2012年

1
至于让Windows管理它-Windows希望允许我的页面文件扩展到18GB!不幸的是,我无法负担SSD上用于分页的空间。我以为Windows可以使用12GB的内存就足够了,奇怪的是,Windows似乎会迅速吞噬尽可能多的可用内存,似乎是在缓存所有可以使用的内存:)因此,我担心如果我让它拥有想要的页面文件的大小,它将找到足够多的文件映射到内存中,从而迅速桥接整个页面文件。
Coldblackice 2012年

1
@Coldblackice:对不起,我无法说服您。请仅从这一点拿走一件事,很少有人对Windows内存管理有正确的了解。但是,很多人很快就会提出建议(显然,包括我在内)。问问自己,限制分页文件的大小是否有用,为什么不是默认值?另外,内存映射文件不太可能被刷新到页面文件,因为它已经存在于文件中(映射到内存的文件)。因此,您在这方面的恐惧很可能是放错了地方。
Der Hochstapler,2012年

1
@Oliver Salzburg,要记住的一件事是Windows 7是为旋转生锈而不是SSD而设计的,而它是1-4GB RAM而不是12的RAM。这不是福音,很明显有些时候,不适合所有默认设置,解决方案也不是一直主张不要考虑它,无论何时有人想更深入地了解问题,都不要触摸这些默认设置。这对新手来说很好,但对每个人都不行。
SilverbackNet 2015年

2

在我的情况下,高内存使用的原因是为Hyper-v虚拟机启用了RAM的动态内存设置。

RamMap工具帮助我找到了根本原因。

首先,我在RamMap中注意到,Driver Locked在我的32GB RAM中消耗了超过29GB的内存。然后,我发现一些文章解释说,驱动程序锁定的高内存使用率可能由启用的HyperV动态内存引起,然后我确认了这一点。


0

如果您看到快照未显示所有进程,则所显示的进程本身将占用5.8 GB内存。从所示的快照中可以看出,有很多不必要的后台程序正在运行。使用msconfig删除不必要的启动程序,并增加虚拟内存(物理内存的1.5倍)。


您如何增加虚拟内存?1.5因子背后的原因是什么?
Der Hochstapler 2012年

虽然增加虚拟内存(通过增加页面文件的大小)很有价值,但它可能只会导致大量分页,这将减慢计算机的运行速度。如果所有不必要的程序都被阻止运行,那么最好的办法是安装更多的RAM。
2012年

要增加您的虚拟内存,请遵循以下路径:转到“我的计算机”属性->选择“高级系统设置”->转到“高级”选项卡->在“性能”下选择“设置”->去高级选项卡->在“虚拟内存”下选择更改->选择自定义尺寸以给出最小值。和最大 大小.........建议将虚拟内存增加到物理内存的1.5倍(例如:如果您有4GB RAM,则可以分配最多6GB虚拟内存)。但是FRAN的建议也是正确的。请尽量减少不必要的后台应用程序。
tiki 2012年

那么,就原始总体性能而言,是否证明增加或减少页面文件总体上更好?1.5倍真的必要吗?
Coldblackice 2012年

0

您可以尝试使用Sysinternal的RAMMAP,但它以与任务管理器和资源管理器不同的方式显示内存使用情况,因此不太有用。

任务管理器和资源监视器不显示文件缓存及其大小。它是内存的“使用中”部分的一部分(请参阅资源监视器)。文件缓存可能会增长到非常大的大小,尤其是当计算机保持运行数小时时。由于文件高速缓存和内存泄漏的增加,总体程序内存使用量随着时间的流逝而增加。有些程序只是糟糕的内存管理。

减少内存使用量的一种方法是减少进程数量。(为什么要运行118个进程?为什么要运行Explorer.exe的多个实例?)

有一个程序可以帮助您定期减少内存使用并定期折叠文件缓存。(PcWinTech的CLEANMEM)。通过这种方式减少内存使用,也可以减少甚至消除Windows将内存中的数据写入交换文件(在SSD上)的需求。因此,它可以延长SSD的使用寿命。减少内存使用量还可以使更多的“备用”内存可用,从而使Windows可以将更多文件预加载到备用内存中,从而加快系统运行速度。


1
您是否与此软件有关联?最后一段听起来像是市场营销对我说话,我看到您在2条旧帖子中推荐相同的内容。
2014年

1
是的,我已经帮助程序的作者改进了程序。但是我没有任何(经济上的)理由来推广该程序,因为该程序是免费的。
Willy2 2014年

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.