負荷平均は、平均していくつのプロセスが同時に CPU の注意を必要としているかを示す指標です。
一般に、1 つのプロセスが 100% で実行されていて、それが永遠にそのままである場合、すべての値が「1」に近づくと予想できます。
一般に、これは可能な限り効率的なコンピューティングであり、コンテキストの切り替えによる損失はありません。
ただし、最新のマルチタスキング OS では、CPU の注意が必要なことが複数あるため、1 つのプロセスからの適度な量の負荷の下では、負荷平均は 0.8 から 2 の間で変動するはずです。
make -j 60
でカーネルを構築するなど、非常識なことをすることにした場合 、論理プロセッサが 1 つしかないにもかかわらず、負荷平均は 60 に向かって急上昇し、コンピュータは信じられないほど役に立たなくなります (コンテキスト スイッチによる死)。
また、このメトリックは、コア/CPU の数に関係ありません。 2 コア システムの場合、コア全体を消費する 1 つのプロセスを実行すると (もう 1 つのプロセスはアイドル状態のまま)、負荷平均は 1.0 になります。システムの負荷を判断するには、コアの数を知り、自分で分割する必要があります。
男 5 プロシージャ:
<ブロック引用>/proc/loadavg このファイルの最初の 3 つのフィールドは、実行キュー (状態 R) またはディスク I/O を待機中 (状態 D) にあるジョブの数を 1、5、および 15 分で平均化した負荷平均値です。 uptime(1) やその他のプログラムで得られる負荷平均値と同じです。
一般に、特定の時間にアクティブなプロセスの数を測定しますが、計算に使用されるメトリックはシステムによって異なります。それをかなりよく説明している唯一の記事は、これです。