基本上,我想跟踪一天中哪些进程正在运行以及它们的 CPU 百分比,以查明随机冻结和缓慢情况。我想进入一个文本文件并查看前几天进程的日志,或类似的东西。
答案1
图形用户界面(GUI):进程监控可以做到这一点。
- 仅对分析进行过滤并确保它删除已过滤的事件,否则您的内存将会被填满。
- 确保您配置了一个备份文件,否则您的内存将会被填满。
- 尝试减少分析间隔以节省内存。
- 您必须自己保存它。
命令行:性能性能Windows SDK 中的 Windows 性能工具包也可以执行此操作。
- 必须通过命令行启动和停止,并使用一组广泛的参数,以便您可以记录任何您想要的内容,这使您能够使用登录和注销脚本自动执行它,以便您可以让它在您登录时启动并在关闭时停止。
- 确保仅记录 CPU 活动,否则磁盘将会被填满。
- 再次,如果可能的话,尝试减少分析间隔,否则您的磁盘将会被填满。
- 使用 XPerfView,您可以打开跟踪并获得可以详细分析的图表。
- 此工具并不适合胆小的人,请务必搜索文章并阅读文档。
开始、停止(从而保存)和查看将如下所示:
XPerf -on PROFILE -SetProfInt 5000000
XPerf -d C:\Path\To\Save\The\Trace\To.etl
XPerf C:\Path\To\Save\The\Trace\To.etl
SetProfInt 的单位是 100 纳秒的时间间隔,即万分之一毫秒。标准将每毫秒分析一次 CPU,而上述示例将每 500 毫秒分析一次。
如果你需要任何具体的帮助,只需输入即可阅读内置文档xperf
,如果你想快速了解 XPerf 的功能,可以查看这个视频。您可能想要跳过他运行应用程序和发送跟踪的部分;最重要的部分是他在控制台或查看应用程序中的部分。
虽然有点不相关,进程套索可能会帮助你解决缓慢的问题......
您可以对其进行配置以降低后台进程的优先级,以便您的系统保持响应。
答案2
还可以使用 perfmon 记录 CPU 使用情况:
http://support.microsoft.com/default.aspx?scid=kb;EN-US;248345
您需要提前确定这些流程。