2010年1月2日土曜日

SSDにおけるTrimの効能 Part3

前置きが長くなってしまいましたが、今回は、ベンチマークから解ったことについて説明します。
まず、TrimコマンドがSSDに送られる条件ですが、今回のベンチマーク結果を見る限り、Windows7標準のマイクロソフト製ドライバを使用すれば、SerialATAの動作モードに関係なくTrimコマンドが送られる仕様となっているようです。つまり、AHCIモードでもIDEモードでもTrimコマンドが送出されているように見えます。(RAIDは当然、除外)

これは、IDEモードですべての作業を行い、DisableDeleteNotifyの設定をEnable(初期値)したときのベンチとDisableしたときのベンチを比較した結果から想像できます。下のグラフは、速度劣化させた状態のSSDに記録されていたデータをすべて削除(ゴミ箱にから削除)したあとに計測した速度です。DisableDeleteNotifyがEnable、つまり、Windows7の設定が、Trimオンの場合とDisable(Trimオフ)の場合で大きく速度が異なります。Trimオンの場合は、リードライトともにSecurErase後とほぼ同等の速度となっていますが、Trimオフの場合は、明らかな速度劣化がみられ、特にライト速度がSecureErase後と比較して半分以下にまで落ち込んでいます。

SSDは、原理上、記録速度を戻すには、すぐに記録に使用できる消去ずみのエリアを増やすことしかありません。今回のチェックでは、合計約500MBのデータの記録と半分削除を550回繰り返し行い約300GB弱のデータを記録しています。記録データを半分削除していますが、SSDの空き領域は、15GB前後しかありません。このため、虫食い状態になっているエリアが多く存在していることが予想され、消去を伴うことなく、すぐに記録に使用できるブロックの数が、それほど多くないことも想像できます。

Trimは、物理消去可能な論理アドレスを通知してくれます。今回のケースでは、記録データすべてを削除していますので、Trimで送られてくる情報は、NTFSで使用されているファイル管理用のデータを記録している部分を除く、残りすべての論理アドレスということになります。SSDがTrimで得た情報を用いて、物理ブロックの消去を行っていれば、当然、SecureErase後と同じ速度に戻ることが容易に想像できます。

このテストの結果見る限り、IntelのSSD(G2)は、Trimで得られた情報をもとに消去出来る物理ブロックをすべて消去しているようです。また、OSのTrim設定の違いによって、IDEモードで速度差が出ていることをみるとTrimコマンドは、IDEモードでも動作しているということになり、動作の切り替えは、DisableDeleteNotifyの設定で行う必要があるということになります。

ちなみに、DisableDeleteNotifyの設定ですが、コマンドプロンプトから「fsutil behavior set DisableDeleteNotify 1」と入力すればTrimをOFFに設定でき、Trimの初期値は「ON」に設定されています。

1 件のコメント:

  1. 最近はすっかりPCで光学ドライブを使うことも少なくなりましたね。
    子供の頃の僕にとっては、きらきらと光るCDは「夢の21世紀(笑)」の象徴のように思えたものです。

    てか、この名前でやってて僕に見つからないとでも思ってらしたんですか(笑)
    すっかりご無沙汰しておりますが、すこし暖かくなったころにでもまた食事にでも。(K.J)

    返信削除