【问题标题】:How is CPU time measured on Windows?在 Windows 上如何测量 CPU 时间?
【发布时间】:2014-03-03 02:18:19
【问题描述】:

我目前正在创建一个程序,用于识别挂起/失控的进程,并使用整个 CPU 内核。然后程序会终止它们,因此可以控制 CPU 使用率。

但是,我遇到了一个问题:当我在 Windows 上执行 'tasklist' 命令时,它会输出:


Image Name:   Blockland.exe
PID:          4880
Session Name: Console
Session#:     6
Mem Usage:    127,544 K
Status:       Running
User Name:    [removed]\[removed]
CPU Time:     0:00:22
Window Title: C:\HammerHost\Blockland\Blockland.exe

所以我知道“CPU 时间”这一行表示程序自启动以来所使用的总时间(以秒为单位)。

但是让我们假设系统上有 4 个 CPU 内核。这是否意味着它用掉了一个核心的 22 秒,因此在整个 CPU 上总共使用了 5.5 秒?或者这是否意味着该进程在整个 CPU 上用完了 22 秒?

【问题讨论】:

    标签: windows cpu multicore measurement cpu-time


    【解决方案1】:

    这是所有内核的总 CPU 时间。因此,如果任务在一个核心上使用了 10 秒,然后在另一个核心上使用了 15 秒,它将报告 25 秒。如果它同时在所有四个核心上使用 5 秒,它会报告 20 秒。

    【讨论】:

      猜你喜欢
      • 2013-06-30
      • 2013-11-27
      • 1970-01-01
      • 2013-07-04
      • 2013-12-08
      • 1970-01-01
      • 1970-01-01
      • 2013-06-09
      • 2017-04-09
      相关资源
      最近更新 更多