SSDのパフォーマンスをボトルネックにするコンポーネント

SSDのボトルネック

ソリッドディスクが従来のメカニカルディスクに代わる優れたパフォーマンスであることは間違いありませんが、パフォーマンスを制限し、最高速度と最適な動作に到達するのを妨げる要素がないわけではありません。 どれが コンポーネント それは原因となる可能性があります ボトルネック そしてすべてではない SSD 同じように実行します。

ソリッドステートデバイスにはさまざまな種類があり、あらゆる種類のストレージ容量、インターフェイス、フォームファクターなどをカバーしていますが、すべてが同じように動作するわけではなく、従来のハードドライブよりも優れている場合もあります。 彼らは他よりも多いです。

SSDボトルネック

SSDボトルネックスタック

ソリッドドライブの制限が何であるかをよりよく理解し、そのような異なる仕様がある理由をよりよく理解できるように、さまざまなSSDのパフォーマンスに影響を与えるいくつかのボトルネックをリストすることにしました。

SSDとシステムの通信

SSDをPCに接続するインターフェイスに応じて、ソリッドディスクとシステム間の転送速度がインターフェイスのプロトコルによって異なるため、パフォーマンスが向上または低下します。

SATAIIインターフェイスの理論上の帯域幅は300MB / sのままですが、最新のSATAIIIは600MB / sで確立します。これは、同じ条件下でメカニカルハードディスクが到達する帯域幅よりもはるかに高いためです。回転するディスクフォーマットでは、200MB /秒に達することはできません。

現在、すべてのマザーボードはSATA IIIをサポートしていますが、その速度はPCIExpressインターフェイスの速度と同じではありません。PCIExpressインターフェイスの3.0バージョンでは1回線あたり最大3GB /秒に達するため、PCIe Gen4x4を使用するSSDは理論的に4.0GBに達することができます。 / s。 この帯域幅は、PCIeラインあたり2 GB / sの標準バージョン4の場合、4倍になるため、他の要素が速度を制限しない場合、PCIe Gen8 xXNUMXSSDはXNUMXGB / sに達する可能性があります。

SSDに組み込まれたDRAM

DRAMレスボトルネックSSD

ほとんどのSSDにはDRAMが組み込まれています。 中間データキャッシュとして使用されるのは従来のRAM(DDR4、LPDDR4、…)です。 より高い帯域幅のおかげで、これにより、クライアントプロセッサによるSSD上のデータへの/からのデータへのより高速なアクセスが可能になります。 使用するDRAMメモリの種類によって、パフォーマンスは異なります。

ただし、一部のSSDはDRAMなしで販売されており、RAMがないため、安価です。 これらは、従来のハードドライブよりも高速であるという特徴がありますが、DRAMがないため、DRAMメモリが統合されたSSDよりもはるかに低速になります。

SSDコントローラーはボトルネックになる可能性があります

すべてのSSDには、プロセッサからの要求の受信を担当するチップがあり、SSDのメモリ内のデータの検索を管理します。 このチップがどのように機能するかを理解するために、あなたが郵便局に行き、特定の箱であなたの郵便物を見つけてあなたに持って来るようにマネージャーに頼むと想像してください。 または、それが失敗した場合は、特定のロッカーにメールを保存するように彼に依頼します。

この比喩では、郵便局がSSDのコントローラーになり、ボックスオフィス番号がSSDのメモリアドレスになり、メールがそのメモリアドレスに保存されるデータになります。 SSDのパフォーマンスは、ソリッドディスクに統合されたコントローラーのパフォーマンスにも依存します。

SSDがサポートするチャネル

SSDの壊れたボトルネック

現在、自宅にあるすべてのPCはマルチコアであり、これは、並行して動作する複数の仮想CPUがSSDに同時にアクセスする必要があることを意味します。 さらに、DirectStorageの採用により、GPUはSSDディスクのクライアントにもなり、GPUへのプレッシャーが高まり、潜在的なボトルネックが発生します。

SSDにN個のチャネルがあると言うとき、N個の要素がそのデータに同時にアクセスできると言います。一般に、チャネルの数はSSDに含まれるフラッシュメモリチップの数に関連しています。 チャネルごとに複数のチップが割り当てられているソリッドディスクがあることも考慮に入れる必要があります。

SSDに同時にアクセスできるアイテムはいくつありますか? 前のポストマスターの例に戻ると、オフィスにマネージャーがXNUMX人しかいないことがわかった場合、サービスを受けるのを待っている人の列が形成されます。 チャネルは、それぞれが異なる要求に取り組んでいる複数のマネージャーと考えてください。

この問題は、使用されているフラッシュメモリチップが多数のポートをサポートしていないため、同時に複数の要求を実行できない場合に発生します。

SSDコントローラーがデータを整理する方法

SSDにデータを保存する方法もSSDのパフォーマンスに影響します。

「Cat」という単語を保存する必要があり、コントローラー/マネージャーに保存するように指示するとします。 単語の各文字はロッカーを占めています。

  • 最初の方法は、最初の興行収入で利用できるXNUMXつのロッカーに「猫」を保管することです。
  • 4番目の方法は、単語をXNUMXつの部分に分割し、各部分を異なるロッカーに保管しますが、それぞれを異なるロッカーに保管します。

最初の例では、マネージャー/コントローラーはメモリ/ロッカーに4回アクセスして、XNUMX文字を保存できるXNUMXつの空きロッカーを見つける必要があります。 単語を取得する必要がある場合、コントローラー自身がデータのあるXNUMXつのロッカーを探し、それらをXNUMXつずつ持ってくる必要があります。

XNUMX番目の例では、XNUMX人のマネージャーが同時に作業しており、それぞれがロッカー/メモリチップにアクセスでき、すべてに同じロッカー番号が割り当てられています。 それらは同時に機能するため、データへのアクセスはXNUMX回ではなくXNUMX回の検索で取得されます。

これらは、SSDのパフォーマンスを最適とは言えないものにするXNUMXつのボトルネックです。