Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

31.4.2. フェーズ 2 - I/O リクエストサイズの影響

このテストの目的は、前のステップで決定された最適な I/O 深度でテスト対象システムの最高のパフォーマンスを生み出すブロックサイズを理解することです。
  1. 8KB から 1MB の範囲でさまざまなブロックサイズ (2 の累乗) を使用して、固定 I/O 深度で フォーコーナーテストを実行します。読み取る領域を事前に入力し、テストの合間にボリュームを再作成することを忘れないでください。
  2. I/O 深度を 「フェーズ 1 - I/O 深さの影響、固定 4KB ブロック」 で決定された値に設定します。
    テスト入力要因の例 (読み取り):
    # z=[see previous step]
    # for iosize in 4 8 16 32 64 128 256 512 1024; do
      fio --rw=write --bs=$iosize\k --name=vdo --filename=/dev/mapper/vdo0 
          --ioengine=libaio --numjobs=1 --thread --norandommap --runtime=300 
          --direct=1 --iodepth=$z --scramble_buffers=1 --offset=0 --size=100g
      done
    
  3. 各データポイントでスループットとレイテンシーを記録してから、グラフ化します。
  4. テストを繰り返してフォーコーナーテストを完了します: --rw=randwrite--rw=read、および --rw=randread.
この結果には、いくつかの重要な点があります。この例では、以下のように設定されています。
  • シーケンシャル書き込みは、要求サイズ Y でピークスループットに達します。この曲線は、設定可能であるか、特定の要求サイズによって自然に支配されるアプリケーションが、パフォーマンスをどのように認識するかを示しています。4KB の I/O はマージの恩恵を受ける可能性があるため、要求サイズが大きいほどスループットが向上することがよくあります。
  • シーケンシャル読み取りのスループットは、Z 点で似たようなピークスループットに到達します。これらのピークの後、I/O が完了するまでの全体的な遅延は、追加のスループットなしで増加することに注意してください。このサイズよりも大きな I/O を受け付けないようにデバイスを調整することが推奨されます。
  • ランダム読み取りは、ポイント X でピークスループットを達成します。デバイスによっては、大規模なリクエストサイズのランダムアクセスで、ほぼシーケンシャルスループット率を実現する可能性がありますが、純粋なシーケンシャルアクセスと異なる場合は、より多くのペナルティーを受けることになります。
  • ランダム書き込みは、ポイント Y でピークスループットを達成します。ランダム書き込みは、重複排除デバイスの相互作用が最も多く、VDO は、特に要求サイズや I/O 深度が大きい場合に高いパフォーマンスを実現します。
このテスト図31.3「要求サイズとスループットの分析、および重要な変曲点」の結果は、ストレージデバイスの特性や、特定のアプリケーションのユーザーエクスペリエンスを把握する上で役立ちます。異なるリクエストサイズでパフォーマンスを向上させるためにさらに調整が必要な場合は、Red Hat セールスエンジニアに相談してください。

図31.3 要求サイズとスループットの分析、および重要な変曲点

要求サイズとスループットの分析、および重要な変曲点