ニュース
[WinHEC 2006#05]ゲーマーにも無関係ではない,Windows Vista時代のPCストレージ高速化機能
2006/05/29 23:15
 Windows Vistaは,単純に新バージョンのWindowsというだけでなく,PC周辺機器の性能を引き出すOSとしても注目されている。
 かつてWindows 98(さまざまな制約を無視すればWindows 95からだが)でUSBがサポートされたときと同じような,ハードウェアの進化を促す,ソフトウェアとハードウェアのコラボレーション的な要素が幾つも盛り込まれているのだ。
 本稿では「Windows Vista Performance Technologies」と題して行われた,ストレージに関するセッションについてのレポートを行ってみたい。

■進化しても遅いHDD〜ランダムアクセス性能は
■10年前からほとんど変わっていないという事実


Gabriel Aul氏(Group Program Manager,Microsoft)
 PCについてよく指摘されるのは「起動に時間がかかる」というものだ。

 もちろん,HDDや周辺環境の性能は向上している。Windows 95/98時代,HDDの回転数は5400rpmや4200rpmが主流だったが,現在の主流は7200rpmだ。また,データ転送インタフェースはUltra ATA(33MB/s)から,現在ではSerial ATA 3Gbps(約380MB/s)となった。キャッシュメモリも,今では16MB搭載する製品が多い。
 だが,MicrosoftのグループプログラムマネージャであるGabriel Aul氏は「一気に読み出して一気に転送するバースト転送を行う場合,たしかにWindows 95/98/Me時代と比べてかなり性能が向上している。しかし,実際問題として,シークタイムはまったくといっていいほど進化していない」と指摘する。3.5インチHDDで10msというATA HDDの平均シークタイムは,確かに10年前からほとんど変わっていない。

 シークタイムとは,ヘッドがある位置から別の位置へ動いてからデータが読み出されるまでの待ち時間のこと。これはHDDのランダムアクセス性能を支配する要素だ。
 ちなみに,普段のPCオペレーションにおけるHDDアクセスの半分はランダムアクセスである。例えば,Windowsやゲームアプリケーションの起動時に頻発する,レジストリの読み出し工程では,終了までに5〜6回のランダムアクセスが発生するという。
 また,ランダムアクセスはHDDアクセスを遅くするだけではない。メカの固まりであるHDDにおいて,ランダムアクセスによってヘッドが何度も動くことになれば,その回数はそのままHDDの寿命の長短にもかかわってくる。

左:HDDは高速化されているが,ランダムアクセス性能の根幹であるシーク性能は,HDDが機械装置であるという構造的な制約のため,ほとんど高速化されていないことを示すスライド
右:こちらのスライドでは,PCオペレーションにおける体感性能において,HDDのランダムアクセス性能が支配的であると主張されている。「MobileMark 2005」というノートPC向けベンチマークテストでは,ディスクアクセスの50%が4KBサイズのランダムアクセス読み出しだったとか


■AI搭載の「SuperFetch」で
■仮想メモリ関連のHDDアクセスを最適化


「物理メモリの読み戻し」で,PCシステムが遅くなっては本末転倒なので,ユーザーがPCに高負荷な処理をさせていないとき,つまりPCが暇なときにSuperFetchは実行されるという
 HDDアクセスといえば,どうしても単純なファイルの読み書きを連想してしまうが,実のところ,頻度としては仮想メモリの読み書きがかなり多い。

 仮想メモリとは,HDD上に,文字どおり仮想的に展開されているメモリ空間で,そのPCシステムが搭載する物理メモリ容量以上のデータを記憶するときに使用され,その時点までで一番古い内容がHDDに退避されていく。
 だから,複数アプリケーションを起動している場合,あるアプリケーションから別のアプリケーションへ[Alt]+[Tab]操作などでフォーカスを切り替えたときに,HDDアクセスが頻発し,遅くなってしまう。仮想メモリについては詳しくなくても,こんな経験をしたことがある人は少なくないだろう。

 そこでWindows Vistaでは,この仮想メモリ管理におけるHDDアクセスを徹底的に低減するために,「SuperFetch」という機能が搭載されることとなった。
 従来は「古い内容はHDDへ退避」という,時系列管理のみで行っていた仮想メモリの管理(「ページ管理」という)。これをSuperFetchでは,新開発のAI学習ロジックを組み合わせて行うのだ。

 具体的には,仮想メモリの(ページの)使用頻度を吟味し,時系列的に古い内容であっても,高確率で使用されるのであれば物理メモリに残したりする。また,ユーザーがページファイル(仮想メモリ領域に保存されたファイルのこと)をどう使うかという使用パターンを学習し,学習結果を利用して,HDDに待避されているページファイルを先読みして物理メモリに戻したりもするようだ。
 このSuperFetchが効果的に働くことで,ムダなHDDアクセスが減り,結果としてPCのパフォーマンスが向上するというのが,Microsoftの描くシナリオである。

■「ReadyBoost」で手持ちのフラッシュメモリを
■SuperFecth用キャッシュメモリに


手持ちのフラッシュメモリがWindows Vistaのパフォーマンスアップに効く!
 SuperFetchと連動する「ReadyBoost」という機能も用意される。
 ReadyBoostの基本コンセプトは,「PCに接続したフラッシュメモリを,SuperFecth専用のキャッシュメモリとして利用する」というものだ。フラッシュメモリの種類はそれこそ何でもよく,USBメモリやコンパクトフラッシュ,SDメモリーカードなどのほか,PCI Expressに接続されるアドオンカードのような形態でもOK。その形状やフォームファクターは問われない。

 2GB以上のフラッシュメモリはまだまだ高価だが,256MB〜1GBの製品は比較的リーズナブルになりつつある。結果として,容量256MB以上のUSBメモリや,コンパクトフラッシュ,SDメモリーカードなどを複数所持しているという人も,最近では珍しくないだろう。
 SuperFetchが管理するページファイルのうち,アクセス頻度が高いものをこのフラッシュメモリに記録することで,HDDへの実アクセスを低減させるのが狙いだ。

 フラッシュメモリは,高速なものだと,読み出し性能は最高60MB/s,書き込み性能でも30MB/s程度ある。バースト転送性能はともかく,HDDのような機械的な動作がないため,ランダムアクセス時におけるパフォーマンス低下がない。これは大きなメリットだ。
 Aul氏によれば,フラッシュメモリのランダムアクセス性能はHDDの10倍が見込めるそうで,ReadyBoostによるパフォーマンス向上効果は大きいとのこと。もちろん,HDDへの実アクセスを減らせるため,省電力効果と,HDD長寿命化という副次的なメリットもある。

ReadyBoost機能によってフラッシュメモリ上に書き出されるデータはAES128bit暗号化がなされるため,情報漏洩の心配はないという
 ちなみに,ReadyBoostによるキャッシュシステムは,HDDに対して遅延書き込みを行わないライトスルー方式になる。つまり,システムから書き出されるデータは,必ずフラッシュメモリとHDDの双方に記録されるため,物理メモリからHDDへの書き込みは,HDDアクセス低減に寄与しない。逆にいえば,ReadyBoostでアクセラレーションされるのはHDD→物理メモリの読み出し時のみということになるわけだ。
 もっとも,このライトスルー機構のおかげで,フラッシュメモリはいつ取り外しても問題ないようになっているのだが。

セッションでは,複数のMicrosoft製オフィスアプリケーションを起動するデモンストレーションが行われた。通常のシステムでは25.6秒かかるところが,ReadyBoostを利用することで22.9秒に短縮されている。大容量のフラッシュメモリを搭載した状態で,SuperFetchの学習効果が上がれば,パフォーマンスはさらに向上していくとのことだ


■フラッシュメモリを内蔵させたHDD
■「ReadyDrive」テクノロジー


ReadyDriveの仕組み。ReadyBoostについて理解できていれば,この図を見て「ああ,なるほど」と思えるだろう
 さて,ReadyBoostの話には続きがある。この発想をもっとシステマチックに実現するべく生み出されたのが,「ReadyDrive」というテクノロジーだ。
 ReadyDriveは,HDDにキャッシュメモリとしてフラッシュメモリを組み込んだ,いわば“HDD+フラッシュメモリのハイブリッドディスク”なのである。

 ReadyDrive対応の「ハイブリッドHDD」(Hybrid HDD,H-HDD)は,Microsoftが策定した新しいATAデバイス制御コマンドを使って駆動する。このため,Windows Vista側からReadyDriveにあるフラッシュメモリの内容を明示的に直接制御したりといったことが可能になる。ReadyBoostよりもシステムに密着した形で制御が行えるようになるのだ。
 フラッシュメモリはハイブリッドHDDに内蔵されるため,ReadyBoostとは異なり,取り外しが不可能。このため,ReadyBoostでは行えなかった遅延書き込みも可能になり,ランダム書き込み時のパフォーマンス向上も期待できるようになる。

 さらに! フラッシュメモリは電源を落としても内容が保持されるため,PCを「休止状態」に移行させるとき,データの一部(や,場合によっては全部)をハイブリッドHDD内蔵フラッシュメモリに書き出すことで,休止状態からの復帰時に,この内蔵フラッシュメモリからデータを読み出せる。休止状態からの復帰動作においてもHDDアクセスを低減させ,高速化を図れるのだ。

 なお,ハイブリッドHDDは,Windows XP以前の環境に接続した場合,従来と同じ普通のHDDとして認識され,内蔵フラッシュメモリは活用されない。これは前述したように,フラッシュメモリ制御には新設されたフラッシュメモリ制御専用のATAコマンドが利用されるからだ。HDD単体としての下位互換は維持されるが,実質的にハイブリッドHDDはWindows Vista専用という認識でいいだろう。

ReadyDriveは,パフォーマンス向上の面だけでなく,HDDの物理駆動を低減させる効果もあるため,ノートPCではバッテリー駆動時間延長効果もあるという


■ReadyDrive対応ハイブリッドHDDや
■フラッシュメモリドライブ「SDD」の展示がExpoで


1.8インチ ハイブリッドHDD。HDDの下にフラッシュメモリ基板が用意されており,サイズ的には2.5インチHDDの置き換えに使えそうなイメージだが,「これはあくまで試作タイプ」とのこと
 WinHEC ExpoのMicrosoftおよびSamsung Electronicsブースでは,ReadyBoostに関連した展示が行われ人気を呼んでいた。

 Microsoftブースにあったのは,1.8インチタイプの日立グローバルストレージテクノロジーズ製ハイブリッドHDD。
 フラッシュメモリ搭載による追加コストは最低限だというが,ゼロではない。このため,ハイブリッドHDDは,バッテリー駆動時間や耐衝撃性の向上がそのままメリットとして活かせ,同時に,フラッシュメモリ分のコスト上昇が見えにくい,やや高価なノートPC向けHDDに向いているというのが,業界の一致した認識のようだ。

 Samsung Electronicsのブースでは,2.5インチタイプのハイブリッドHDDを展示していた。こちらはすでにボディが一体化されており,量産品に近い面持ち。
 製品名は「FlashON」とされ,インタフェースはSerial ATA(150MB/s)。展示されていたのは,キャッシュ容量8MBで,回転数5400rpmの80GBモデル「MH80」という。

 内蔵するフラッシュメモリの容量は256MB。公称値では読み出し速度は100MB/s,書き込み速度は20MB/sとなっていた。平均消費電力は通常の同クラスHDDが1.2Wなのに対し,MH80では0.24Wを達成しているとのこと。

2.5インチタイプnSamsung Electronics製ハイブリッドHDD。スペックや製品名も定まっており,量産間近という印象だ(左)。右は,ハイブリッドHDDのために開発されたというフラッシュメモリ「GigaCube-H」


 このほか,Samsung Electronicsは,100%のフラッシュメモリだけで構成されたディスク「Solid State Disk」(SDD)も展示していた。

 SDDのフォームファクターは1.8インチ。容量は16GBと32GBの2タイプが用意されるが,価格は未定だそうだ。同社の担当者によれば,「容量単価はとしてはかなり高価になるので,特殊用途かスペシャルモデルへ供給される」とのことだった。ソニーは小型モバイルPC「VAIO TYPE-U」の0スピンドルモデル(モーター駆動機器を搭載しないモデルの意)を開発中と発表しているが,おそらくこのSDDが採用されているのではなかろうか。

 インタフェースはATA5(UDMA4)に完全互換。HDDとの完全置き換えが可能になっており,シーケンシャル読み出しで58MB/s,シーケンシャル書き込みで32MB/sを達成しているとのことだった。

左:SDDとHDDの比較。ランダムアクセスに強く,軽量,省電力性能に優れ,動作可能温度が広いというのが特徴と謳う
右:“100%フラッシュメモリ製HDD”といった趣のSDD。SDDがHDDに置き換わる未来は来るのか?


SDD搭載PC(左)とHDD搭載PC(右)のガチンコ・ベンチマークデモンストレーションを披露していたSamsung Electronics。写真はWindows Vista起動競争の様子で,SDD搭載PCではデスクトップ画面が表示されているのに,右のHDD搭載PCはまだOS起動中だ
 ブースでは,1.8インチHDDと1.8インチSDDをそれぞれ搭載した2台のSamsung Electronics製ノートPCを展示し,Windows Vistaの起動時間競争や,複数のMicrosoft製オフィスアプリケーションの起動時間を計測するベンチマークテストを公開していた。
 前出のサムスン担当者は「展示しておいてなんだが,それほど急激にSDDがスタンダードになる未来は来ないだろう。やはり価格がネックだから」と語る。

 PCは進化すると,より大量のデータを取り扱うようになり,これに伴って大容量のストレージデバイスが必要になってくるが,この「容量対コスト」のバランスにおいて,フラッシュメモリがHDDに追いつける見込みは,少なくとも短期的にはまだないという。現時点でオーバー100GBのSDDを作ろうとするとコストは同容量のHDDの4〜5倍になるそうで「このままではとても民生用途への訴求は難しい」とのことだった。

複数のオフィスアプリケーションを起動するテスト。HDD搭載PCでは27.9秒という結果なのに対し,SDD搭載PCはなんと6.4秒!

 というわけで,SDDがブレイクして,ゲーマー向けPCに搭載されるような未来は,すぐにはやって来ない気配だが,低価格化が進むフラッシュメモリをHDDに内蔵させたハイブリッドHDDは,Windows Vistaに合わせて,自然な形で登場してきそうな気がする。HDDのパフォーマンスがデスクトップPCと比べて低いノートPCを利用する人はもちろん,デスクトップPCでも,高速化によってゲームの起動やゾーニングなどが短縮されるとすれば,これはかなり魅力的。3.5インチタイプのハイブリッドHDDの登場の可能性も十分あり得ると言っておこう。(トライゼット 西川善司)


Windows Vista
■開発元:Microsoft
■発売元:マイクロソフト
■発売日:2007/01/30
■価格:エディション,入手方法による

【この記事へのリンクはこちら】

http://www.4gamer.net/news/history/2006.05/20060529231522detail.html