26.6. 汎用ブロックデバイスのチューニングパラメーター


ここにリストされている一般的なチューニングパラメーターは、/sys/block/sdX/queue/ ディレクトリーにあります。

以下のチューニングパラメーターは、I/O スケジューラーチューニングとは別のパラメーターで、全 I/O スケジューラーに適用されます。

add_random
一部の I/O イベントは、/dev/random のエントロピープールに貢献します。これらの貢献のオーバーヘッドが測定できるレベルになった場合には、このパラメーターを 0 に設定してください。
iostats

デフォルトでは、iostats は有効で、デフォルト値は 1 です。iostats0 に設定すると、デバイスの I/O 統計情報の収集が無効になります。これにより、I/O パスのオーバーヘッドがわずかに削減されます。

iostats0 に設定すると、特定の Non-volatile Memory Express (NVMe) ストレージデバイスなど、高性能デバイスのパフォーマンスが向上する可能性があります。特定のストレージモデルで無効にするようにベンダーからの指示がない限り、iostats は有効のままにしておくことを推奨します。

iostats を無効にすると、デバイスの I/O 統計が /proc/diskstats ファイルからなくなります。I/O 情報は、/sys/diskstats ファイルの内容をソースとしており、sariostats などの I/O ツールの監視に使用します。したがって、あるデバイスの iostats パラメーターを無効にすると、そのデバイスは I/O 監視ツールの出力に表示されなくなります。

max_sectors_kb

I/O 要求の最大サイズを KB 単位で指定します。デフォルト値は 512 KB です。このパラメーターの最小値は、ストレージデバイスの論理ブロックサイズで決まります。このパラメーターの最大値は、max_hw_sectors_kb の値で決まります。

max_sectors_kb は、必ず最適な I/O サイズと内部消去ブロックサイズの倍数である必要があります。0 が指定されているか、ストレージデバイスによる指定がない場合には、どちらかのパラメーターの logical_block_size の値を使用します。

nomerges
要求をマージは、ほとんどのワークロードで有用です。ただし、デバッグの目的では、マージを無効にすると便利です。デフォルトでは、nomerges パラメーターは 0 に設定されており、マージが有効です。単純な 1 回だけのマージを無効にするには、nomerges1 に設定します。すべてのタイプのマージを無効にするには、nomerges2 に設定します。
nr_requests
キューに配置可能な最大 I/O 数です。現在の I/O スケジューラーが none の場合は、この数値を減らすことができますが、それ以外の場合は数字の増減が可能です。
optimal_io_size
このパラメーターで最適な I/O サイズを報告するストレージデバイスもあります。この値が報告された場合、アプリケーションは可能な限り、最適な I/O サイズに合わせて、かつその倍数となるように I/O を発行します。
read_ahead_kb

オペレーティングシステムがシーケンシャルリード操作中に先読みできる最大キロバイト数を定義します。その結果、次のシーケンシャル読み取りに必要な情報が、カーネルのページキャッシュ内にすでに存在することになります。これにより、読み取り I/O パフォーマンスが向上します。

デバイスマッパーは、read_ahead_kb の値を高くすることで多くの場合メリットが得られます。マッピングされる各デバイスにつき 128 KB に設定するのが、良い出発点となります。read_ahead_kb の値をリクエストキューのディスクの max_sectors_kb まで増やすと、大きなファイルのシーケンシャル読み取りが発生する場合にパフォーマンスが向上する可能性があります。

rotational
一部のソリッドステートディスクは、ソリッドステートのステータスを正しく公開せず、従来の回転ディスクとしてマウントされます。スケジューラーで不要なシーク時間短縮ロジックを無効にするには、rotational の値を 0 に手動で設定します。
rq_affinity
rq_affinity のデフォルト値は 1 です。これは、発行した CPU コアと同じ CPU グループにある CPU コア 1 つで I/O 操作を完了します。I/O 要求を発行したプロセッサーでのみ I/O 操作を完了するには、rq_affinity2 に設定します。上記の 2 つの機能を無効にするには、0 に設定します。
scheduler
ストレージデバイスのスケジューラーまたはスケジューラーの優先順位を設定するには、/sys/block/devname/queue/scheduler を編集します。devname を設定するデバイス名に置き換えてください。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る