26.5. ソリッドステートディスクの調整に関する考慮事項
ソリッドステートディスク (SSD) は、回転磁気プラッターではなく、NAND フラッシュチップを使用して永続データを保存します。SSD では、論理ブロックアドレス範囲全体で、データへのアクセス時間が一定になります。回転式の同等のデバイスとは異なり、測定可能なシークコストは発生しません。
SSD は 1 ギガバイトあたりのストレージ容量のコストが高く、ストレージ密度が低くなります。ただし、ハードディスクドライブ (HDD) よりもレイテンシーが低く、スループットが高くなります。
SSD の使用済みのブロックが、ディスク容量を占有してくると、通常パフォーマンスは低下します。パフォーマンスの低下レベルはベンダーによって異なりますが、このような状況では、すべてのデバイスでパフォーマンスが低下します。破棄動作を有効にすると、この低下を軽減できます。
デフォルトの I/O スケジューラーと仮想メモリーのオプションは SSD 使用に適しています。設定時には、SSD のパフォーマンスに影響を与える可能性がある以下の要素を考慮してください。
I/O Schedulerどの I/O スケジューラーも、ほとんどの SSD で良好なパフォーマンスを発揮することが予想されます。ただし、他のストレージタイプと同様に、ベンチマークテストを実施して、特定のワークロードに最適な設定を決定する必要があります。SSD を使用する場合は、特定のワークロードのベンチマークを行う場合にのみ、I/O スケジューラーを変更してください。
I/O スケジューラー間の切り替え方法は、
/usr/share/doc/kernel-version/Documentation/block/switching-sched.txtファイルを参照してください。シングルキューのホストバスアダプター (HBA) の場合、デフォルトの I/O スケジューラーは
deadlineです。マルチキューの HBA の場合、デフォルトの I/O スケジューラーはnoneです。Virtual Memory-
I/O スケジューラーと同様に、仮想メモリー (VM) サブシステムには特別なチューニングは必要ありません。SSD の I/O は高速であるため、
vm_dirty_background_ratioとvm_dirty_ratioの設定値を下げることをお試しください。書き出しアクティビティーが増加しても、通常、ディスク上における他の操作のレイテンシーに悪影響が及ぶことはありません。しかし、このチューニングを行うと、全体的な I/O が増加する可能性があります。そのため、ワークロード固有のテストを行う場合を除き、このチューニングは一般的には推奨されません。 Swap- SSD はスワップデバイスとしても使用でき、ページアウトおよびページインのパフォーマンスが向上する可能性が高くなります。