RAMディスクとSSDの歴史
突然ですが、ぼくはRAMディスクが好きです。大好きです。
メモリを仮想的にドライブに見せかける技術だなんて、はじめて聞いたときにはワクワクが止まりませんでした。
若い頃に「PC98とDOS/V機でI/Oを叩けてOS管理外の拡張メモリを活用できるプログラムを組める人」という募集要項にピンポイントで当たってそれはもう思う存分メモリを操作するプログラムを書きまくって、こんな好きなことやって高い給料もらえるのうっれしー!と舞い上がっていた頃があるからかも知れません。EMSとかXMSとか大好物です。
まぁそれはそれとして、今回はWindows 10でも使えるRAMディスクツールについて紹介するつもりだったのですが、前置きを書いているだけで膨大な分量になってしまったので、記事を2回に分けます…。
RAMディスクの流行り廃り
3GBの壁があった時代
ぼくの記憶が確かなら、RAMディスクが最も注目を浴びたのは32bit時代だったと思います。Windows 32bitだとメモリが3GBまでしか認識できず、4GB以上搭載しているPCではメモリが無駄になってしまうため、余っている領域を活用しよう!となったわけですね。
ならそもそも3GBにしておけよ、と思うかも知れませんが、メモリにはデュアルチャネルという機能があり、同容量のメモリを2枚挿すことで、同時に読み書きを行い、転送速度を2倍近くにする技術があります。
そのため、3GBメモリを1枚挿すよりも、2GBメモリを2枚挿したほうがパフォーマンス的に有利なわけです。そうして、32bit OSでは3GBまでしか認識できないのに2GBメモリを2枚積んだPCがたくさん売られていました。もちろんぼくのようなPC自作マニアも好んでメモリを2枚挿ししていました。
そして、余った1GB部分を遊ばせておくのももったいない、ということでRAMディスクソフト(主にデバイスドライバーとして動作する)でOS認識外の1GBを仮想ドライブとし、そこをブラウザのキャッシュやテンポラリファイル、あるいは作業場所として活用しはじめたわけです。
しかし、64bit OSが普及したことで、RAMディスクの需要はいったん落ち着きました。
ぼくみたいな公私共にPCが大好きな人間はそれこそMS-DOSの時代からRAMディスクを作業用の便利な仮想ドライブとして使ってきましたが、一般の人にとってはあまり馴染みがないですし、電源を落としたら消えてしまうドライブなんて怖いので使わなくて済むならそのほうが良いのでしょう。
電源を落としたら消えてしまうという特性がセキュリティ的には美味しいんですけどねー。
SSDのプチフリーズがあった時代
ともあれ、いったん下火になったRAMディスクですが、SSDの登場でまた脚光を浴びます。
まず第一にSSDが登場したばかりの頃はプチフリーズ問題がありました。これはOSの節電機能による問題と、SSDのコントローラーの問題の2つに分かれていました。(どちらもユーザーが感じる現象としてはプチフリーズになる)
前者についてはOSの設定変更で解決できたのですが、後者については短時間に多くの書き込みが発生すると一時的に処理がストップしてしまうというコントローラー上の問題だったため、RAMディスクによる回避策が提案されました。
ブラウザのキャッシュや、OSやアプリが書き込むテンポラリファイルをRAMディスクへ移動することによりシステム全体での書き込み回数を減らすのが目的ですね。これで完全にプチフリーズがゼロになるわけではありませんが、体感としてはだいぶマシになりました。
その後、コントローラーの不具合は解消され、OS自体もアップデートしてPCに搭載されているストレージがHDDなのかSSDなのかを判定できるようになったため、節電方法などもそれに合わせてOSが適切に処理してくれるようになりました。
(XPの頃はServicePackをあてたセットアップディスクを作ってからインストールしないとSSDが正常動作しないとかあったんですよ)
ということで、最初の「余っているメモリ領域を使う」という理由も、次の「プチフリーズを回避する」という理由もなくなった関係でRAMディスクの需要はだいぶ下がったようです。
SSDの書き込み上限に怯えた時代
SSDはその特性上、書き込み回数におおよその上限があります。それを超えるとエラー発生率が格段に高くなり、読み込みはまだしも書き込みでは頻繁にエラーが発生するようになるんですね。
そのため、SSDの寿命を伸ばすためにRAMディスクを使おう!という特集記事などが持て囃されていました。
たしかに2014年頃まではSSDの寿命は5年くらいと言われていました。PCを毎年のように買い換えるような人にとっては5年も持てば十分ですが、そこまでPCにお金をかけない人にとっては5年って微妙に短い気もしますよね。
これは当時、SSDの書き込み上限※は30~40TB(テラバイト)とされており、1日20GBの書き込みをしたら5年くらいだよね、と単純計算(20GB×365日×5年=36,500GB=36.5TB)された結果だったのですが、ふつーの人が1日平均20GBものデータを書き込みますかね…?
※SSDの書き込み上限はTBW = Terabytes Written という単位でスペックシートに記載されています
更に、SSDの耐久テストをする個人や雑誌社も現れ、実はSSDの耐久性って思った以上にあるぞ、というのがわかってきます。2014年の時点ですら、人気の6機種でテストをして、もっとも少ないモノでも700TBの書き込みに耐えたというテスト結果があります。1日平均10GBの書き込みがあっても190年かかる計算ですよ…。
ちなみに、「M.2 SSDが早すぎてぶったまげた」で紹介した我が家のM2.SSD (WDS500G2X0C) でもTBWは300TBです。実際はスペックシートの倍以上の耐久性があるのが普通っぽいですが、仮にスペックシートどおりだったとしても1日平均20GBの書き込みで40年以上持つので、ぼくの寿命がくるほうが早そうです(;´∀`)それでもやっぱりRAMディスクが好き
「余っているメモリ領域を使う」という理由も、「プチフリーズを回避する」という理由も、「SSDの寿命を延ばす」という理由すらもほとんどなくなったのですが、それでもやっぱりぼくはRAMディスクが好きです。
まず第一に、RAMディスクの特性として作業ファイルの消し忘れがありません。だって、電源切ったらRドライブはまっさらになるんだもの。マイコンピュータの下にダウンロードというフォルダがありますが、ブラウザでダウンロードしたファイルが溜まってしまっていたりしませんか? ダウンロード場所をRAMディスクにしておけばそんなこともありません。なにせ消えるので。
うちにあるRAMディスクを作れないくらいメモリが少ないPCではダウンロードフォルダにいろんなZIPが置き忘れ状態になっていたりしますw 気がついたときには消すようにしているのですが、それでもホント、いつのまにかダウンロードしたまま忘れてしまっているんですよね…。
第二に、メモリって意外と有効活用されていません。巷ではChromeブラウザがメモリをバカスカ食いすぎだとか言われていますが、個人的にはどんどん使って早くしておくれ、と思います。いえね、そりゃ4GBくらいしか積んでいないタブレットPCだと気になるので省メモリモードで動いて欲しいですけど、いまどきのデスクトップPCってメモリ16GBくらい積んでませんか。でも、8GB以上ではアプリケーションやゲームのパフォーマンスにほとんど影響がないっていうテスト結果もあるくらいなんです。(激重の最新3Dゲームでも8GB以上のメモリ領域はほとんど使わないとか)
うちにあるPCは32GBほど積んでいるのばかりですから、実に24GBも無駄にしてるじゃないですか!そんなの使ってあげないともったいない。
そして第三に、RAMディスクはどんなストレージよりも高速です。まぁ、M2.SSDの登場で、3,000MB/secというとんでもないストレージが存在する時代になってしまいましたので、この理由はかなり弱くなってしまいました。が、一応まだかろうじてw RAMディスクのほうが早いです。また次回の記事で掲載しようと思いますが、うちのRAMディスクの実測値ではRead 6,128MB/s Write 12,195MB/sというベンチマーク結果が出ています。
もうね、3,000MB/s超えると体感じゃわかんないですけどね…。どっちもはやいなーとしか…。
無理やりまとめ
今回はRAMディスクソフトの紹介とかする予定だったのですが、RAMディスクとSSDの歴史を熱く語っているうちに異様に長くなってしまったので、具体的なソフトの紹介や使い方はまた次の機会にしたいと思います。
計画性がなくてごめんよ!(*ノェノ)