このページの本文へ

【最新パーツ性能チェック(Vol.10)】Opteron 1.6GHz+MSI“K8D Master-F”世界で初めて明らかになった秘密も登場!

2003年05月03日 19時55分更新

文● 週刊アスキープラス編集部 野口岳郎

  • この記事をはてなブックマークに追加
  • 本文印刷

Opteronの隠された恐るべき仕様とは

 次に基本性能のチェックとして、SiSandraで演算能力を見てみた。整数演算能力を見るSiSandraのintは、Pentium 4-2.8GHzが優位に立っているが、このテストはCPUコア性能の測定用なので、コアクロックが低いOpteronの数値としてはまずまずの結果だろう。
 問題は浮動小数点演算の性能だ(グラフ5)。x87命令については、Athlon XP-2600+よりもかなり低いものの、これはちょうどクロック比と一致している。命令のレイテンシが長く、メモリ性能よりコアのクロックに比例するこのテストの結果としては妥当なものだ。Pentium 4-2.8GHzよりは上に来ており、Athlonゆずりのx87の強さが出ている。ところが、2つの倍精度演算を同時に行なえる(=性能が2倍になっていい)SSE2を使った場合のFPU性能が、Opteronでは10%程度しかアップしていない。Pentium 4は、x87よりSSE2が2.2倍も速くなっている。おかげで、SSE2利用時ではP4-2.8GHzに逆転されている。

 もっと気になるのは、Multimediaベンチマークの結果だ(グラフ6)。今回SSE2の搭載で、128bit SIMD整数演算が高速化されることが期待されたのだが、実際にはこの値がPentium 4-2.8GHzやAthlon XP-2600+の半分ほどしかない。P4はともかく、Athlon相手にこの差は大きすぎる。同クロックに換算してもなお30%マイナスというのは、同一アーキテクチャとしては考えられない。しかも、OpteronはSSE2でパワーアップしているはずなのだ。
 不審に思いよく見てみると、Athlon XPでのMultimedia Intは(SSE2が使えないため)MMXを使って行なわれているが、Opteronでは当然のように、新設されたSSE2の128bit SIMD整数演算を使った場合の結果になっている。つまり「OpteronのSSE2の128bit整数演算は、従来の、MMXを使う64bit整数演算よりかなり遅い」ということになる。もっと簡単に言うと、「OpteronではSSE2を使うと遅くなる」ということだ。

 SSE2は128bitいっぺんに計算できるから、64bitのMMXの2倍速いはずなのに、逆に30%遅いとはどういうことだろうか。おそらくOpteronは、SSE2の128bit SIMD整数演算を、内部で64bitづつに分けてMMX演算ユニットに発行しているのだろう。だがそれでも、性能はMMX利用時と同じにはなるはずだ。この分割作業によほどのオーバーヘッドがあるのか、あるいは、命令発行に際してなんらかの制限があって、MMX命令より発行数を絞られている可能性も高い。

 ここまで書けば、ピンと来る方も多いだろう。期待にそぐわぬ性能だったTMPGEncは、オプションでSSE2の利用をON・OFFすることができる。半信半疑でSSE2のチェックボックスをOFFにして計測したところ、なんと、速度は40%ほども向上し、Pentium 4-2.8GHzより速く処理が終わってしまった! グラフ中にOpteron 1.6GHz※とあるのは、SSE2をオフにしたときの値である。ちなみにSiSandraでもSSE2を使わないでMultimediaを計測することができ、その場合にはAthlon XP-2600+やPentium 4-2.8GHzの80%(9007)まで性能が上がることも確認できた。

 BIOSなどのCPU初期設定に不具合があるとか、ソフト側で注意すべき点があるとかいう可能性はないとはいえないが、きちんとSSE2が認識され、使われている以上、問題はCPU側にあると見るほうが妥当だろう。Windows Media Videoの性能が低いのも、SSE2に足を引っ張られている可能性も高い(残念ながらWMVではSSE2をオフにするというオプションはない)。
 もしこの実装がOpteronの仕様なのだとしたら、個人ユーザーには残念な限りである。確かにサーバ用途では、SSE2が、特にSSE2の整数命令が必要とされる局面は少ないだろうが、ビデオワークステーションなどでは無視できないはずだ。それにTMPGEncのようにSSE2をオフにできるソフトはそう多くない。アプリケーションは、CPUにSSE2機能があれば、当然それを使って高速処理を図ろうとする。今後アプリのSSE2対応が進めば進むほど、Opteronでの速度は遅くなるという、とんでもないジレンマが発生することになる。アプリがOpteronを検出してSSE2を使わないようにしてくれればいいが、それでは何のためのSSE2なのか、という話になる。

 Hammerアーキテクチャは、SSE(2)で使うXMMレジスタを15に増やしており、これは、今後SSEを積極的に活用していく、という意志の現われと取るのが自然だ。ひょっとすると16個のXMMレジスタを使える64bitモードでは本来の性能を発揮できるようになっているのだろうか? いずれにしても、ホーム向けのAthlon 64では、32bit動作時でも、少なくともMMX利用時より性能が落ちるようなことがないよう、改善されると信じたいところである。

カテゴリートップへ

注目ニュース

ASCII倶楽部

ASCII.jpメール アキバマガジン

クルマ情報byASCII

ピックアップ