オーバープロビジョニング (OP) の利点

OP により SSD の耐久性を向上させる方法

各 NAND フラッシュメモリのダイは、更に複数のページを含んだ複数のブロックで構築されます。

NAND フラッシュはページレベルで読み書きが可能ですが、イレーズはブロックレベルでのみ可能です。

あるブロック内のすでにプログラミング済のページで、単一ページの変更またはイレーズが必要な場合は、複数のページから成る全体のブロックコンテンツを最初に一時メモリに読み出し、新しいブロックコンテンツを同じブロックアドレスにプログラミングできるようにする前に、イレーズしなければなりません。

このような「冗長な」読み出し~変更~書込みサイクルを行わずに、NAND フラッシュ内のブロックにページを直接書き込むことができる唯一の方法は、ページを空き状態にしておくことです。

多数のブロックを空き状態に保ったまま、オーバープロビジョニングでパフォーマンスを一定に維持することにより、特にランダム書き込みのシナリオでは、最も高い書き込み増幅率 (WAF) が得られます。{{Footnote.N52105}}

SSD の耐久性を向上させる方法

オーバープロビジョニングを用いて SSD を構成する理由と、SSD コントローラに対する利点を理解するには、SSD の基本的な動作方式と、不揮発性の NAND フラッシュメモリの制限事項をよく理解する必要があります。

それぞれの NAND フラッシュセルは、そのプログラムとイレーズ回数 (P/E) に基づいた有限の予想寿命を持っており、NAND フラッシュメモリのメーカーでの製造行程時に特徴付けられます。これは NAND フラッシュセルで実行される各プログラムおよびイレーズ機能が、フラッシュセルの記憶や電荷の信頼性を低下させ、結果的にデータの整合性を脅かすことになるためです。

しかし NAND の構造が平面から立体に移行するにつれて、NAND の耐久性が向上するとともにダイの密度が高くなり、また製造コストが低下したため、SSD が手頃な価格になっています。

要約すると、SSD の耐久性に影響する主要要素は、以下の3つです:
  • NAND フラッシュのプログラミング/イレーズ回数、および読み取り/プログラミング/イレーズ動作の難易度 (この場合のジオメトリーには、2D 対 3D の製造テクノロジーが含まれます)
  • SSD 容量
  • SSD コントローラの容量と効率 (ガーベジコレクション、書き込み増幅率、ブロック管理、ウェアレベリング、誤り訂正符号)

OP による性能と耐久性の維持

SSD が無効なページで一杯になるような状況を避けるために、SSD のガーベジコレクション機能により、一時的な作業スペースとして性能設定領域が用いられ、予定された有効なページのマージを管理し、無効な (または削除された) ページで満たされたブロックが取り戻されます。

取り戻されたページ/ブロックはその後で性能設定の容量に追加され、SSD コントローラからの書き込み動作に対応し、またトラフィック負荷のピーク時にパフォーマンスを最大化します。読み取り、イレーズ、変更、および書き込みの性能上の影響として、すでに無効なページで満たされて部分的に一杯になったブロックに戻されたすべての有効なページは、実行速度が遅くなる可能性があります。

ガーベジコレクションはオペレーティングシステムとは独立して動作し、活動性が低い時に定期的に、自動的にトリガーされるか、またはガーベジコレクションの予定を決めるために、対応する ATA データセット管理の TRIM コマンドの発行によりトリガーされます。

SSD コントローラはトラフィック負荷のピーク時に SSD の全体性能に影響を与えずに、すべての NAND フラッシュメモリセル間で書き込み動作のインテリジェントな再分配を行うため、性能設定機能を介して常に利用可能な空きブロック数が、NAND フラッシュの有効なウェアレベリングの維持を支援することになります。

また ATA データセット管理の TRIM コマンドは、無効なページや使用しないユーザーの容量を取り戻すことにより、SSD の利用可能な領域に追加することができます。

Formatted Drive CapacityOver-Provisioning SizeSequential Read/WriteSteady-State 4k Read/WriteTBW (JEDEC Enterprise{{Footnote.N52105}})DWPD{{Footnote.N37134}}
480GB (DC500R) 7% 550/500MB/s 98,000/12,000 IOPS 438 0.5
480GB (DC500M) 32% 555/520MB/s 98,000/58,000 IOPS 1139 1.3
960GB (DC500R) 7% 555/520MB/s 98,000/20,000 IOPS 876 0.5
960GB (DC500M) 32% 555/520MB/s 98,000/70,000 IOPS 2278 1.3
1920GB (DC500R) 7% 555/520MB/s 98,000/24,000 IOPS 1752 0.5
1920GB (DC500M) 32% 555/520MB/s 98,000/75,000 IOPS 4555 1.3
3840GB (DC500R) 7% 555/520MB/s  98,000/28,000 IOPS  3504  0.5
3840GB (DC500M)  32% 555/520MB/s  98,000/75,000 IOPS 9110  1.3
Over-provisioning based on capacity and application class

OP の効果を理解するために、イラストの Kingston 製エンタープライズ SSD の DC500R SSD を検討します。これらの SSD は最大容量が 3.84TBで、各ユーザーは Kingston SSD Manager ツールを使用して、オーバープロビジョニングを調整できます。OP のサイズを調整することにより、7% 以上の OP レベルで、パフォーマンスと耐久性向上の効果を得ることができます。

各ペアの容量を比較すると、次のようになります。
  1. 各ペア内の大容量ドライブ (低い OP) は、同じ転送速度 (帯域) を維持できますが、IOPS (ランダム書き込み IO/秒) は大きく低下します。これは、OP が低い各ドライブは読み取りが集中するアプリケーションにおいて良好でも、 32% OP のドライブで比較した場合、書き込みが集中するアプリケーションにおいては動作が遅くなる可能性があることを意味します。
  2. またオーバープロビジョニングが低いことは、各ドライブの書き込みバイト総数 (TBW) が低下することを意味します。OP のパーセント値が大きくなるほど、SSD の寿命は長くなります。960GB の DC500R は、最大 876TB のデータ書き込みが可能で、800GB の DC500R は 860TBW を達成可能です。Kingston の書き込みバイト総数 (TBW) は、JEDEC Workload Reference{{Footnote.N52105}} に基づきます。
  3. 保証期間を通じて TBW 値を DWPD (1日あたりのドライブ書き込み数) に変換した場合、 32% の OP を持つドライブは、1 日あたりの書き込み数の約 2 倍に達します。書き込みが集中するアプリケーションで、 32% の OP が推奨されるのはこのためです。