目次

高速書き込み

概要

データが書き込まれるまで

  1. データが dirty メモリに転送される。
  2. dirty メモリ上のデータが一定以上、あるいは一定時間を越えるまでデータを蓄える。
  3. 上記条件を越えた場合に、pdflush が呼び出され、write_back 処理で、物理デバイスにデータが書き込まれる。

調整方法

  1. /etc/sysctl.conf をエディタで編集し、適用する。
  2. 編集後、システムを再起動するか、以下のコマンドで適用する。
    $ sudo sysctl -p
パラメータ名 デフォルト値 説明
vm.dirty_background_ratio 10 dirty メモリ上のデータがこの閾値を越えた場合に、優先度の低いバックグラウンドプロセスで write_back 処理をする (物理メモリに占める割合%)
vm.dirty_ratio 20 dirty メモリ上のデータがこの閾値を越えた場合に、優先度の高いバックグラウンドプロセスで write_back 処理をする (物理メモリに占める割合%)
vm.dirty_expire_centisecs 3000 write_back 処理されるまでの間隔 (1/100 秒)
vm.dirty_writeback_centisecs 500 write_back 処理デーモンの起動間隔 (1/100 秒)

参考サイト