前回のベンチマーク対決のあとで、私は、「PC Doctor」本部のマシンに数日間徹夜してもらい、さらに多くの「Windows Vista Service Pack 1(SP1)」と「Windows XP SP2」のベンチマークテストを行う必要があると判断した。より高速で反応の良いOSはどちらなのか、明確に判定することは可能だろうか?
最初のベンチマークテストに寄せられた主な批判の中に、ファイルコピーの際、見えない部分でVista SP1とXP SP2の動きが違うという事実を、私が見過ごしているというものがあった。この違いはハードディスクへの書き込み時のキャッシュに由来するもので、XPはファイルをキャッシュするのに対し、Vistaの標準設定では書き込み時のキャッシュは無効になっている。加えて、ファイル転送のプログレスバーの仕様が異なり、XPとVistaでは挙動が異なることが、事態をさらに複雑にしている。Vistaではキャッシュがディスクにコミットされた時点でファイルコピーの経過を示すダイアログボックスが消えるが、XPではキャッシュのコミットが待ち状態であってもダイアログが消える。つまり、XPは速く「見える」ように設定されているのだ。この点について、Mark Russinovich氏が以下に詳しく説明している。
おそらく、このアルゴリズムの最大の欠点であり、多くのVistaユーザーが不満を訴える原因の1つになっているのは、サイズが256Kバイト〜数十Mバイトの大量のファイル群を含むコピーでは、体感上のコピー性能がWindows XPよりかなり悪くなることがある点だ。XPのアルゴリズムではファイルI/Oにキャッシュを用いているため、Explorerは目的ファイルのメモリへの書き込みが終わると、コピーのダイアログボックスを消してしまう。実際にはその後もCache Managerがバックグラウンドでデータをディスクにコミットしており、その処理にはもっと時間がかかる。一方、Vistaのキャッシュを使わないアルゴリズムの場合、Explorerはそれぞれの書き込み処理が完了するまで次の処理の命令を待つことになり、最終的にはコピーするデータがすべてディスクに書き込まれるまで「コピー完了」と表示しない。また、Vistaの場合、Explorerがコピーにかかる時間の予測を始めるまで12秒待つうえ、この予測計算のアルゴリズムはコピー速度の変動に左右されやすく、両者が相まって、ユーザーはXPより時間のかかるコピーにイライラを募らせることになるわけだ。
とにかく、Russinovich氏の記述が事実なら、XPは、信頼性を犠牲にして体感上の性能をアップさせ、ファイルのコピーが高速だとわれわれに信じ込ませていたことになる。それならば、コピーのスピードはいったん横に置いておいて、問題を違う角度から見ることにしよう。大容量ファイルを転送しているときのレスポンスを検討するのだ。というわけで、ファイルコピー操作中のシステムをベンチマークテストにかけることにする。