典型的例子是关闭内存密集型应用程序。计算机可能需要很长时间才能恢复速度。释放内存是否有一些固有成本?或者它是否受到某种硬盘活动的限制,如果是,有什么好方法来跟踪它?
当计算机运行缓慢时,我通常会调出任务管理器,通常按 CPU 活动排序可以显示导致问题的进程,但有时没有显示任何活动。是的,我“显示所有用户的进程”,自从 win2k 时代以来,我就一直在想这个问题 :)
答案1
这一切都取决于是否拥有足够的 RAM 以及 RAM 和 HDD 的速度。
由于您未提供任何规格,请考虑以下规格:
OS: Windows 7 64-bit
CPU: Core 2 duo 2GHz
RAM: 4GB PC2 5300
HDD: 500GB 5400 RPM
VRAM on HDD: 8GB (virtual RAM or Page File - default size is RAM x2)
以下是具体发生情况:
- 操作系统需要 2GB 基准才能运行操作系统
- 打开 Photoshop 等大型应用程序
- Photoshop 需要 1GB,这很好
- 开始处理高分辨率图像,现在您有 300 个图层
- Photoshop 已将其 RAM 消耗量增加到您在首选项中设置的指定限制(例如 3GB)
- Windows 就像是“哦,糟糕,让我将一些不必要的进程卸载到 VRAM 上”
- Windows 现在拥有 1GB RAM 和 1GB VRAM
- 此时,如果你打开网络浏览器,打开速度会相当慢
- 这是因为 VRAM 中的项目经常被操作系统访问,因此你的 HDD 会因常规 Windows 进程而堵塞
- 保存工作并关闭 photoshop
- RAM 是免费的!!!
- Windows 必须将其进程从 VRAM 移回常规 RAM,这就是您所描述的速度减慢
- 5400RPM HDD 与 RAM 相比速度非常慢,因此 HDD 是瓶颈,直到它不再用于 VRAM
您可以使用 Windows 性能监视器跟踪 HDD 活动: http://blogs.technet.com/b/askcore/archive/2012/03/16/windows-performance-monitor-disk-counters-explained.aspx
答案2
我能给出的最佳答案是使用 Process Explorer 更深入地了解正在运行的内容。它比通常的任务管理器等更深入:
http://technet.microsoft.com/en-gb/sysinternals/bb896653.aspx