Vistaの勉強用に購入したInspiron 640mはもはや仕事用PCになってしまったので、あまり遊べなくなってしまった。
いろんなソフトウェアを入れているので仕事には便利なのですが、やっぱりオーバースペックなので、仕事のPCはWindows XPで良いんだけどなぁ…(会社は準備してくれないし…)。
このPCは最大の2GBまでメモリを搭載しているのですが、ウィンドウ切り替え時の画面の描画が若干遅い場合があります。チップセットの内蔵ビデオを使っているし描画が遅いのはしょうがないのですが、仕事に使うのにもたつくのは少し気になるところ。
そんな時にトランセンドの32GB PC Expressカード(TS32GSSD34E-M)が手に入ったので場所も余っているしReadyBoostを試してみました。
GoogleにReadyBoostの評判を聞くと、どうも追加したフラッシュメモリの容量分だけ物理メモリの容量を増やすものという前提で意見が述べられているものが多いように思えました。MSが発行しているReadyBoostを含む"Windows PCアクセラレータ"についてのペーパーによれば、HDDにスワップアウトされたページをReadyBoost用に追加したフラッシュメモリにも配置すると書かれています。つまり物理メモリに収まらない領域が書き込まれるので、確かに2GBのメモリがあれば不要、あるいは効果はあまりないんじゃない?というインターネットでの意見は正しそうに思えます。
ただ問題は物理メモリの2GBよりも多くのページを使っているという事なんですよね。僕の使い方も悪いんでしょうけれど、タスクマネージャーでページファイルをみると2.5GBほど使っています。
さてさて、PC Expressカードスロットに32GBのフラッシュメモリを挿してNTFSに変換してから、プロパティからReadyBoostを有効にしてしばらく使ってみると、気になる事が起きました。もともと資料やバックアップ領域として使おうとしていたのでファイルコピーをしてみると遅い、とても遅い。普通のHDD内の転送は良いのですが、この32GBフラッシュにファイルを転送すると数KBしかスピードがでません…。確かに1つの大きなファイルを転送しているわけではなく、pdumpfsを使っていたりするので、細切れになっているファイルを転送しているからパフォーマンスが悪いのはしかたがないですが、これはひどい。
ただファイルコピーなどで32GBフラッシュを使わなければ、体感速度は若干良くなった気がします。気のせいかもしれないといったところです。NTFSが悪いのかなぁ…。もう使っているので再フォーマットまでして確認するのは止めておきます。
さて32GBを使うのは断念して、余っているSDスロットを使う事を考えました。このInspiron 640mはSD/SDIO対応でSDHC非対応になっています。新しく買うのももったいないので、elecomのClass4 2GB SDカード(MF-FSD02GC4)が余っていたので挿してみます。
SDカードはPC内蔵スロットの転送速度とカード自体のスピードが良くないと、ReadyBoostに対応できないらしいですが、チェックしてみるとあっさりと有効にできました。もっとも1.6GBほどが持っていかれてReadyBoost専用ですが、まぁこっちには都合が良いです。
フォーマットはFATのままで、リソースモニタを使ってD:\ReadyBoost.sfcacheファイルの読み込み、書き込み速度をみてみます。毎分1MB~2MB程度は読み書きが発生して多い時は12MBほど書き込みが発生しています。
この状態でウィンドウをいろいろ切り替えてから、Firefoxのタブを切り替えたりしてみても、特にもたつく感じはなし。SDカードを抜いて同じ事をしてみると、Firefoxのタブの切り替えやVisualStudioの新規ファイルオープンに時間がかかる感じ。
改めてSDカードを挿して、しばらく書き込みが収まるまで放置してみます。うーん書き込みが大量に発生していますが200MBを越えているって本当なんでしょうか。このリソースモニタの表示を疑っちゃいます。タスクマネージャーのページファイルは2500MB前後で物理メモリに収まらないページは500MBぐらいなんだけどなぁ…。まぁ5分くらいしてもあまり変化がないので御飯を食べたり30分ほど放置してから、先ほどと同じような事をしてみます。やっぱり違いがわかるぐらいには反応が良いんですよね。
これを気休めと取るかどうかは、使う人が試して判断すれば良いのだと思います。ただReadyBoostの仕組み自体を考えると、搭載するメモリ量などとは関係なく使えば何かしら利点があるでしょう。体感できるか、払ったコストに見合うかどうかがはっきりしないのですが、個人的にはVistaを使うのであればReadyBoostは使うべきなんだろうと思います。