web-dev-qa-db-ja.com

「稼働時間」にCPU負荷> 1が表示される理由/方法

PCに1コアCPがインストールされています。時々、uptimeは負荷> 1を示します。これはどのようにして可能であり、これはどういう意味ですか?

編集:値は2.4

14

負荷はCPU使用率と等しくありません。これは基本的に、プロセスの数が実行されるのを待っているインジケータです。

いくつかの役立つリンク:

20
michas

uptimeシステム負荷(正確にはCPU使用率ではない)を示します。これはman uptimeで次のように説明されています。

システム負荷平均は、実行可能な状態または中断できない状態にあるプロセスの平均数です。実行可能な状態のプロセスは、CPUを使用しているか、CPUの使用を待機しています。割り込み不可能な状態のプロセスは、ディスクを待つなど、I/Oアクセスを待っています。平均は、3つの時間間隔で取得されます。負荷平均はシステムのCPU数に対して正規化されていないため、1の負荷平均は常に1つのCPUシステムが読み込まれることを意味しますが、4 CPUシステムの場合は75%の時間アイドルでした。

負荷がCPUコアの数より少ない限り、問題はありません。それを超える場合は、システムがワークロードの「リアルタイム」に対応できないことを意味します。したがって、一部のプロセスは待機してCPU時間を取得する必要があります(またはIOアクセス)。待機行が作成されます。

2.7の負荷がある場合、平均して(確認した値に応じて、最後の1、5、または15分間)、2.7のプロセスが並列実行を試みていますが、コアが1つしかないため、システム過負荷です。あなたはそれからあまりにも多くを求めています。

しかし、慌てないでください。それはそのような問題ではないかもしれません。作業が完了すると、通常は正常に戻ります。

7
Totor

稼働時間は、負荷に対する/proc/loadavgの出力を示しています。

man 5 procのマンページには、

   /proc/loadavg
          The first three fields in this file are load average figures giving
          the  number  of jobs in the run queue (state R) or waiting for disk
          I/O (state D) averaged over 1, 5, and 15  minutes. 

したがって、CPU使用率が0%であっても、負荷が高くなる可能性があります。 1つのコアは、マルチプロセッサシステムで最大100%または1の負荷を獲得できます。

参照 I/O中の高CPU負荷

4
user55518