2016年10月25日火曜日

Windows(10以前)の仮想メモリ設定はどうすればよいのか

物理メモリと仮想メモリはご存じでしょうか?とりあえずタスクマネージャを使って説明してみます。




左下の部分に物理メモリ(MB)合計という項がありますが、それがパソコンに搭載されているメモリの物理的な量(=物理メモリ)と言います。
そして、物理メモリとパソコンで取り扱っているストレージなどに割り当てされた仮想メモリの合計が下部のシステム:コミット(GB)の分母部分に当たります。(分子部分は現在割り当て中の量)
上の物理メモリ(MB):合計では"32665"MBとあるのにシステム:コミット(GB)で18/31GBとなっているのかは、最近のCPUでは基板上にグラフィック出力が出来る部分があり、それの使用に必要な割り当てメモリをこちらの物理メモリから割り当てしているからと説明できます。


そして、Googleで「パソコン 高速化」とか「Windows 高速化」なんて検索すると「仮想メモリを切りましょう」と
決まり文句のようなページが引っかかりますが、それは間違いってのが常識になっています。

それは"仮想メモリ利用を前提としたアプリケーションが存在する"からと"仮想メモリを利用した場合物理メモリを有効に活用できる場合がある"からです。

仮想メモリは切らない方がいいとして、Windows7/8.1でどのように設定すればいいのか的確な案を提示したいのですが、ぶっちゃけ私も持ち合わせておりません。
これはWindowsが各ストレージごとに電源供給設定を弄れないように、仮想メモリ割り当て設定のないファイルをユーザー自身で設定できないからだとも言えます。
(Windows10からは仮想メモリの圧縮技術が実装され、あまり使用されない実行ファイルやデータなどをそれに割り当てる機能があります)

ここで少しWindow7の仮想メモリ割り当て設定を確認してみましょう...

コントロール パネル\すべてのコントロール パネル項目\システム\システムの詳細設定と遷移




先述したように仮想メモリに割り当てたくないファイルの設定なんてものどこにもありませんね...
ちなみにWindows10だとこうです↓



さすがWindowsですね!最新の10環境においても仮想メモリ割り当て詳細設定が出来ません!!
これらを踏まえて私が対応している方法を紹介していこうと思いますが、シェアフェア(有料)ソフトの紹介にしかならなさそうなことを踏まえておきます。


少し余談ですが、Windows VistaってOSがリリースされた頃、まだ大容量メモリを安価に購入することが出来ず、それを見越してかMSさんもちょっとお洒落な機能をつけてきました。

クラウドストレージが流行る前のUSBメモリを物理メモリ相当と扱うReadyBoost機能です。
以下のようにUSBフラッシュメモリを差し込むだけで物理メモリと同じように使えます!みたいな感じでジャパネットた○たなんかでは紹介されてましたが、USBフラッシュメモリの速度なんてたかが知れてるので物理メモリと同等扱いなんて不可能なことは少し考えればわかるから、詐欺行為じゃないかなこれって当時思いました。




HDDより高速なSSDをシステムドライブに使ってるとこのような注意書きが出てReadyBoost対象に割り当てることが出来ないのが残念です。
それはさておき、このReadyBoost機能は安価に低スペックパソコンを生き返らせる素晴らしい機能だと当時思ったのですが、その時使っていたXPでは利用することが出来ませんでした。
そこでサードパーティーソフトを探すと似たようなものがあったので今でも使用しているeBoostrと
それを使うメリットを紹介していきます。


1.管理外領域の物理メモリを取り扱える(PAE)

今時64bitOSを使ってないってのも珍しいとは思いますが、WindowsXP(32bit)からWindows10(64)までのアップグレードでワンクッション置くのが面倒でそのままWindows10(32bit)として使っている方もおられるかも知れないので、とりあえずeBoostrのデバイス設定画面をご覧になってください。


1行で言うなら32bitOSで扱えない余った物理メモリを使えるから無駄にならないよって機能です!
これらも含めて仮想メモリとして割り当てることが出来るので~ってまでだったら当記事中盤で文句垂れていた仮想メモリ割り当てファイル設定が出来ないってのは解決できませんがここからです。


2.優先アプリケーション/除外リスト設定が扱える






除外設定だけでいいんじゃね?とも思いますが、一応あっても問題はないのでしょう。
この設定があることで仮想メモリ割り当てしたくない拡張子やフォルダ、そしてアプリケーションを指定できるので、仮想メモリによく使うアプリケーションや大容量ファイルが割り当てられてしまい、起動時はサクサク動いてたのに(半ギレ)なんてなることはありません。
シェアウェアなので値段は\4,000円前後となりますが、Windows7なら2020年、Windows8.1なら2023年のサポート切れまで使えるソフトと見ればそこまで高い買い物でもないかなと思います。
2時間の体験利用も可能なので興味がある方はぜひというステルスマーケティングです。


ではサードパーティーソフトを使わないならどうするのか・・・
こんなソフトMSのOS破壊アップデート次第でいつ動かなくなるから使ってられねーよ!って方は、前述の通り仮想メモリは切らずに自分がよく使用するアプリケーションを常時立ち上げた状態で、それらの実行ファイルが仮想メモリに割り当てられないように使う(またはそうならないよう物理メモリを増設する)か、HDDからランダムアクセスの高速なSSDを使用してそれを仮想メモリ割当先に設定するか(仮想メモリ割当先専用SSDの増設)しかないです。

これくらいの使い方なら仮想メモリに回らないな?とかタスクマネージャとにらめっこするのアホくさいのでシェアウェアでなんとかしちゃいましたが、個人的には物理メモリ量の1~1.5倍を仮想メモリ量として割り当てればいいと思います。


(2016/10/26) 追記
http://anago.2ch.net/test/read.cgi/software/1308620132/14/ より引用

 eBoostr V4 vs Windows ReadyBoost


・速度面

eB 1本~複数本のUSBメモリ等、更に別コントローラ接続でも同内容の割り当てが可能
   上記環境ではRBより高性能、AES暗号化無しでCPU負荷も低い
   OS管理外RAMを利用する事で、RBには無い速度を実現できるが、この時のCPU負荷は高い
   キャッシュ内容を保持するため、RBと比較するとNANDデバイスの寿命に期待できる
   キャッシュ生成は間欠的なので、効果を実感するまでのタイムラグが起こり得る

RB 基本的に1本毎に独立して動作する、AES暗号化がデフォルトで掛かるのでCPU負荷が高い
   キャッシュ内容は蓄積されないため、NANDデバイスの寿命はeBより短くなる
   キャッシュ生成はリアルタイムなので、常時効果を実感できる設計である

・データ選定

eB 対象データは自動、もしくはユーザーでの細かい指定が可能
   ビューアを使用して、キャッシュ内容を閲覧できる

RB 対象データはSuperFetch機能で選定される、ユーザー設定は不可

・コスト

eB 有料($19.99~$39.99)、RAMを利用する場合は追加投資は無い
RB Vista以降は無償(標準付属)、USBメモリの追加投資が必要
  

0 件のコメント:

コメントを投稿