RamMap的“空待机列表”大大加快了PC的速度。有一个更好的方法吗?


24

通过阅读Microsoft白皮书等,许多人受了有关Windows内存管理器缓存工作方式的教育。但是,描述与超大/不断增长的映射文件和备用列表相关的实际性能问题(缓慢)的文档相对较少。

我有一台充当服务器的Win7 64位(8Gb RAM)PC。我无法再添加任何内存。它有一堆电视调谐器,可以同时录制/写入多个同时巨大的mpeg2文件(每个文件至少3-8GB)到HDD 24/7。根据我的PC录制电视节目的繁忙程度,1-3天后,我的PC会变慢。

仅查看Windows Task Manager,看来我没有打开很多大型应用程序。并且,大量的“可用内存”。即使我关闭了所有活动进程,PC仍然运行缓慢。但是,使用RamMap时,我可以看到这些大的mpeg2文件成为活动备用列表中的映射文件。随着时间的流逝,我的电脑变得非常呆滞。如果我在RamMap中选择“空待机列表”,我的PC将立即变得非常灵敏。就像我刚重启一样。我没有其他办法可以解决呆滞问题。实际上,除非我清空待机列表或重新启动,否则PC将永远无法从这种缓慢状态中恢复。

我有一个命令行实用工具EmptyStandbyList.exe,我发现它可以悄悄地清除备用列表,而不必在RamMap的GUI中进行操作。但是,不幸的是,它还会清除备用列表中的较小项,这些项对于提高性能非常有用,可以保留在备用列表中。

在Google上搜索时,我发现其他人与我的问题几乎完全相同。但是,他们的大多数问题都没有得到解答。没有真正解释为什么会发生这种情况;并且,除了“空备用列表”技术外,没有其他解决此问题的明确方法。

我曾经提到过一个称为“动态缓存”的MS实用程序/服务;但不确定是否可以治愈我想要的东西。另外,它的Win7 / Win2008 R2版本似乎只能通过MS支持获得。我还看到了一些设置“最小/最大NT缓存限制”的实用程序。但是这些看上去好像是特定于流程的工作集,而不是备用列表。

我希望有人可以开箱即用,可以为我提供更优雅的治疗方法,而不是不得不定期残酷地清空整个待命清单;并希望对我(和其他人)看到的症状有明确的解释。我之所以说“开箱即用”,是因为已经有很多人喜欢背诵“应该”在纸上工作的映射文件和备用列表优先级。这对我不是很有帮助。


我意识到这是一篇过时的文章,并且此建议可能很难测试,但是如果有一天您有机会,您可能想尝试使用Windows服务器版本进行设置。也许在服务器操作系统如何处理对您有利的内存方面还有更多未公开的内幕差异。
我说恢复莫妮卡

Answers:


2

备用列表是Superfetch缓存,“动态缓存”解决了另一个问题。该服务解决了NTFS元数据缓存过高的问题。但是Stadnbylist和此Cache是​​两件事。NTFS高速缓存显示为已用内存,而待机高速缓存显示为包含数据,但是如果您真的是新的内存来在其中存储数据,则可以非常快地将其清空。

在sysinternals论坛上,Process Hacker的作者用户wj32创建了一个命令行工具,该工具可以执行您想要的操作:

http://forum.sysinternals.com/rammap-empty-standby-list_topic27297_post132769.html#132769

如果它“解决”您的问题,请尝试。


5
该命令行工具不是与OP在他的帖子中提到的EmptyStandbyList.exe完全相同,并且他想要一个更好的,也许更集中的替代方法吗?
卡兰

2
嗯...您是否读过以“但是,不幸的是...”开头的行,以及他想要“更优雅的治疗”的事实?
卡兰

4
很高兴认识那里的人,他们花一些时间在发布前仔细阅读了OP。但是,我确实学到了一些以前不知道的东西。听起来实际上是导致性能问题的原因与Superfetch缓存有关;不是NTFS元数据缓存。RamMap显示了两者。我知道在Windows Vista下,我不得不完全关闭Superfetch服务,因为它不知道如何处理电视记录(通过我的DVR应用程序);并且导致过度使用我的HDD。我目前拥有Win7超取服务,以增强内存中使用的启动和应用程序。
user22667

2
我的引导分区使用的是SSD;只有256GB的大小。我很好奇超取中是否有任何设置可以解决此问题;例如,抑制某些文件类型通过超级提取?希望有人知道这一切如何运作,以解释为什么会发生这种情况,并提供比我现有的解决方案更好的解决方案。
user22667

3
清空待机列表而不更改内存管理器的比率/限制设置,仅提示窗口开始填充现在可用的内存。这也摆脱了备用列表中的实际有用内容,而这两者都会降低计算机的运行速度。
BeowulfNode42 2013年

1

可能是Windows的呆滞导致了从Swap驱动器中加载/保存内容,随着每个录像带的录音,备用列表的增加以及具有较大Swap驱动器的其他(后台)程序现在被推送到Swap驱动器,减慢机器速度。

如果此PC仅用于录制电视节目,则可能的解决方案是将Swap驱动器设置得与Windows允许的设置一样小,我相信这是16MB。请勿完全关闭交换驱动器,因为Windows会秘密制作交换驱动器。

如果Windows仅从RAM读取数据,而没有从Disk加载新程序,我将无法想象Windows会变得缓慢。

来自MS文档的Qoute http://download.microsoft.com/download/7/E/7/7E7662CF-CBEA-470B-A97E-CE7CE0D98DC2/MemorySizingGuidanceWin7.docx

“ Windows 7 SuperFetch™与内存管理器一起为待机列表中的页面设置优先级。最近放置在待机列表中的页面以高优先级开始,随着时间的推移,优先级逐渐降低。

如果系统的内存不足以处理工作负载,则“待机”列表中只有一小部分页面具有较低的优先级。通过监视处于不同优先级的页面数,您可以确定系统是否将从增加已安装的RAM数量中受益。”

总体而言,目标是确保系统可以在内存中维护最近引用的页面,并且仍然有足够的可用内存来满足任何即时内存需求。”

也许还有电视录制程序,因为它继续运行并且不会停止,因此进入待机列表的每个Page都被标记为具有最高优先级,从而将其他内容排除在外,这通常可以加快Windows的运行速度。您可能会认为,当内存不足和/或没有Swap文件时,这些东西会被释放,Windows无法秘密开始大量使用Swap驱动器来减慢运行速度。这是基于备用列表中的数据不会加载到交换驱动器的假设。

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.