【问题标题】:Does Task Manager Slow down CPU usage任务管理器是否会降低 CPU 使用率
【发布时间】:2015-01-29 03:04:27
【问题描述】:
当我看到 Windows 中的任务管理器显示内存和 cpu 使用率时,我想知道它是否对系统性能有任何影响。当开始创建我自己的程序时,比如使用线程作为 gui 和计算函数完成的百分比,需要一些小的性能损失来查询更新的 gui 线程(也许我只是做错了)。
任务管理器的行为方式是否相同,它必须跟踪 CPU 使用情况然后更新,还是始终计算此 CPU 使用情况并且显示任务管理器不进行额外计算?
【问题讨论】:
标签:
windows
multithreading
cpu-usage
【解决方案1】:
它确实有效果。无论任务管理器是否正在运行,都可以收集性能指标。但是,当任务管理器运行时,您还使用了额外的资源(RAM、处理器时间片等)来显示任务管理器窗口,使用额外的资源来更新任务管理器窗口中的图形等等开。
【解决方案2】:
我一直注意到 TM 具有重大影响。这种影响有两个阶段,启动和稳定状态。两者都很重要。启动需要页面交换、设置所有进程信息等。我一直观察到 CPU 和磁盘使用高峰。之后,它们稳定到一个稳定的状态,该状态仍然足以影响 CPU 的结果。
当我进行分析时,我会使用 TM 来收集关于 TM 未使用的那些指标的统计信息。为了获得有关处理器使用情况的统计数据和 TM 使用偏差的其他统计数据,我使用了英特尔的 VTune 产品,因为它以非回避的方式收集这些信息。大多数处理器,例如英特尔具有收集处理器和其他统计数据的内部寄存器,几乎没有性能影响,因为硬件一直在收集这些性能信息。 VTune 只是从寄存器中下载它。我认为您可以获得 VTune 的评估副本。