プロセスCPU使用率が合計CPU時間より大きい理由

プロセスCPU使用率が合計CPU時間より大きい理由

TOPコマンドを実行すると、プロセスのCPU使用率が1208%で表示され、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数であると仮定します。その後、IrixInモードでは%CPUCPU使用率を超えますN * 100%Solarisパターンでは/%CPUです。%CPU in Irix modeN

望むより:Comprehending 'top' CPU usage


編集する:

ユーザーCPU時間は43%です。

私の考えでは、あなたが見落としたと思います。%体系システム(カーネル)レベルで実行されるCPU使用率。)時間mpstatiostatなどの他のツールを使用してsarCPU使用率を分析します。

関連情報