chintaro3の日記 

基本、チラ裏です。書いておくと頭の中が整理できますゆえ。

SSD使いこなしメモ

 
SSDは、「ファイルにちょっとづつ高頻度でデータを書き足す」という処理が非常に苦手。稼働ログなど。
 なぜなら、書き込みが512KB単位でしかできないから。ほんの数文字書き足すだけでも 512KB読みだしてちょろとデータを追加して512KB書き込む、という処理になってしまい、きわめて効率が悪い。
 →SSDへのログデータ書き込みは、ある程度まとまった量になってからまとめて書き込んだ方が良い。
  例外として、ブルー画面になる原因の解析のための詳細ログなどは、高頻度でまめにSSDに記録した方がよい場合もありえるが、今はOSの安定性があがったので、そのようなケースはほぼ無い。
 
SSDの読み書きが非常に高頻度な場合は、SSD内のキャッシュをOFFにしたほうが安定する
 キャッシュOFFにした場合の弊害として、ファイル削除にかかる時間が10倍以上になったりするが、そもそもフラッシュメモリのデータ削除には、書き込み処理の半分ほどの時間がかかる。見かけ上早く応答していても、内部的にはToDoリストに削除の仕事が1つふえている状態なので、どこかで辻褄をあわせなくてはならない。その暇が無いような用途だと、やがてToDoリストの消化のために、SSDプチフリを起こす。プチフリ対策が強化されて、現在はほぼ問題なくなったように見えるが、読み書きが非常に高頻度な場合には2018年現在の現行品でもまだ出る。多くのユーザーにとっては問題ないというだけ。SSD内のキャッシュをOFFにすると見かけの性能は下がるが、フラッシュメモリの本質的な性能は変わらない訳で、挙動が素直で管理しやすくなる。
 
・高頻度の読み書きが発生するドライブは、OSとは物理的に別ストレージにすべき
 OSのタスクスケジューラが定期的に何か仕事をはじめるたびに、SSDのアクセスに時間がかかりはじめるという問題の原因になるため。読み書き・削除がSSDいちどに来てしまった場合、優先順位は 書き込み→読みだし→削除 となっているっぽくて、書き込みが多いと読み出しがいつまでも待たされる。結果的に、OSがフリーズしたように見えるなどの不具合の原因になってしまう。物理的にストレージを分けておけば、この問題は改善する。同一SSD内でパーティションを分けただけでは、SATAポートが共通なので意味が無い。