SSDもデフラグをしよう

「SSDはデフラグいらない!」派に潰されそうなタイトルですが、これは自分の経験談に沿ったものです。
データはありません。自分で確かめてください。

SSDでも「度が過ぎる断片化」はよくない

Crystal Disk Markなどでランダムアクセス測ることがあると思います。(普通はない)
あれは極端なディスクアクセスなので正直遅いのですが、度が過ぎる断片化になるとあれぐらいの速度しか出なくなります。

HDDの10倍以上のランダムアクセス速度なので確かに問題はありません。使えます。
ただし、微妙に遅くなってくるのです。その微妙な遅さは少し不快。
3カ月ほどWindowsをまじめに使っていると、断片化数6000を超えるファイルも出てきます。

度が過ぎた断片化というのは、SSDが遅くなるのはもちろん、I/O数の増加によってCPUの処理も増えて非効率になります。
非効率になると待ち時間も増えてしまい、アプリの起動にかかる時間が1秒増えたり、2秒増えたり、と積みあがっていきます。

アプリの起動もちょっとずつ遅くなっていきます。

それはいやですよね。パソコンはちょっとでもサクサク動いてほしいものです。

SSDのデフラグ目安

以前はDefragglerというソフトで断片化数や対象ファイルの数を見ることができていたのですが、
公式がサ終してしまったためもう断片化数を直接見ることはできません。

なので、単純に目安としては以下をおすすめしています。

「500時間」もしくは「半年以上使った」ら。

500時間、というと1日8時間使ったら62.5日です。ほぼ毎日8時間使うなんてことはないので、軽く3カ月ぐらいでしょう。
ライトな使い方をしている方なら半年以上でいいと思います。

ただ、半年がボーダーラインになっている理由は、Windows Updateや毎回のシャットダウン・起動などで結構断片化が積みあがるからです。

SSDに書き込んである容量の30%または30GBのどちらか大きいほう、ぐらい書き込み量が増えますが、その程度なので真っ当なSSDを使っていれば特に問題はないと思います。

デフラグをする方法 (管理者権限・コマンド必須)

ここからはSSDでも強制的にデフラグをする方法です。
ちなみに、Cドライブではないデータを入れるだけのSSDなら全くもってする必要はないので、コマンドはCドライブのみです。

なお、これを実行する前に開いているアプリを閉じて再起動をしておくことをおすすめします。

:: 【オプション】Windowsのシステムを修復します①
sfc /scannow

:: 【オプション】Windowsのシステムを修復します②
dism /Online /Cleanup-Image /RestoreHealth

:: ※ごくたまに「修復できませんでした」エラーが出ることがありますが、まったく問題ありません。

:: 【オプション】断片化数のチェック
defrag C: /A

:: 【必須】Cドライブをデフラグします
defrag C: /D /V /U

:: 【必須】Cドライブの管理領域(MFT)を可能な限りデフラグします
defrag C: /D /V /U /OnlyMetadata

:: 【必須】Cドライブの再トリムを行います
defrag C: /L

これを行うことで、起動にかかる時間がどの環境でも少なくとも7%ぐらい改善されると思います。
たった7%?と思う方もいるかもしれませんが、それ以外にもいろいろな効果があるのでやってみるのはおすすめです。

ちなみに、オプションと書いてあるものも一緒に実行しておくことを推奨します。
Windowsは、なぜか長く使っているとちょっとずつ壊れていってしまうため、システムを修復することでもっと長く使うことができます。

なんでデフラグをするのか・技術的なお話

Windowsは論理セクタを見てデータにアクセスします。
そして、ファイルは必ず一塊になっているわけではなく、最小では「アロケーションユニットサイズ」ごとに分けることができます。
(特にUSBなどをフォーマットするときに見ることがあると思います。)

そして、ファイルが一塊になっていたら、「論理セクタX から 〇セクタ分」のアクセスができますが、
ファイルが小さくなっていると、「論理セクタX① から 〇セクタ分」「論理セクタX② から 〇セクタ分」「論理セクタX③ から…」と、そのファイルが分かれてしまった分、多くなります。

わかりやすく言うならば、バケツ一杯の水をバケツで運ぶのと、バケツ一杯の水を小さなコップで運ぶみたいな違いです。
なら、バケツ一杯の水をバケツで運べるようになったほうがいいですよね。そういうお話になります。

ランダムアクセスがまぁ速いので大した問題にはなりませんが、それでも1回で読み込めるものが100回かかったら、残り99回分は1回で読み込める時よりも明らかに時間はかかってしまうわけです。

少なからず効果があるという理由はこういう理由なのです。

おわりに

昔はHDDだったから遅かったのは当たり前でしたが、
今ではSSDになってから10年ほどが経ちました。

スマートフォンによって、電源ボタンを押したらすぐにつく、すぐ動く、すぐ立ち上がる、を経験してしまった人間は、パソコンにまで速度を求めるようになりました。

ただ、その速さに慣れてしまったら、そこからちょっとでも遅くなるとストレスを感じるのが人間の性というもので、やはりこれは技術によって解決していかなければなりません。

もちろん、パソコンが遅い原因というのは多岐にわたるのでなかなかこれだけで解消する問題ではありませんし、ずーっと遅い場合は別に原因があることがほとんどです。ただ、起動時ちょっと遅くなってきたなー?程度だったら、やってみてはいかがでしょうか。

SSDはデフラグがいらない、デフラグをすると寿命が減る、とSSDデフラグ反対派はよく言っていますが、
普通にWindows PCを使って書き込むデータ量よりもはるかに大きい分の余裕が今のSSDにはあるので、それならやってもいいんじゃないのかっていうのが僕の本音です。

あとがき

これは試しに自分がやったものですが、3年間使ったメインPCは、スタートアップがすべて立ち上がるまでの時間が10%短縮、学校で使っているノートPCでやったら、スタートアップがすべて立ち上がるまでの時間が9%短縮されました。おすすめです。

未分類

Posted by nanasi_rasi