よりスマートなファイルシステムと高速なディスクやPCのおかげで、ファイルの断片化はかつてほどパフォーマンスを低下させるものではなくなりました。昔のコンピューターはファイルを分割してハードドライブ全体に分散させる傾向がありましたが、最近のコンピューターはそれほど頻繁には行いません。全くと言っていいほどです。とはいえ、高性能なデフラグツールを2ヶ月に1回使用することで、使用頻度の高いハードドライブでも最高のパフォーマンスを維持できます。
しかし、ハードドライブプラッターの代わりにフラッシュメモリを使用してデータを保存するソリッドステートドライブは別の話です。私のテストでは、頻繁に使用される SSD で複数のディスクデフラグツールを実行しても、ほとんど、あるいは全くメリットがないことが分かりました。
従来の論理では、SSDのデフラグは絶対にすべきではないとされています。なぜなら、SSDコントローラは、コントローラのみが理解できるアルゴリズムを用いて、複数のNANDチップと複数の場所にデータを散発的に書き込むからです。オペレーティングシステムはSSDをセクターを持つハードドライブとして認識しますが、データはコントローラによってドライブ全体に分散されています。これらの「セクター」のデフラグは、目隠しをしてジグソーパズルを組み立てるようなものです。パターンの一部は感じ取れますが、全体像は見えません。さらに、NANDは数千回の書き込みサイクルしか持たないため、デフラグはSSDに不必要なデータを書き込むことでSSDの寿命を縮める可能性があります。
こうした議論にもかかわらず、少なくとも4つのデフラグユーティリティが、最適化によってSSDのパフォーマンスを向上させると主張しています。AuslogicのDisk Defrag Pro、CondusivのDiskeeper、RaxcoのPerfectDisk、そしてSlimCleaner Intelligent Defragです。これらのユーティリティがどのように役立つかを理解するために、いくつかの事実を確認してみましょう。
使用済みの NAND セル (データを保持するフラッシュ メモリの部分) は、書き込む前に消去する必要があります。
初期のSSDは消去を先送りし、ファイルを削除した際にセルを未使用としてマークするだけでした。未使用セルがなくなると、マークされたセルや使用済みセルを消去してから再度書き込む必要があり、パフォーマンスが低下しました。
ドライブに組み込まれたガベージ コレクション ルーチン (未使用の、以前に書き込まれたセルの消去を含む) を呼び出す TRIM コマンドの登場により、この問題は解決しました。
Windows 7 および Windows 8 は TRIM コマンドをサポートしています。
SSD最適化に関する主張の多くを裏付けるドキュメントを読むと、その多くがWindows 7やTRIMコマンドの登場以前のものであることに気づくでしょう。それ以前は、空き領域の最適化によってSSDがガベージコレクションを強制的に実行され、失われたパフォーマンスを取り戻すことができました。しかし、最新のOSで動作する最新のSSDでは、こうした最適化の多くはもはや不要です。

問題は、私が調査したところ、最新のTRIM対応OSで動作する最新のSSDにデフラグプログラムが効果的かどうかを明確に断言できるSSDベンダーはどこにもありませんでした。どこを探しても確固たる証拠は見つからなかったので、自分で集めてみることにしました。
そこで、高速な128GB、SATA 6GbpsのOCZ Vertex 4 SSDを入手し、未使用の状態でCrystalDiskMarkを実行した後、PassMarkのFraggerとJoseph Cox氏のプログラム(同じくFragger)を使ってドライブを徹底的に断片化しました。再度CrystalDiskMarkを実行したところ、シーケンシャルリード速度が10%低下しました。これはパフォーマンスにかなりの影響があります(ただし、実際には違いに気付かない可能性が高いです)。
次に、各プログラムにデフォルト設定でドライブを最適化する機会を与えました。各テストの合間に、SSDのセキュア消去(使用済みセルをすべて消去するはず)を実行し、断片化のイメージを復元しました。
ここで問題となるのは、画像内のデータが実際に同じセルに分散されていたかどうかは断言できないことです。しかし、パフォーマンスの低下レベルは変わらず、セキュアイレース後にはほぼ新品同様のレベルまで回復しました。また、これらのプログラムを、想定されているハードウェア、つまり標準的なハードドライブでテストしました。
デフラグツールのパフォーマンスを確認するには、次のページの結果を参照してください。
Auslogics ディスクデフラグ プロ
AuslogicsのDisk Defrag Pro(30ドル、30日間無料トライアル)は、すっきりとしたインターフェースと複数のデフラグオプションを備えた非常に高性能なデフラグソフトです。シンプルなデフラグ(統合や最適化なし)、SSD最適化、空き領域最適化(空きクラスターのデフラグ)、そして起動を高速化するWindowsプリフェッチレイアウトによる最適化など、様々なデフラグオプションが用意されています。また、Piriformの無料版Defragglerと同様に、ファイルやフォルダ単位でデフラグするオプションも用意されています。この最後の機能は、動画編集ソフトなど、ファイルへの高速アクセスが継続的に必要なアプリケーションで特に役立ちます。

Disk Defrag Proはハードドライブのテストで非常に良い結果を出し、スーパーフラグメント化したパーティションやその他の作業も楽々とこなしました。しかし、SSDの最適化はほとんど効果がなく、事後にその旨が報告されました。デフラグ後、CrystalDiskMarkはパフォーマンスがわずかに向上したと報告しましたが、これはドライブがガベージコレクションを実行したためと思われます。
Disk Defrag Proには独自のスケジューラと高度な管理機能が多数搭載されていますが、DiskeeperやPerfectDiskのように断片化された書き込みを防ぐバックグラウンドプロセスは備えていません。ただし、このプロセスが欠けていることは、平均的なシステムではそれほど問題にはなりません。NTFS(Windows NTのファイルシステム)では、ドライブの容量が限界に近づいている場合や、高負荷のサーバー環境で使用されていない限り、断片化された書き込みが発生することは比較的まれです。
このプログラムには一つ気になる点がありました。プログラムの起動時に、時折、ハードドライブの読み書きヘッドがカタカタと音を立てるのを聞くことがありました。聞きたくない音です。これまで使ったデフラグソフトの中で、読み書きヘッドにこれほど負荷をかけるものはありませんでした。断続的に発生するものでしたが、それでも頻繁に発生し、不安になるほどでした。
コンダシブ・ディスキーパー
Diskeeper(30ドル、無料トライアル)は、従来の一度だけ実行するデフラグツールというより、断片化防止とバックグラウンドデフラグに特化したプログラムです。このプログラムの最大の問題は、標準的なデフラグツールを使ったことがある人にとっては、必要な機能を見つけられないように設計されたインターフェースです。

「アラートとレポート」の下にある「分析」と「デフラグ」のオプションに慣れれば、Diskeeperの優れた点がきっと見つかるでしょう。Intelliwriteテクノロジーは断片化された書き込みを防ぎ、高速化を謳っています。また、自動バックグラウンドデフラグとSMARTモニタリングに加え、ディスクアクセスを監視し、取得した情報を用いて次回デフラグ実行時にファイルをよりインテリジェントに最適化するI-FAAST機能も搭載されています。しかし、これらの機能はサーバーやハイエンドワークステーションでの使用には最適ですが、一般的な家庭用PCには少々過剰かもしれません。
とはいえ、Diskeeperのハードドライブデフラグ機能は素晴らしく、学習を重ねるごとにさらに進化しています。SSDを使用している場合は、プログラムがそれを検出し、デフラグではなく最適化を提案します。残念ながら、Diskeeperの最適化機能は時間がかかり、テストで使用したSSDの断片化が激しい状態ではパフォーマンスにほとんど影響がありませんでした…ほとんど影響がないというのは、全く影響がないという意味です。
Raxco PerfectDisk プロフェッショナル
PerfectDisk(40ドル、30日間無料トライアル)は、非常に優れたデフラグツールです。高度なインテリジェンス(SMARTPlacement)を駆使し、標準的なハードドライブ上で最も重要なファイルをディスクの最も高速な領域に配置します。また、起動時にシステムファイル(Windows起動時はロックされます)のデフラグを実行し、CPUが空いている間にバックグラウンドプロセスを起動してドライブを最適化します。このバックグラウンドプロセスは、少なくともそこそこ高速なPCでは、目立たない動作です。

PerfectDisk ProfessionalはDiskeeperよりもオプションが豊富ですが、すべてのオプションを見つけるのにそれほど苦労する必要はありません。デフラグツールはメインページに配置されており、オプションは論理的に命名されたダイアログボックスに整理されています。また、このプログラムはOptiWriteも搭載しており、断片化された書き込みを最初から防ぐことができます。PerfectDiskはドライブのSMART情報も追跡します。これは、ドライブが故障する前に交換したい場合に役立ちます。SMARTエラー数の増加は、ディスク故障が差し迫っていることを示している可能性があります。
PerfectDiskは私のテスト用ハードドライブで素晴らしい仕事をしてくれました。デフラグと最適化はあっという間に完了しました。しかもSSD搭載のPerfectDiskは、Intelligent Defrag、Diskeeper、Defrag Proとは異なり、実際にドライブにかなりの時間を費やしました。実に2時間近く。シーケンシャルリード速度が毎秒約20MBも向上しました。では、2時間の連続書き込みが、パフォーマンスの5%向上(おそらくほとんど気づかないレベルでしょう)に見合う価値があるのか、という疑問が生じます。私だけでなく、おそらく大多数のユーザーにとっても、答えは「ノー」でしょう…しかし、実際に違いを実感させてくれたPerfectDiskには敬意を表します。
SlimCleaner インテリジェントデフラグ
Intelligent Defragは、シンプルながらも汎用性の高いデフラグツールで、無料のSlimCleaner PCオプティマイザーに含まれています。ハードドライブにも問題なく動作しますが、ドライブマップからはそれが分かりません。マップはカラフルですが、ディスクの断片化状態を正確に伝えるものではありません。

Intelligent Defragで利用できるオプションは、クイックデフラグとフルデフラグのみです。ハードドライブのパーティションがひどく断片化していたため、部分的なデフラグでは効果が薄いと判断し、フルデフラグを選択しました。プログラムは大きなファイルの修復をきちんと行い、その他の小さな断片をディスクの外側に統合しましたが、小さなファイルのある領域には依然として断片化が残っていました。
Intelligent Defragは、断片化されたSSDに対していくつかの操作を実行しました。しかも、かなりの数です。書き込みサイクルの寿命を意識している人にとっては、少し神経質になるかもしれません。私自身も、システムパーティションで実行させたことに気づいた時は、まさにそうでした。高度に断片化されたテスト用SSDでは、すぐに機能しなくなりました。CrystalDiskMarkの結果では、この操作によるパフォーマンスの向上は見られませんでした。

Intelligent Defragはハードドライブ用のデフラグソフトとしては優秀ですが、私のシステムSSDへの書き込み回数が多く、また、極度に断片化されたSSDのデフラグがうまくいかなかったことから、SSDはそのままにしておく方が良いのではないかと考えました。高性能なPCクリーニングソフトSlimCleanerの一部なので、嬉しい特典ではありますが…UltimateDefragの無料パブリックドメイン版の方がはるかに優れています。
ハードドライブをデフラグするが、SSDはそのままにしておく
限られたテストから判断すると、最高のSSDデフラグツールでさえわずかな違いしか生まないため、SSDの寿命を縮めるほどの価値はない、と確信しています。「SSDをデフラグするべきではない」という声に、さらに声を加えましょう。ファイルやセルの断片化が原因でSSDのパフォーマンスに問題が発生していると確信している場合は、TRIMコマンドを発行するユーティリティを入手してください。あるいは、データをコピーし、hdparmまたはParted Magicを使用してセキュア消去を実行し、再度コピーし直すのも良いでしょう。
4つのプログラムはすべてハードドライブの最適化に優れており、PerfectDiskは単発のデフラグでは最も優れており、PerfectDiskとDiskeeperはどちらも作業中にバックグラウンドでデフラグを実行できます。サーバーを運用している場合や、小さなファイルをディスクに頻繁に書き込むプログラムを使用している場合は、DiskeeperとPerfectDiskが提供するバックグラウンドでの断片化防止機能が役立つ可能性があります。これらの機能を搭載したPCではパフォーマンスの向上は見られませんでしたが、PCの速度低下は見られませんでした。書き込みの最適化が進むことは悪いことではありません。
リアルタイム機能が必要ない場合は、ディスク全体をインテリジェントにデフラグする UltimateDefrag の無料版や、単一のファイルまたはフォルダーを素早くデフラグする Piriform の Defraggler をお試しください。