無知のため、I/Oスケジューラってなんのこと?状態だったので、
少し調べてみてキュレーションします。
I/Oスケジューラって
I/Oスケジューラ
は、Linuxカーネルの一種。
カーネル 2.6.9 以前は1種類ののみで、コンパイル時に固定化されていた。
カーネル 2.6.10 からはデバイス毎に切り替えることが可能になった(ディスクや用途に応じて…)。
カーネル 2.6.17 に組み込まれているスケジューラ
-
noop
- 何もしないスケジューラ。
- SSDを使用する場合に、推奨されているらしい。
-
anticipatory
- 一般的なハードディスクと同等な構造を持つと仮定して、将来の入出力要求を予測したスケジューリングを行う。
- 要求をある程度貯めるので、多少レイテンシが悪くなることもある。
- 比較的に低速のハードディスクに推奨される。
-
deadline
- DB向きのスケジューラ。
- スループットよりもレイテンシに最適化したスケジューリングを行う。
-
cfq
- Fedoraのデフォルト。
- プロセス毎のI/Oキューを持ち、公平なスケジューリングを行う。