連載
» 2008年02月01日 11時00分 UPDATE

サクッとおいしいVistaチップス 33枚め:VistaのHDDキャッシュ設定を変更して高速化する (1/2)

Vistaの動作を手軽に高速化したいなら、HDDのキャッシュに関する設定を見直すのも手だ。特にノートPCでは、リスクを少なく高速化が図れるだろう。

[織田薫,ITmedia]

PCでメインの記録装置ながら低速なHDD

今回のチップスが使えるエディションは?
エディション Home Basic Home Premium Business Ultimate
対応状況
tm0702tips33_08.jpg

 HDDは大容量かつ低価格なことから、PCに欠かせない記録装置として定着している。しかし、ドライブの内部でディスクが高速回転する構造のHDDは、PCを構成する記録装置の中では最も低速な部類に入る。一般的には、CPUに内蔵された1次キャッシュ、2次キャッシュ、メインメモリ、HDDの順にデータ転送速度が遅くなっていく。モバイルノートPCなどで採用例が増えつつあるSSDについても、現状ではHDDから劇的に速度が向上するわけではない。

 規格上の数値を比較すると、メインメモリは数ギガバイトの転送速度があるのに対し、HDDの転送速度は数十メガバイトであり、圧倒的な速度差がある。しかし、メインメモリは揮発性で電源をオフにすると内容が消えてしまうこと、容量に限界があることなどから、プログラムやデータのほとんどはHDDに格納される。つまり、プログラムを起動したり、データを読み書きするためにはHDDにアクセスする必要があるわけだ。

HDDのライトキャッシュバックを有効にする

 HDDの遅さを補うため、多くのOSはキャッシュ機構を備えている。データを読み出す場合、HDDから読み出したデータを、HDDより高速なキャッシュ用のメモリに書き込み、2度目以降のアクセスはHDDではなく、キャッシュメモリからデータを取得する。

 HDDにデータを書き込む際には、キャッシュメモリとHDDにデータを同時に書き込んでおき、該当データへのアクセスはHDDではなく、キャッシュメモリからデータを取得する。この同時にデータを書き込む動作はライトスルーキャッシュと呼ばれる。読み出す場合はキャッシュメモリからデータを取得すればよいので、HDDからの読み出し速度を見かけ上向上させることが可能だ。

 一方、HDDへの書き込みを見かけ上向上させる動作はライトバックキャッシュと呼ばれ、実際にHDDに書き込む代わりに、キャッシュメモリだけに書き込んでプログラムに処理を戻す。HDDへの書き込みは、OSが任意のタイミングで行う。

 ライトスルーキャッシュは不意の電源断などでデータの不整合を起こすことはないが、ライトバックキャッシュは不意の電源断などでデータを失う可能性がある点は注意が必要だ。

※記事初出時、ライトスルー/バックキャッシュの説明に誤りがありました。おわびして訂正いたします(2009年4月20日)

 ちなみにOSだけでなく、HDD自体も性能向上のためにキャッシュ用のバッファを搭載している。OSのキャッシュ機構と同様に、ライトスルーキャッシュとライトバックキャッシュを利用できるのが一般的だ。しかし、Windows Vistaの場合、HDDのキャッシュはライトスルーキャッシュのみ有効で、ライトバックキャッシュは無効になっている。これは、突然の停電などでデータが失われるのを極力避けるための措置だ。

 VistaでHDDのライトバックキャッシュを有効にすれば、データ喪失のリスクを背負うことになるが、パフォーマンスの向上が期待できる。HDDのライトバックキャッシュは、「デバイスマネージャ」で有効にすることが可能だ。

tm0702tips33_01.jpgtm0702tips33_02.jpgtm0702tips33_03.jpg コントロールパネルの「ハードウェアとサウンド」から「デバイスマネージャ」をクリック(写真=左)。「デバイスマネージャ」で「ディスクドライブ」を展開し、設定を変更したいHDDを右クリックして「プロパティ」を起動する(写真=中央)。「ポリシー」タブで「拡張処理能力を有効にする」のチェックボックスをオンにする(写真=右)

 ただし、HDDのライトバックキャッシュは、バックアップの電源供給がある場合のみ有効にすることが推奨されている。例えば、デスクトップPCの電源をUPSから供給している場合や、ノートPCのようにバッテリーを利用できる場合では、安全性は増すというわけだ。

       1|2 次のページへ

Copyright© 2016 ITmedia, Inc. All Rights Reserved.