質問:RAM DiskとSDシリーズ(シリコンディスク)の違いは?

答え:

     RAM Diskは、メインメモリの一部をソフト的にディスク装置として使用するものです。これに対し、弊社シリコンディスク、SDシリーズは、外部ディスクと全く同等に見える外部記憶装置です。以下ではそれぞれの利害得失を述べます。

    RAM Disk

     外部記憶装置をアクセスするオーバーヘッド(SCSIアクセスオーバーヘッド等)がないため、その分コマンドオーバーヘッドが小さいです。特に1セクタアクセス等では、RAM Diskが有利です。

     RAM Diskは、メインメモリの一部を使うため、4GBまでしかメインメモリのアドレス空間のない32ビットCPUの場合には、あまり有効な方法ではありません。また、メインメモリではなく、バンクメモリのような特殊なメモリを使う場合には、一般にメモリのアクセス速度がメインメモリと比べて遅い(例えば、PCIバス経由の場合、2〜20倍程度遅い)ため、性能は特殊メモリのアクセス速度に依存します。ただし、64ビットCPUの場合には、アドレス空間上の問題はありません。

     RAM Diskでは、RAM Disk空間と、対象のメモリ空間の間で、CPUがメモリ間ムーブを行います。したがって、CPUリソースを消費するのと同時に、データの転送においては、メモリリードサイクルとメモリライトサイクルの2つのメモリサイクルが必要です。また、一般的にDMAアクセスと比べてメモリアクセスの単位が小さいため、3〜5倍程度のメモリバススループットを消費します。

     RAM Diskは、多くのリソースを占有するため、複数のプロセスが実行されている場合、他のプロセスの実行速度が低下します。複数CPUの場合でも、RAM Diskプロセスは、メモリバス占有率が高いので、トータルスループットは低下します。

     メインメモリは、RAMカードの増設が必要であったり、上位機種に変更する必要があるなど、高価になります

    SDシリーズ(外部接続半導体ディスク)

     SCSIアクセスオーバーヘッドが、かかります。実際のSCSIアクセスは、SCSIコントローラが実行しますが、SCSIコントローラに対する起動終了処理が発生します。

     データ転送は、DMAで実行されるため、(ディスクリードの場合)メモリライトサイクルか、(ディスクライトの場合)メモリリードサイクルの片方だけが発生します。また、一般的にCPUアクセスよりも大きな単位でメモリアクセスされるため、メモリバスの占有率が少なくてすみます。

     リソースの占有量が少ないため、SCSIアクセス中の他のプロセスに対する影響は、軽微です。

     弊社シリコンディスク、SDシリーズは、コストパフォーマンスが極めて優れています。大容量モデルの場合、一般的に、ワークステーションのメインメモリを増設するよりも安価です。

     上記のように、RAM Diskと、シリコンディスクの速度は、種々の条件に影響されますが、1セクタ(512バイト)単位のディスクアクセスでは、RAM Diskの方が高速で、(データベースアクセス等で、多用される)4KB単位程度のディスクアクセスにおいては、RAM DiskとSDは、同等程度の速度で、それ以上大きなサイズのディスクアクセスにおいては、RAM Diskよりもシリコンディスクの方が、高速になる場合が多いと考えています。

     また、同時動作プロセス数が多い程、SCSIコントローラによりバックグラウンドで処理されるシリコンディスクの方が、高速になります。

Last Updated by Webmaster@texa.co.jp on All right reserved.