6.4.2. デッドライン I/O スケジューラー


デッドライン I/O スケジューラーは、要求に対して保証された待ち時間の提供を試みます。待ち時間の測定は、要求が I/O スケジューラーに到達してからしか開始されないことに留意してください (アプリケーションは要求記述子が解放されるのを待ちながらスリープになる場合があるので、これは重要な区別です)。デフォルトでは、書き込みよりも読み取りが優先されます。これは、アプリケーションが読み取り I/O をブロックする可能性の方が高いからです。
デッドラインは、I/O をバッチで送ります。バッチは、LBA で昇順となっている読み取りもしくは書き込み I/O の連続です。各バッチの処理後に、I/O スケジューラーは書き込み要求が長時間にわたってリソース不足になっていたかどうかをチェックし、読み取りもしくは書き込みの新たなバッチを開始するかどうかを決定します。要求の FIFO リストは各バッチの開始時に期限切れの要求があるかどうかだけをチェックされ、その後にそのバッチのデータ方向のみがチェックされます。このため、書き込みバッチが選択された場合に期限切れの読み取り要求があると、その読み取り要求は書き込みバッチが完了するまで実行されません。

チューニング可能なパラメーター

fifo_batch
これは、単一バッチで発行される読み取りまたは書き込み数を決定します。デフォルト値は 16 です。これを高く設定するとスループットは改善しますが、待ち時間も長くなる可能性があります。
front_merges
ワークロードが前方マージを生成しないと分かっている場合、これを 0 に設定できます。このチェックのオーバーヘッドを測定していない場合は、デフォルト設定のまま (1) にしておくことが推奨されます。
read_expire
このパラメーターで、読み取り要求が実行される時間をミリ秒で設定できます。デフォルト値は 500 ミリ秒 (0.5 秒) です。
write_expire
このパラメーターで、書き込み要求が実行される時間をミリ秒で設定できます。デフォルト値は 5000 ミリ秒 (5 秒) です。
writes_starved
このパラメーターは書き込みバッチの処理前に処理可能な読み取りバッチ数を制御します。この値を高く設定すればするほど、読み取りが優先されます。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.