![即使 RAM 使用率低于 70%,页面文件仍处于活动状态。如何修复此问题?](https://linux22.com/image/1619565/%E5%8D%B3%E4%BD%BF%20RAM%20%E4%BD%BF%E7%94%A8%E7%8E%87%E4%BD%8E%E4%BA%8E%2070%25%EF%BC%8C%E9%A1%B5%E9%9D%A2%E6%96%87%E4%BB%B6%E4%BB%8D%E5%A4%84%E4%BA%8E%E6%B4%BB%E5%8A%A8%E7%8A%B6%E6%80%81%E3%80%82%E5%A6%82%E4%BD%95%E4%BF%AE%E5%A4%8D%E6%AD%A4%E9%97%AE%E9%A2%98%EF%BC%9F.png)
我有一台笔记本电脑,其规格不错:
CPU:Intel i5-8250u 4 核(8 线程)@ 1.60GHz / 最大睿频 @ 3.4GHz
GPU:集成 Intel UHD 620 + 独立 Radeon 520 GDDR5
内存:4GB DDR4 2400MHz
硬盘:1TB 东芝 mq01abd100 5400rpm
这台笔记本电脑唯一的问题是页面文件一直在工作,导致我的应用程序加载速度比应有的慢。我的 RAM 使用率始终低于 80%。我该怎么做才能解决这个问题?
答案1
这个是正常的。
当内存使用率达到 70% 时,我预计页面文件会被使用,但实际上使用时间要早得多。如果不使用页面文件,内存管理器将不得不采用其他方式获取内存,性能将受到影响。
70% 的内存使用率并不意味着 30% 是空闲的和未使用的。其中大部分实际上正在使用中,只是一种不同的使用方式。它是一种未处于活动状态但仍包含潜在有用数据的缓存。多年的经验表明,这种内存是良好性能的主要贡献者。任何需要它的应用程序仍然可以立即使用这种内存。如果内存计显示内存使用率已满,则大多数时候它会显示超过 90%,既无用也不有趣,因此毫无用处。
内存管理器始终试图在使用内存和可用内存之间保持合理的平衡。当内存压力较低时,内存管理器将允许应用程序使用它们想要的任何内存。这很好。但是当对内存的需求增加时,内存管理器将使用更积极的措施来维护可用内存。其中一部分是将最近未访问的数据保存到页面文件。最初,数据仍保留在内存中,但如果需要将内存用于其他目的,则可以将其丢弃。就性能而言,将数据保存到页面文件几乎是免费的。它需要很少的 CPU 时间,并且由于其他活动可以同时发生,因此无需等待该过程完成。
随着内存需求的增加,内存管理器必须更加积极地维护可用内存。更多数据被写入页面文件并根据需要读回。EXE 和 DLL 文件中的可执行代码从内存中删除,然后读回内存。当使用率接近 100% 时,内存管理器的选择非常有限。此时,即使是最近访问的内存也必须重新分配给其他用途,性能变得非常缓慢。这不是一个好的情况,只是内存管理器在糟糕的情况下尽力而为。它正在做必要的事情来保持系统运行。
这一切都非常复杂。这是数十年研究、开发和测试的结果,微软和苹果等公司已经花费了大量资金。相信内存管理器会做正确的事情,即使你不理解。