質問: Postgresqlののサーバでpgbenchを実行しています。 その時、cpu使用率が50%程度で、cpu割り込みも発生せず、ioの値も5いくかどうかで推移しています。 メモリ使用率においても20%弱で推移して、swapも使用されていません このような状態の時、OSはマルチタスクを実行するためにプロセスの切替が間に合っていない状態のようですが、 Load Averageを低減させる手段としてどのような対処方法がありますでしょうか よろしくお願いします。
回答: Load Average は CPU負荷の他、ディスクI/O、(短時間での)プロセス生成が関わってきます。 pgbench 実行とのことですので、ディスクI/O、特に書き込み待ちが多くなっていると推測されます。 `vmstat 5` で 5秒ごとの cpu wa の値が大きくなっていませんでしょうか? ディスクへの書き込み待ちを低減するためには、速いストレージを使うとか、そもそも書き込むデータを少なくするとか、くらいでしょうか。 (2015/12/04 09:08 追記) データベースであれば、I/Oスケジューラーを noop や deadline に変えると性能が上がるかもしれません。 設定方法は、kernel 起動パラメータで elevator=noop とするか、`echo noop > /sys/block/sda/queue/scheduler` (sda 箇所は環境に合わせて)。 pi-chan さんの回答のとおり、Load Average の値が高いこと自体は問題ないと思います。