Windows 10 内存管理 - 已使用、可用、待机和文件缓存......发生了什么?

Windows 10 内存管理 - 已使用、可用、待机和文件缓存......发生了什么?

我有一台 W10 系统,虽然现在已经很旧了,但性能还不错(戴尔 Precision T3620,配备 i7-6700、32GB RAM、GTX 1060 6GB、512 GB NVME、2x512 SSD 和 4TB HDD)。我用它来工作(软件和数据库开发)和娱乐(流媒体、游戏),所以它总是运行一些资源密集型的东西。

想象一下,几个月前,在进行重大更新后,我开始遇到一些游戏性能问题(老游戏,主要是 2015 年之前的游戏),这让我感到很惊讶……以前根本没有发生过这种情况。总而言之,我运行的每个游戏都应该以最高速度(超高或更低)运行,而开发系统运行时应该相当灵敏……并且不会不断访问磁盘……有时它会很吃力。

想象一下,当我开始查看性能监视器时,我更加惊讶了,然后进一步深入。性能监视器显示使用了 12GB(很多 chrome 标签 - 有罪),但 18GB 待机只是意料之中的事情。深入研究后,我发现了 SQL Server。很好,我确实在那里有几个数据库。但这仍然无法解释缓慢的原因。

想象一下,当我看到系统自动为页面文件分配 81GB(是的,八十一千兆字节),并将其放在 HDD(5400RPM 旋转器,只有大量 RAM)上时,我感到最大的惊讶......

我的问题是:考虑到我拥有的、我所做的以及 Windows 所做的,我应该保持这种状态还是应该稍微调整设置(将页面文件重新定位到 nvme、禁用超级提取、在不使用时关闭某些服务 - 例如 SQL Server 等)?我不记得上次崩溃是什么时候(WarThunder 运行起来像梦一样,World of Warships 也一样,SQL Server 还不错,Visual Studio 也不会崩溃 - 虽然仍然很慢),但总体来说速度很慢很烦人。将一切都留给 Windows 是否有可能以牺牲性能为代价获得稳定性?如果是,我可以稍微调整一下让它更快吗?

答案1

Wagnardsoft 的智能待机列表清理器对我释放内存很有帮助,不仅在游戏中,而且在其他占用大量内存的任务中也是如此,比如用 Calibre 将许多书籍移动到阅读器,或者处理大型全景图。

至于页面文件,我不会让 Windows 自动分配它,而是将最大值和默认值设置为相同数量,大约是 RAM 的 1.5 到 2 倍。这不仅可以限制将慢速磁盘 I/O 用作内存,还可以帮助防止该文件产生碎片。

答案2

总结- 投入更多资金即可解决问题。新 PC 的性能基本上增加了四倍(128GB RAM、2TB NVMe Gen4、4TB NVMe Gen3、8TB HDD 等),干净的 Windows 11 安装,几天安装应用程序和恢复数据,额外的时间配置以实现最大稳定性(即无 OC/XPM/等)——解决了性能问题。

详细解释

经过进一步调查,发现问题如下:

Windows 已配置为针对服务进行优化,页面文件也设置为由 Windows 管理。由于所有服务和/或应用程序的运行都需要大量内存(总共 160GB),因此 Windows 试图应对这种情况。

我认为值得强调的是,从我的角度来看,它成功应对了这种情况。是的,系统很慢,但并不稳定。尽管启动时速度缓慢且应用程序崩溃,但系统已正常运行了几个月。这意味着没有数据丢失。

大部分的缓慢是由于 SQL Server 在后台运行,管理 4 个数据库。它必须使用旋转器,因为没有 SSD 有足够的空间来将所有数据放在一个地方。

我在 SQL Server 中将数据库设置为自动关闭(它们都针对 GDPR 从 PROD 备份恢复进行了修改,因此将其添加到匿名脚本中)。由于所有数据库都是本地的,因此我没有遇到首次访问时间延长的问题,而且我总是可以在等待数据库再次启动时去喝咖啡。

然而,这个问题促使我花钱买了一台新电脑。由于我负担得起,我花大价钱买了一台新系统,在快速设备上拥有最大 RAM 和更多存储空间,因此如果再次发生这种情况,性能影响将 - 希望 - 最小。升级后没有任何问题。

相关内容