スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Windows 7/8.x時代の“SSD最適化”テクニック(設定方法)まとめ

SSD Image

SSDが普及し始めてずいぶんと経った。もはや完全に一般化したといってもよく、ノートPCではSSDのみが搭載されているモデルは何も珍しくない。Windowsの対応状態も、XPの頃はOS自体が対応していなかったので、大小様々な設定変更が必要だったが、Windows 7以降はOS側で標準対応するようになった。今日では、「OSが勝手にSSD用の設定をしてくれるから、ユーザーが特段いじる必要はない」という話もある。

しかし、調べてみると今でも「完全にデフォルト状態でよい」というほどではなく、やはりある程度の設定変更はした方がいいようだ。これは執筆時点で最新のWindows 8.1でも同じで、実際に設定をチェックしてみると「あれ?」と思う場所が結構あった。2014年現在でも、「完全なSSD最適化」をOS側でしてくれるわけではない、というのが現状なのだろう。

というわけで、現在(とそしてこれからの)主流であるWindows 7と8.xをターゲットに、「SSD使用時にチェックしておきたい、設定の確認・変更場所」をまとめてみる。XPのサポート終了を機にPCの乗り換えをする人は多いだろうから、参考にしていただければ幸いだ。

※お約束:以下のカスタマイズはWindows自体の設定を変更する行為であり、特にレジストリの変更などは、場合によってPCが起動しなくなるなどのリスクがある行為です。実行する際に起こった現象はすべて自己責任となりますので、ご注意ください。

時流を反映して「SSDの負荷を限界まで減らす」設定はあえてしない

まず最初に断っておくと、一昔前のSSD最適化の記事でよくあった「極限までSSDの(書き込み)負荷を減らす」というような設定はおこなわない。というのも、近年のSSDは技術的にも成熟してきており、そこまで書き込み量に目くじらを立てる必要性はなくなってきているからだ。SSDによっては3~5年間ぐらいの保証期間が用意されており、かつ値段自体も下がってきて買い換えも難しくないため、普通に使う限りは寿命を最優先にする意義は薄くなっている。

また、そもそも快適にするためにHDDではなく(バイト単価が高い)SSDにするのだから、使用感に直結するようなデータをHDDに移動させるのは本末転倒だろう。そろそろ「SSDはきわめてデリケートな製品であり、腫れ物に触るように扱うべき」という考えからは脱却してもいいはずだ。したがってこの記事では、あくまで「SSDでPCを快適に使う」ことを主題にして進めていきたい。

Trimが有効になっているか確認

「Trim」とはSSDの書き込み速度低下を防ぐための技術。使用中のSSDの速度低下を防ぐにはこのTrimがかなり重要で、とにかくこれだけは有効になっているかチェックしておきたい。技術的な説明自体はここではしないので、詳細は以下のリンク先を参考にして欲しい。

7以降のWindowsならば、SSDを搭載すれば基本的にTrimが自動で有効になっているはずだが、念のため確認しておく。チェックする方法は簡単で、コマンドプロンプトを使う。
Windows 7ならスタートメニューから、スタートメニューがないWindows 8.xなら「Windowsキー + X」で表示される管理メニューからコマンドプロントを起動し、以下のコマンドを入力する。

fsutil behavior query DisableDeleteNotify

実行した結果が「DisableDeleteNotify = 0」ならTrimが有効「DisableDeleteNotify = 1」なら無効になっている。もし無効だった場合は、コマンドプロンプトを管理者権限で立ち上げ直し、以下のコマンドを実行する。

fsutil behavior set DisableDeleteNotify 0

再度最初のコマンドを実行し、「0」が返ってくるか確認すれば万全だろう。

「WindowsはどうやってストレージをSSDと認識しているのか」という話

上で“7以降のWindowsならば、SSDを搭載すれば基本的にTrimが自動で有効になっているはず”と書いたが、実はこれは正確な表現ではない。少なくともWindows 7では、「Windowsエクスペリエンス インデックスで、ストレージの値が6.5以上だったらSSD」と認識するという形になっているようだ。

というわけで、Windowsエクスペリエンス インデックスがあるWindows 7と8(8.1からはそのまま実行できなくなった)では、(実行された形跡がないなら)コントロールパネルなどから「システム」を表示し、最低1回は実行しておいた方がいいだろう。

デフラグスケジュールのチェック

「SSDにデフラグは不要で、そもそも寿命を減らす結果にしかならない」というのは、もはや有名な話。Windows 7以降では勝手にスケジュールから外されるはずだが、これも再確認のためにとりあえずチェックしておく。Windows 7なら「アクセサリ」の中にある「システムツール」などから、「ディスクデフラグツール」を起動する。Cドライブが最適化のスケジュールから外れていれば問題ないが、もし入っていたら下の画像のように外しておこう。

Windows 7のデフラグスケジュール設定
Windows 7では、このように最適化(デフラグ)しない設定にしておく必要がある
ただし、これはWindows 7での話。Windows 8以降ではディスクの種類まで認識され、ディスクに応じた“適切な最適化”がおこなわれる。これはHDDではデフラグ、SSDでは前述のTrimコマンドの発行だ。つまり、Windows 8以降では最適化のスケジュールから外してはいけないし、むしろONにする必要があるということ。
Windows 8.1のドライブの最適化画面
Windows 8.1での「ドライブの最適化」画面。Cドライブをきちんと「ソリッドステートドライブ」と認識していることがわかる
Windows 8.1のドライブ最適化スケジュール設定
Windows 8以降では、このように最適化のスケジュールにSSDが含まれている必要がある

Windows 7と8で仕様が変わって若干わかりにくいが、このあたりはきっちりと押さえておこう。

「Prefetch」(プリフェッチ)と「Spuerfetch」(スーパーフェッチ)の最適化

「Prefetch」や「Spuerfetch」というのは、ユーザーの利用環境に合わせて、事前にデータをキャッシュしておく機能のこと。以前から存在する技術であるものの、HDD時代の“遅れた”仕組みだとして、SSD環境では切ることがIntelなどに推奨されている。具体的には以下のようにする。

Spuerfetchの無効化

「コンピューターの管理」から「サービスとアプリケーション」→「サービス」と進み、「Superfetch」を探してダブルクリック。プロパティが立ち上がるので、「スタートアップの種類」を「無効」、サービスの状態を「停止」にする。

Superfetchのサービス設定画面
Spuerfetchサービスの設定。「無効」にすればよい

再起動をすれば、次からは起動しない。

Prefetchの無効化

レジストリエディタを起動し、以下のアドレスに移動する。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management\PrefetchParameters

「EnablePrefetcher」「EnableSuperfetch」をダブルクリックし、「値のデータ」を「0」にする。EnableSuperfetchは上の手順でSpuerfetchを無効にしてあれば「0」のはずだが、念のため確認しておく。

また、Prefetchが有効だったときにキャッシュしたファイルがCドライブに残っているので、これも意味がないので削除しておく。場所は以下の通りなので、中身を全部捨ててしまえばいい。

C:\Windows\Prefetch

これでSpuerfetchとPrefetchの両方が無効になる。

Windows 8以降の場合は、PrefetchとSpuerfetchを両方有効化しておくこと

Windows 7での手順は上記の通りでいいが、Windows 8以降は事情が異なる。ドライブの最適化と同じように、Windows 8からはPrefetchとSpuerfetchの機能が変わっているので、無効にしてはいけない。早まって無効にしてしまった場合は、元に戻そう。

ただ、「デフォルト設定でいい」というわけでもないらしい。Spuerfetchはそのままでいいが、Prefetchは初期値の「3」から「1」にするのがいいようだ。場所は上記の通りなので、「0」の代わりに「1」にしておく。

SSDの使用容量を減らす、いくつかの方法

次からはSSDの性能自体に関係することではなく、「SSDのデータ使用量を少しでも減らしたい」「SSDの書き込み量を減らしたい」という場合におこなうためのテクニック。言い方を変えれば、SSDの容量が十分にあるならおこなう必要はないし、逆に実行すればシステムのレスポンス(体感速度)が落ちたり、使い勝手が悪くなる可能性がある。あくまで「SSDドライブの容量を減らしたい」という場合にのみ、実行すればいいだろう。

ユーザーフォルダーの移動

「ダウンロード」や「マイドキュメント」というフォルダを移動させ、使用する容量を減らす。特にデメリットはなく、(ユーザーフォルダーを積極的に使う人は)効果もそれなりにある。

  1. 「マイミュージック」などのフォルダを右クリックする
  2. 「場所」タブの「移動」を選択し、HDDの任意のフォルダを選ぶ
  3. 「フォルダーの移動」というウィンドウが出るので、「すべてを移動する」で「はい」を選ぶ

仮想メモリの縮小・無効化

物理メモリが足りなくなったときに使われる「仮想メモリ」の容量を小さくしたり、使わないように設定する。搭載メモリが少ない場合はトラブルの原因になり、実際に仮想メモリを使う環境ならディスクは速いほうがいい(SSDの方が向いている)ので、環境によってはおすすめしない。

  1. 「システムの詳細設定」から「詳細設定」タブを開く(画像1)
  2. 「パフォーマンス」の「設定」を選択し、パフォーマンス オプションの「詳細設定」タブから「仮想メモリ」の「変更」を選択
  3. 仮想メモリを使わないなら「ページングファイルなし」にする
  4. 使用量を縮小するならカスタムサイズで容量を減らす(設定例
  5. 場所だけ変えたいなら、Dドライブ(HDD)などを設定し、容量はそのままCドライブの設定をコピーする
システムのプロパティ画面
(画像1)「システムのプロパティ」から仮想メモリの調節をしたり(赤枠の中)、TEMPフォルダの設定を変更(青枠の中)したりする

TEMPフォルダの移動

各種アプリケーションやインストーラーが一時的なファイルを置くために使う、 テンポラリ(TEMP)フォルダを移動させる。TEMPフォルダは“ゴミ”がたまりやすく容量を圧迫しやすいが、逆に速いストレージにおいた方が(一時ファイルをよく作るソフトなら)反応速度は向上することが多い。そのため、移動させるかどうかはSSDの容量と快適性を天秤にかけて決めたいところ。

  1. 「システムの詳細設定」から「詳細設定」タブを開き、「環境変数」を選択(画像1)
  2. 「ユーザー環境変数」の「TEMP」と「TMP」を削除
  3. 「システム環境変数」の「TEMP」と「TMP」をHDDドライブに変更

休止機能の無効化(hiberfil.sysの削除)

「hiberfil.sys」はPCを休止状態(ハイバネーション)にするときに、メモリの中のデータをストレージに退避させるために使うファイル。標準状態だと、搭載しているメモリの75%程度が割り当てられている。

近年の搭載メモリの大容量化に伴い、hiberfil.sysは肥大化しつつあるが、削除すると当然「休止」(状態への移行)が使えなくなるので注意。また、hiberfile.sysはWindows 8から搭載された「高速スタートアップ」(高速起動)にも使われてるため、こちらも使用不可能になる。PCの使用環境によっては、使い勝手が大きく低下する可能性があるので、よく考えてから実行すること。

  1. コマンドプロンプトを管理者権限で起動(右クリックからの「管理者として実行」か、Windows 8なら「Windows + X」の「コマンドプロンプト(管理者)から起動する」)
  2. powercfg.exe /h offと入力して実行(エラーが出なければ成功)
  3. powercfg.exe /aで無効になっているかチェック

「システムの復元」の使用容量の調節

不具合が起こったときに、システムを巻き戻せる「システムの復元」をOFFにしたり、使用するデータ量を減らす方法。容量的には確かに小さくはないが、いざというときの保険であるため、不用意に無効にしたり、容量を減らしすぎたりするのはおすすめできない。

システムの復元(保護対象)の設定画面
システムの復元に使う容量を調節すれば、ある程度SSDの容量を節約できる。
  1. 「システム」から「システムの保護」を選択
  2. Cドライブ(SSD)を選び、「構成」をクリック
  3. 「設定の復元」を無効にしたり、「ディスク領域の使用量」を調節する

そのほかの細かいカスタマイズは省略

そのほか、もっと細々した調節・カスタマイズ方法(たとえばエラー時のダンプファイルを作らないなど)はあるものの、実際の効果と手間を考えると「メリットが薄すぎる」か「デメリットが大きい」と判断したので、ここでは省略した。繰り返しになるが、最近のSSDはそんな細かい設定までユーザーがやらなければいけないほど、書き込みに弱くはなっていない。事前に少し容量に余裕を持ったSSDを選んでおけば、ますます実行する意味が薄くなるだろう。

とはいえ、「1バイトでもSSDの使用量を減らしたい」という人はいるかもしれない。そういう方は、次のリンク先などを参考にして欲しい。

容量節約の手法に関しては、個人的には「ユーザーフォルダーの移動」と「仮想メモリ量を少し減らす」ぐらいしかやっていない。システムをいじる設定はリスクも伴うし、気休め程度で終わる可能性も高い。前述の通りにSSDの信頼性はずいぶんと上がってきてるのだから、やるとしても“ほどほど”で終わらせておくのが吉ではないだろうか。