为什么进程 CPU 使用百分比大于总 CPU 时间

为什么进程 CPU 使用百分比大于总 CPU 时间

当我运行 TOP 命令时,进程显示 1208% 的 cpu 使用率,在 IRIX 模式打开的情况下,总 CPU 使用时间为 81.7%。当我更改为关闭 IRIX 模式时,该进程显示 cpu 使用率为 99%,总用户 cpu 时间为 43%。

有什么想法可能会发生什么吗?

更新 虚拟机配置是否错误,导致 CPU 使用情况无法正确报告?

答案1

埃里克斯/索拉里斯模式(man 1 top):

     <I> :Irix/Solaris_Mode_toggle
          When operating in  'Solaris  mode'  ('I'  toggled  Off),  a
          task's  cpu  usage  will  be divided by the total number of
          CPUs.  After issuing this command, you'll  be  informed  of
          the new state of this toggle.


...

      if 'Irix mode' is Off,  top  will  operate  in
      'Solaris  mode' where a task's cpu usage will be divided by the
      total number of CPUs.  You toggle 'Irix/Solaris' modes with the
      'I' interactive command

假设N是 CPU 总数。那么InIrix模式下,%CPU就是CPU使用率out了N * 100%。在Solaris模式中,%CPU%CPU in Irix mode/ N

看:Comprehending 'top' CPU usage


编辑:

总数用户CPU 时间为 43%

我认为你忽略了%系统在系统(内核)级别执行的 CPU 利用率百分比。时间。尝试其他工具,例如mpstatiostatsar来分析 CPU 利用率。

相关内容