意外に遅くないWOW64
前回に続いてのベンチマークテスト…ということになりますが、今回のポイントはWindows XP Professional x64 Edition。前回のテストは、全て32bit版のWindows XP上での結果です。今回は、同じハードウェア上で32bit版と64bit(x64)版のWindows XPを走らせて、その上でのソフトウェアの動作速度を比較してみたいと思います。
本来、x64 Edition上では64bit版のソフトウェアを使わなくてはならないわけですが、いきなり全てのソフトウェアが64bit化されるわけではありません。ほとんどの場合、標準で組み込まれているWOW64(Windows 32 On Windows 64)というコンポーネントを使って、従来使っている32bit版のソフトウェアをエミュレーションで動かすことになります。
「エミュレーション」ということは、ソフトウェアでOSの仕様差を吸収しているわけで、動作は遅くなるのでは?という印象がありました。しかし、WOW64を使った32bit版Windows XP用ソフトの動作は、実際に使ってみても全然遅さを感じさせません。これを数値で比較するために、まずはCrystalMark 2004の結果を見ていただきましょう。このベンチマークソフトにはまだx64版は登場していませんから、x64 Edition上ではWOW64経由でテストするしかありません。
CrystalMark 2004 | ||
---|---|---|
Machine | 32bit版 | 64bit版 (WOW64, 対32bit版%) |
ALU | 16903 | 16214 (96%) |
FPU | 19004 | 15256 (80%) |
RAM | 10253 | 9469 (92%) |
HDD | 11785 | 10786 (92%) |
GDI | 11777 | 12982 (110%) |
D2D | 7859 | 7859 (100%) |
OGL | 35044 | 34414 (98%) |
Mark | 112625 | 106980 (95%) |
結果はご覧の通り。FPU、RAM、HDDがやや落ち込んでいるようですが、全体的には32bit版Windows XPで実行したのとほぼ同じと言って良いでしょう。総合でもポイントの落ち込みはたったの5%。エミュレーションという言葉からは想像も付かないくらいの速さで動作しています。
Super π 1.1 | ||
---|---|---|
Machine | 104万桁 | 838万桁 |
32bit版 | 39秒 (100) | 7分25秒 (100) |
64bit版 (WOW64) | 39秒 (100) | 7分20秒 (101) |
Super πも32bitプログラムなので、x64 Edition上ではWOW64の能力を見ていることになりますが、結果は32bit版Windows XPとほとんど変わりませんでした。どうやら、WOW64での32bit版ソフトの動作は、32bit版Windows XPでの速度とほぼ変わらないか、違ったとしても気にはならないレベルである…といえそうです。64bitモードでの動作がエミュレーションを高速に行えるくらい十分に速いのか、それとも変換自体が非常に簡単なのか…後者のような気がしますが、この結果だけでは明言はできないところです。
全然速くないx64専用ソフト
64bit版Windows XP(そしてもちろん64bit CPU)の潜在能力を最大限に発揮させるためには、x64専用に作られたソフトウェアが必要です。まだ種類は全然揃っていない状況ですが、ちょっと試してみることにしました。
Windows Media Encoder 9 | ||
---|---|---|
Machine | 320 * 240 pixels, 272kbps, 15 sec. |
1280 * 720 pixels, 5.0Mbps, 180 sec. |
32bit版 | 13秒 (100) | 25分08秒 (100) |
64bit版 (x64) | 13秒 (100) | 25分33秒 (98) |
Windows Media形式の動画を作るWindows Media Encoderは、64bit版Windows XPに32bit版をインストールすることができず、「x64専用版」が用意されています。まずは、これで比較してみました。前回と同じ15秒間のWeb公開向けの小さな映像で試したところ、どちらも全く13秒で終了。サイズが小さすぎて競争にならない?と思い、3分間の映像をハイビジョンクラスの動画に拡大する…という、思いっきり重い処理にしてみました。ところが、これでもほとんど時間に差がありません。何だか拍子抜けしてしまいました。
Shade 8.5 Professional | ||
---|---|---|
Machine | 160 * 120 pixels | 1024 * 768 pixels |
32bit版 | 1分51秒 (100) | 45分25秒 (100) |
64bit版 (WOW64) | 1分50秒 (101) | 45分21秒 (100) |
64bit版 (x64) | 2分00秒 (93) | 45分17秒 (100) |
3次元CG作成ソフト・Shade 8.5の場合、インストール手順の関係で、64bit版Windows XP上には32bit版とx64版の両方がインストールされます。これらを使ってのスピード比較もしてみることにしました。ところが、こちらも合計3パターンでほぼ処理時間は同じ。メモリを大量に消費するので差が出てくるのでは?と踏んでいたXGAサイズの画像レンダリングでも、それは変わりませんでした。
今回の結果からは、少なくともこの2本のソフトではx64専用ソフトによる作業の高速化は期待できない…と判断せざるを得ません。期待していただけにかなり残念です。もしかすると、私の知らないどこかに特殊な設定があって、それを変更しないと実力が発揮できないのかも?と思ったりもしますが、そうだとすればやっぱり困った仕様です。
64bitはまだ早いのかも
64bit版のソフトが高速に動作すると考えられる根拠は、大きく二つあります。一つは、32bitと比べると2倍の桁数を一気に演算できること。しかし、これは実際に64bitをフルに使い切るプログラミングとの組み合わせが必須になります。パソコン内部で64bitの数値が直接必要になることは、実はそれほど多くありません。32bit×2、16bit×4のような形で組み合わせれば能力を生かせるわけですが、これはこれでプログラムにちょっと工夫が必要です。上手く処理しないと、逆に速度を下げる要因になるかも知れません。
もう一つの根拠は、取り扱えるメモリ領域の上限が増えて、大量にメモリを必要とするソフトウェアでは有利になること。しかし、これも実際に大量のメモリが必要な事態にならなくては意味がありませんし、それ以前に大量のメモリ(具体的には4GBを超える容量)を搭載しなくてはなりません。4GB超のメモリが搭載できるシステムも、まだそれほど多くありません。実際にこの利点が生きるのは、サーバー向けなどの特殊な用途になるようです。
これらを考え合わせると、64bit環境はまだその潜在能力を十分に発揮できていない…と言えそうです。それでも、WOW64は十分なパフォーマンスを持っていますから、32bit版Windows XPの代わりにx64版を使ってみる…というのも、ドライバさえ整っていればあり得る選択ですね。次世代Windowsとして来年初頭には登場するWindows Vistaでは、最初から64bit版が提供されます。今のうちにちょっと苦労しておいて、Vista時代に備えておくのも良いかも知れません。
64bit CPUには、能力が最大限に発揮できる64bit版のOSを…ということで、Athlon 64 X2搭載の新タワーPCでは、現在32bit版と64bit版の2つのWindows XPを選択起動できるようにしてあります。しかし、64bit版の出番はほとんどありません。最も期待していた「処理速度」という面で、全然違いがわからなかったんです。今回は、それを数字で確認してみました。
極端な話、32bitでも64bitでも、足し算に要するクロック数が同じなら「1+1=2」を計算する速度は変わりません。私たちにとって、64bitを使い切れるだけの状況、使わなくてはならない状況がまだ身近に存在しない…というのが実情のような気がします。もっとも、技術の革新に応じてコンピュータに要求される作業はどんどん高度になっていきますから、そのうち64bitの使い道はちゃんと出てくると思っています。それがいったい何なのかは、まだわからないんですが。
コメントを残す