[運用]
RAMディスク導入ガイド

2.RAMディスクのメリットとデメリット

元麻布 春男
2009/01/22

RAMディスク活用のメリット/デメリット

 メモリが安いからといって、32bit版WindowsのデスクトップPCに8Gbytesのメモリを実装しても、そのうちの4.5〜5Gbytesが使えない。大半のノートPCで上限になる4Gbytesのメモリを実装しても、そのうちの0.5〜1Gbytesは使えない。しかし、このOSの管理外にあるメモリをRAMディスクにできれば、使い方によっては性能向上が実現できるというわけだ。

4Gbytesを搭載したノートPCの[システムのプロパティ]画面
このノートPCには、実際には4Gbytes(2Gbytes×2)のメモリが搭載されている。しかし32bit版Windows Vistaは、3318Mbytes(3.24Gbytes)しか認識していない。つまり約780Mbytesは、使えないメモリということになる。
32bit版Windows Vistaが4Gbytesのうち、3318Mbytes(3.24Gbytes)しか認識していないことが分かる。

 PCのメイン・メモリをRAMディスクとして使う場合、電源はPC本体と連動することになるため、PCをシャットダウンすることでデータが失われる。RAMディスクを設定するユーティリティがOS上のアプリケーションやデバイス・ドライバとして動作するため、当然、OSをRAMディスクから起動することはできない(OSが起動するまでRAMディスクは存在しない)。

 これに関連して、一般にパワーマネジメント(省電力管理)との相性もよくない。休止(ハイバネーション)やスタンバイ(スリープ)はサポート(保証)されていないことが大半だ。クライアントPCでは使われるメモリ・モジュールそのものがエラー訂正機能をサポートしていないため、信頼性も十分とはいえない。ソフトウェア・エラーなどにより1bitの誤りが生じても、データの信頼性を失ってしまう。

 その一方、PCのメイン・メモリをRAMディスクに割り当てるメリットは、何といっても高速なストレージが手に入るということだ。SATAやUSBといったインターフェイスを利用することになる外部ストレージに対し、メモリ・コントローラに直結したメイン・メモリをストレージに使うのだから、これ以上高速なストレージ・デバイスはない。それも、使われていないメモリをソフトウェアによってストレージに見せ掛けるものであるため、コストが最小限で済む。特に、OSが認識できていないメモリを転用するのであれば、ハードウェアに関する追加コストはゼロになる。

 以上をまとめると、メイン・メモリの一部をRAMディスクに用いることの欠点と利点は次のようになる。

[欠点]
・容量が限られる(現時点では事実上最大5Gbytes)。
・信頼性が必ずしも十分とはいえない。
・シャットダウンでデータが失われる。
・OSが起動するまでRAMディスクを利用できない。
・省電力管理で問題が生じることがある

[利点]
・利用されていないメモリを使うため安価である。
・メイン・メモリを利用するため極めて高速である。

 これらの欠点のうち、シャットダウンでデータが失われる問題については、シャットダウン前にデータをハードディスクに書き戻すことで回避することができる。が、これがうまくいくのはあくまでもOSが正常に動作しているときだけであり、ブルースクリーンやリブートあるいはフリーズなどが発生すると、書き戻しができなくなる。例えば、Outlookの個人用フォルダ・ファイル(.PSTファイル)をRAMディスク上にコピーすることで、メールの読み書きや検索を高速化できるが、何らかの障害によってブルースクリーンやリブートなどが発生すると、それまで受信したメールなどが失われる危険性がある点に気を付ける必要がある。同様に、RAMディスク上にソースコードを置くことで、コンパイルの高速化を図ることが可能だが、開発中のまだ不安定なプログラムによりシステムが落ちると、ソースコードまで失われてしまいかねない。現実問題としては、これらには何らかの運用上の対応が必要になるだろう。

 恐らくメイン・メモリを転用したRAMディスクの使い方として最もふさわしいのは、万が一消えてしまっても構わない、一時的なデータの置き場所として利用することだ。Internet Explorer(IE)の一時ファイル、TEMPやTMPといった環境変数で指定されるテンポラリ・ファイルのフォルダ、あるいはアプリケーションで指定可能なワークエリアなどをRAMディスク上に確保するのは容易である。

RAMディスク・ユーティリティを試す

 さてここからは、実際にアイ・オー・データ機器のRamPhantom3(ラムファントム3)とフリーソフトウェアのGavotte Ramdisk(ガボット・ラムディスク)の2つのRAMディスク・ユーティリティを取り上げ、使い勝手について紹介することにしよう。ここで用いたシステムは、下表のような構成である。RAMディスクとの性能比較用に、現在最もポピュラーなハードディスクの1つであるSeagateのBarracuda 7200.11の1Tbytesモデル(ST31000333AS)と、高性能で知られるIntelのメインストリーム向けSSD(半導体ディスク)であるX25-M Mainstream SATA SSD 80Gbytesの2つを用意した。

プロセッサ Core 2 Extreme QX9650
(3.0GHz、FSB:1333MHz、2次キャッシュ:12Mbytes)
マザーボード GIGABYTE GA-EP35-DS3R
メモリ 2Gbytes DDR2-800×4
グラフィックス RADEON HD 4850
ブートHDD 日立GST HDS722580VLSA80 (SATA)
サウンド REALTEK ALC889A
LAN REALTEK 8111B
OS Windows XP Professional SP3
比較用HDD Seagate ST31000333AS
比較用SSD Intel X25-M SATA SSD
テストに用いたシステムの構成
このシステムの場合、OS管理内メモリが3582Mbytes(約3.5Gbytes)、OS管理外メモリが4608Mbytes(4.5Gbytes)となる。


 INDEX
  [運用] RAMディスク導入ガイド
    1.いまRAMディスクが注目される背景
  2.RAMディスクのメリットとデメリット
    3.細かい部分が配慮されたRamPhantom3
    4.上級者向けだが性能の高いGavotte Ramdisk

 運用


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間