src
- GEOM Disk IO scheduler
current - 2010年4月12日
(協定世界時) に9-CURRENTに実施されたコミット (Revision 206497) でGEOM Schedulerがマージされました。GEOM SchedulerはGEOMクラスでIOスケジューリングを提供するというもので、 昨年のBSDCan 2009で発表された取り組みです。EuroBSDCon 2009でも発展的な発表がありました。Fabio Checconi氏とLuigi Rizzo氏によって開発されたものです。 BSDのIOスケジューラは基本的にIOオフセットを相殺し、
特定範囲内の作業においてより多くのIOが処理できるようにするメカニズムになっています。GEOM SchedulerはGEOMクラスでIOスケジュールを提供するというもので、 従来のIOスケジューリングに固定されることなく、 デバイスやファイルシステム、 用途などに特化したスケジューリングを柔軟に提供できるようになるという特徴があります。 Revision 206497のコミットではスケジューラのひとつとしてgsched_
rrも追加されています。これはランダムアクセスのような場合のパフォーマンスを引き上げるスケジューラです。ランダムアクセスがおもに実施されるようなシーンに適用するとパフォーマンスの向上が期待できます。 ZFSはそれ自身がIOスケジュールの機能を持っているため、
GEOM Shedulerの必要性は低いと言えます。UFS2を採用している場合に活用できるメカニズムとなります。また、 特定のディスクの用途が決まりきっているケース (小さいファイルのランダムアクセス、 大規模ファイルの読み込みのみ、 大規模ファイルの書き込みのみ) では、 それに適したスケジューラを採用することでパフォーマンスの向上が期待できるという特徴があります。