什么是内存压缩?
Windows 10/11 默认开启的内存管理机制,将不活跃的内存页面压缩后保留在物理内存中,减少对页面文件(硬盘)的读写。在任务管理器中会显示为 "压缩内存" 或 "Memory Compression" 进程。
一、查看当前状态
以管理员身份打开 PowerShell(终端),输入:
Get-MMAgent
输出示例:
ApplicationLaunchPrefetching : True
ApplicationPreLaunch : True
MaxOperationAPIFiles : 128
MemoryCompression : True ← True 表示已开启
OperationAPI : True
PageCombining : True
也可以在任务管理器 → 性能 → 内存中查看是否有"压缩内存"的数值显示。
二、关闭内存压缩
方法:PowerShell 命令(推荐)
- 右键点击开始菜单 → 选择 "终端(管理员)" 或 "Windows PowerShell(管理员)"
- 输入以下命令并回车:
Disable-MMAgent -mc
- 重启电脑生效
三、重新开启内存压缩
如果之后想恢复,同样以管理员身份运行 PowerShell:
Enable-MMAgent -mc
然后重启电脑。
四、验证是否关闭成功
重启后再次运行:
Get-MMAgent
确认 MemoryCompression 变为 False 即可。
同时打开任务管理器 → 性能 → 内存,"压缩内存"一项应显示为 0 KB。
五、是否需要关闭?(建议)
| 情况 | 建议 |
|---|---|
| 内存 ≤ 8GB | ❌不建议关闭。关闭后内存不足时会频繁读写硬盘页面文件,反而更卡 |
| 内存 16GB 及以上 | ✅ 可以关闭。减少 CPU 压缩/解压开销,游戏帧率更稳定 |
| 游戏掉帧/卡顿 | ✅ 建议尝试关闭,排除 Memory Compression 占用 CPU 的影响 |
| 日常办公、内存充裕 | 保持默认即可,影响不大 |
⚠️ 注意事项
- 该命令只关闭内存压缩,不影响 SysMain(Superfetch)等其他服务
- 关闭后,原本被压缩保存在内存中的数据会转而写入
pagefile.sys(页面文件),确保页面文件没有被禁用 - 操作可逆,随时可以用
Enable-MMAgent -mc恢复