
市販の SSD の中には最高 4GB/秒の書き込み速度が可能なものがあると読んだことがありますが、現在の DDR4 RAM の速度は 15GB/秒から 25GB/秒の間なので、そう遠くないということです。実際、RAM はすでに RAM ディスクなどの仮想ドライブとして使用できます (ただし揮発性です)。また、一般的な SSD の耐久性は、大げさに言えばそれほど高くないことも知っていますが、その根底にある機械的な理由はまだ理解していません。
では、SSD を RAM として使用できない理由と違いは何でしょうか。特に、RAM セルが NAND セルに比べて高速で耐久性があるのはなぜでしょうか。また、RAM の GB あたりのコストが SSD よりも高いのはなぜでしょうか (おそらく関連があるのでしょう)。
ありがとう。
答え1
結局のところレイテンシー。
DDR4のレイテンシはナノ秒通常は 20ns 未満です。
SSDのレイテンシはマイクロ秒最も速い SSD は 25μs 程度です。
1μs = 1000ns。最速の SSD のレイテンシは DDR4 の 1000 倍長くなります。
さらに重要なのは、RAMは実際には遅すぎる、つまり L1 キャッシュと L2 キャッシュが上に存在します。DRAM にアクセスするたびに、データ フェッチを待つために約 100 サイクルが無駄になります。そのため、頻繁にアクセスされるデータの場合はオン CPU キャッシュを使用してこれを 10 サイクル未満に減らします。代わりに 100,000 サイクル待つことを想像してみてください...
もう一つの関連する要因はランダムアクセス時間。4GB/秒とありますが、これはシーケンシャル速度です。ランダム読み取りでは 50MB/秒程度、ランダム書き込みでは 150MB/秒が上限です。また、RAM は書き込みよりも読み取りのほうがはるかに多くなります。
DRAM と比較すると、SSD は 1 秒あたりの操作数の増加ではなく、高スループットに最適化されています。別の例として、SSD の消去ブロックは非常に大きいため、多数の小さなチャンクを書き換えるにはコストがかかります。
そこにははギャップを埋めるテクノロジー。3D XポイントIntel のブランドである Optane は、NAND (SSD) よりも高速で、DRAM よりも安価です。
答え2
SSD と RAM: SSD をメモリとして使用する場合のコスト/耐久性の違いと制限は何ですか?
コスト、耐久性、パフォーマンス(レイテンシなど)の比較は、SSDを(メイン)メモリやRAMとして使用することはできないため、実際には無関係です。重要な違いの1つは、RAMがバイトおよび/または言葉アドレス指定可能。SSD や HDD などの大容量ストレージ デバイスは、セクター アドレス指定のみ可能なブロック デバイスです。
ブロック デバイスから 1 バイトまたは 1 ワードだけを読み書きすることはできません。ブロック デバイスからまたはブロック デバイスに読み取りまたは書き込み操作を実行するには、(物理) ブロック全体 (セクターとも呼ばれる) を読み書きする必要があります。CPU と大容量ストレージ デバイスの間でブロックをバッファリングするには、RAM が必要です。
結論: RAM をブロック デバイスに単純に置き換えることはできません。
コードとデータをSSD/HDDにコピーしてメインメモリとして使用されている既存のRAMの容量を拡張しようとすると、基本的には仮想メモリ(メモリ管理ユニットも必要になります)。
付録
パフォーマンス(レイテンシ、スループットなど)を比較するその他RAM技術とSSD技術を比較して、「SSD を RAM として使用できない理由」無関係なので、誤解を招きます。大容量ストレージ ブロック デバイスは、メイン メモリとしての RAM の代替としては互換性がありません。
私の意見では、これは「水分補給するにはピザをどれくらい食べればいいですか?」と尋ね、その答えとしてさまざまなピザのトッピングの水分含有量を挙げるようなものだと思います。しかし、正しくて簡単な答えは、ピザは飲料水の代わりにならないということです。
同様に、ブロック インターフェイスを備えた SSD は、コンピューターの RAM の代わりにはなりません。言い換えれば、正しい答えは、パフォーマンスの数値を比較するのではなく、コンピューターのアーキテクチャの概念に基づいています。
RAMセルがNANDセルに比べて高速で耐久性に優れている理由
あなたはリンゴとオレンジを比較しようとしています。
RAM (ランダム アクセス メモリ) は、メモリの機能的な分類です。この頭字語はテクノロジを特定するものではありません。つまり、メイン メモリの RAM は、現代の PC では一般的に SDRAM の一種です。古いコンピュータでは、RAM にフェライト コアが使用されていました。
経済的な理由から、速度が速いほど容量が少なくなり、速度が遅いほど容量が多くなるのが一般的です。一般的なコンピュータには、メインメモリ用のSDRAM(通常はRAMと略されます)とCPUキャッシュ用のSRAMが搭載されています。SRAMはSDRAMに比べて非常に高価ですが、はるかに高速です。SRAM が DRAM より高速なのはなぜですか?SRAMがSDRAMより高速である理由については、こちらをご覧ください。組み込み機器や、他の種類のコンピュータ(例えば、クレイX-MP。
NAND はフラッシュ メモリのテクノロジです。NAND フラッシュ (チップ レベル) は通常、ブロック デバイスとしてアクセスする必要があることに注意してください。
なぜ (...) RAM は SSD よりも GB あたりのコストが高いのでしょうか?
同じ比較です。供給と需要 (パフォーマンスによって左右されます) は価格設定に大きな影響を与えます。さらに、製造プロセスが異なることも影響します。SDRAM チップをそのまま SSD に組み込んで終わりにすることはできません。
たとえば、RAM ディスク (ただし揮発性)。
RAMはランダム・アクセス・メモリ揮発性についての仮定や特徴づけはありません。実際、覚えているほどの年齢であれば、1980 年代までのコンピューター (PC ではありません) は (不揮発性) フェライト コア メモリを使用していました。バッテリー バックアップのスタティック RAM は、不揮発性の (メイン) メモリを実装するもう 1 つの方法です。RAID カードなどの一部のデバイスでは、今日でも実際にこのようなメカニズムが必要です。
メイン メモリに (現在普及している) (同期) ダイナミック RAM を使用することと、その揮発性という特性が、RAM と揮発性という (よくあるが) 誤った関連付けにつながっています。
- RAM は (一般的に) (同期) ダイナミック RAM によって実装されます。
- (S)DRAM は揮発性です。
- したがって、RAM は揮発性です。これは不適切 (誤りではないにしても) な三段論法です。
答え3
コンピュータのデータ ストレージは、常にマルチレベルです。従来は、最速から最遅、最小容量から最大容量、バイトあたりのコストが最大から最低の順になっています。
- CPUレジスタメモリ
- L1キャッシュメモリ
- L2..L4 キャッシュメモリ
- システムメモリ
- ディスク(SSDを含む)
- リムーバブルディスク
- テープ
すべてのシステムにこれらのレベルがすべて備わっているわけではありません。最初のシステムには CPU レジスタとテープしかありませんでした。今日のシステムにはテープが備わっていないのが一般的ですが、テープは今でも健在で、消えたわけではありません。
もう少し詳しく説明すると、CPU レジスタ メモリと L1 キャッシュは通常 SRAM で、電力を大量に消費し、サイズも大きくなりますが、非常に高速です。後続のキャッシュ メモリは CPU からどんどん離れ、オーバーヘッドも大きくなり、他の CPU コアと共有されることもあるため、速度は遅くなります。システム メモリはさらに低速です。システム メモリは現在 DRAM です。
通常、レベル間の速度差は 4 ~ 10 倍程度なので、15G/s の RAM と 4G/s の SSD が「近い」と言うのは正しくありません。これは大きな差であり、レベル間の速度差としては一般的です。
この状況を変える将来の技術が登場しています。次の有望な技術は MRAM です。これは、ビットあたりのトランジスタ数が SRAM より少なく、速度は SRAM とほぼ同じで、DRAM よりはるかに高速です。さらに、これは不揮発性であるため、不揮発性メモリの方が遅いという説はもはや当てはまりません。問題は、MRAM がまだ成熟しておらず、SRAM よりトランジスタ数が少ないにもかかわらず、まだ十分に縮小されていないため、サイズが大きいことです。
実際、初期の「高速」メモリの 1 つはコア メモリであり、これも不揮発性であるため、プライマリ メモリに不揮発性メモリが使用されるのはこれが初めてではありません。