このページの本文へ

【最新パーツ性能チェック(Vol.34)】CPUの勢力図は変わるか? デュアルコアCPU4種対決!――Pentium D vs. Pentium XE vs. Athlon 64 X2 vs. デュアルコアOpteron 2xx

2005年06月01日 03時10分更新

文● 月刊アスキー編集部 野口岳郎

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

デュアルとマルチの間の深淵

 一見奇妙な結果となったのは、グラフ8の「Windows Media Encoder」によるWMVファイルの作成だ。WMVは典型的な“HTがよく効く”=“マルチスレッド化された”アプリだ。当然4スレッド実行のPentium XEに期待がかかる。
 ところが、予想に反してPentium XEのスコアは伸びず、Pentium 4 670をかろうじてかわした程度。ところが、同じデュアルコアでもHyper ThreadingがないPentium Dは大きく性能アップし、Pentium D 820がXEを出し抜き、Pentium D 840相当(実際はXEのHTをオフにした状態)ではリードは大きく広がる。

 Athlon 64もデュアルコア化することで性能が2倍近くに伸び、X2 4800+は、Pentium XEはもちろん、Pentium D 840相当に対しても12%のリードと、一気にグループ最後尾からトップに躍り出た格好だ。

Windows Media Encoder 9 PCMark 04
グラフ8・「Windows Media Encoder 9」でのWMV生成テストの結果(単位は秒、棒が短いほど高速)グラフ9・「PCMark 04」の結果

 Pentium DやAthlon 64 X2の性能を見る限り、WMEがマルチスレッド化されていて、それによって性能が上がることは間違いない。では、さらに強化した4スレッド同時実行のPentium XEで性能が、2スレッドのPentium Dより低いのはなぜだろうか?

 鍵は、同じく4スレッド実行可能環境であるデュアルコアOpteron×2の性能を見ると見当がつく。こちらも、デュアルコアCPU 1つの場合に比べ、性能がほとんど伸びていない。3つ以上のスレッドが動いていれば、デュアルコアに比べて高速になるはずである。このことから、どうやらWMEは「マルチスレッド」アプリではなく「デュアルスレッド」アプリであることがわかる。

 それにしても、Opteronのように性能が「上がらない」のはまだわかるが、「下がる」のはなぜか。これはおそらく、WMEの2つのスレッドが、場合によっては1つのコアに割り当てられてしまうためと思われる。Pentium XEは、2つのコアがそれぞれHTをサポートしている。仮にOSから見た場合に、コアAがCPU1/2、コアBがCPU3/4に見えるとしよう。
 Windows XPでは、WMEが作る2つのスレッドを、4つのCPUのうちのどれか2つに割り当てようとするので、運が悪いと、CPU1とCPU2、あるいはCPU3とCPU4に、2つのスレッドが割り当てられてしまう。この状態では、実際に作業を行なうのはコア1つだけになってしまい、性能低下につながるのではないかと想像される。これに対してデュアルコアOpteron×2の環境では、CPU1/2/3/4はどれもそれぞれ本物のコアなので、どの2つに割り当てられても性能が落ちることがない、というわけだ。

 同様の“事件”が、「PCMark 04」でも起きている。このテストには“マルチタスクテスト”がかなり含まれているが、それらは実際には“ウイルスチェックしながら(ワープロの)文法チェック”“ファイルを解凍しながら画像を加工”といった内容で、マルチタスクというより“デュアルタスク”だ。そのため、WMEと同じ問題が起き、Pentium XEはPentium D 840相当より性能が低く、Pentium D 820に詰め寄られる結果になっている。

 テストに用いたPentium XEとマザーボードはサンプル品であるため、CPUあるいはBIOSなどに問題があった可能性はある。また、OSやアプリが「本当のCPU」と「HTによって作られた論理CPU」とを区別し、重いスレッドが本物のCPUを優先して使うようになれば、将来的には回避可能かもしれないが、HTがこのような性能低下を招きうるということは記憶にとどめておいたほうがいいかもしれない。

カテゴリートップへ

注目ニュース

ASCII倶楽部

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

クルマ情報byASCII

ピックアップ