用語/loadaverage

CPU load Average

load とは、ある瞬間におけるそのマシンの負荷 (アクティブなプロセスやスレッドの数) である。load average は、ある期間の負荷の平均値を示している。uptime, w のオンラインマニュアルによると、load average として表示される値は「最後の 1 分、5 分、15 分間の実行待ち行列における平均ジョブ数」ということになる。

要するにある瞬間に動いているジョブのうち入力・ファイルアクセス待ちであったり sleep(2) 等の呼び出し中であったりするジョブを除いた、「実行可能状態」になっているジョブの個数が load であり、それを時間で平均した値が load average になる。

一概には言えないが、load が CPU の数の X 倍になったとすると、マシンの性能が少なくとも 1/X になったようにユーザからは見えるだろう。実際にはプロセスの切り替えに色々な手間がかかるので、1/X より悪い性能に感じると思われる。特に、アクティブなプロセスの使っているメモリ量の合計が、サーバの実メモリ量を越えると、極端に性能が低下する。通常より急に重くなった場合、なにか暴走しているプロセスがあると疑った方がよいかもしれない。