凄まじくストレージを攻撃していることがわかったBlueStacks(ブルスタ)+幻想神域2。
SSDに超高速ジャブを入れてきやがるので、かなりマズい。
早く手を打ちたい。
でもどうする?・・・と考えたところ、1つ思い付いた。
RAMDiskだ。
メインメモリをストレージのように見せかけて、超高速な読み書きを実現する技術。
昔、Windows XPの32bit版だと3GBちょっとしか認識しないので、
8GB積んで5GB弱をRAMDisk化する・・・なんてことをやっていた。
ブラウザのキャッシュなんかに使うとかなり快適になった思い出。
ブルスタの仮想ディスクはBlueStacks/Engine/Android
にある。
ちなみにデフォルトではC:\Program Files
にインストールするようになっているけど
そんなところに巨大ファイルを置かれても困るので、
M.2 SSDを1パーティションでゲーム用にして、そこにインストールしている。
違う場所を指定したのに、コアな部分である実行ファイル類は
C:\Program Files
にインストールされて殺意が芽生えた。
(デカいファイルは最初に指定した場所にちゃんと作られるけど)
なので仮想ディスクが含まれるディレクトリを丸っとRAMDiskに載せちゃおうと。
問題はどのRAMDiskを使うか なんだけど、フリーで良いのあったっけなぁ?
(ググり中)
ASUSのROG RAMDiskが良さそうだ!
簡単には見つからないかもしれないけど、サイトから普通にダウンロードできるので違法ではないはず。
ツールとしては簡単で、
- RAMDiskに割り当てる容量を決めてRAMDisk作成
- RAMDiskを使うディレクトリを指定する
で終わり。
元のディレクトリをリネームして、ジャンクションを使っている。
このまま電源を落とすと当然消えるので、アプリには"同期ボタン"があって
それを押すことでRAMDiskのファイルをリネームしたディレクトリと同期している。
たまにアプリがファイルを掴んだままになって怒られるけど気にしない。
VMサーバのメモリは24GBなので、ひとまず10GBを切り出す。
これはベンチ測るしかないでしょ(・∀・)
SSDのベンチは
こんな感じなので、Readは2倍以上、Writeは約4.5倍である。
Readが伸びないのが謎だけど。
体感速度がめっちゃ上がるのでは?と期待が高まる。
いつも通りマップの切り替えに要する時間を測った。
手動なので多少の誤差はあるけど何度も測定しているので、ある程度の傾向はわかる。
・・・が。
同じ。
えー、理屈的には速くなるはずやん。
ストレージではない どこか別の所に原因があるってことか。
腑に落ちないけど、ストレージへの攻撃を避けるためにRAMDiskでの運用は決定。
ブルスタの仮想ディスクファイルはすぐ膨らむので、もうちょっと余裕を持たせて
・・・なんか本来の用途の空きメモリが苦しくなってきたぞ・・・('A`)