仮想化道場

苦難の2013年を迎えるAMD

 昨年、新しいBulldozerアーキテクチャを採用したサーバープロセッサ(Opteron)をリリースした米AMD。2012年には、Bulldozerアーキテクチャを改良したPiledriverアーキテクチャのOpteronを、11月に発表した。また10月には、64ビットアーキテクチャのARMコアを採用したプロセッサを、2014年に提供することも明らかにした。

 今回は、こうした一連の動きを総括しながら、AMDのサーバープロセッサのロードマップを分析していく。

性能が伸びなかったBulldozerアーキテクチャのOpteron

 昨年、鳴り物入りで発売されたBulldozerアーキテクチャのOpteron 6200は、当初期待されたほどサーバー分野へ浸透はしていない。問題点としては、AMDが説明しているほどパフォーマンスがアップしていないことだ。

 BulldozerアーキテクチャのCPUは、1つのCPUモジュールと2つの整数演算コア、1つの128ビット浮動小数点演算コアから構成されている。従って1つのBulldozerモジュールでは、2つの整数演算スレッドが同時に実行できる。

 IntelのHyper Threading(HT)のような、仮想的にCPUコアを2つに見せるアーキテクチャと比べると、実際に整数演算の物理コアが2つあるため、AMDでは、マルチスレッドのパフォーマンスが向上すると説明していた。

 確かにAMDの考えるとおり、1つのCPUモジュールに物理的な整数演算コアが2つあることは大きなメリットになった。しかし実際は、個々の整数演算コアのパフォーマンスが低いため、プロセッサ全体では大幅なパフォーマンスアップは果たせなかったのだ。

 当初からこういった問題は指摘されていたが、AMDでは整数演算コアをシンプルに(トランジスタ数を少なく)して、1つのプロセッサに、より多くのCPUモジュールを搭載する方向で開発を進めていた。多くのCPUモジュールを搭載しても個々のCPUモジュールの消費電力が小さいため、Intelのプロセッサよりも低消費電力でありながら、高いパフォーマンス出すことができるとしていたのである。

 実際に、Bulldozerアーキテクチャでは8コア(4モジュール)のOpteronプロセッサが提供されたが、ライバルであるIntelは製造プロセスを微細化し、力業で8コアのXeonを実現してしまった。

 サーバー向けのアプリケーションはクライアント向けのそれと比べてマルチスレッド化が進んでいるが、CPUコアがある程度以上あっても、パフォーマンスがリニアに伸びていかなくなる。もちろん、アプリケーションの特性によってリニアにパフォーマンスが伸びていくモノもあるが、企業で利用するアプリケーションの多くでは、やはり個々のCPUコアの性能向上を必要としていた。

 AMDでもこの点を考慮し、CPUコアの設計をシンプル化することでクロック数を大幅にアップさせ、必要な性能を稼ごうとしていた。しかし、Bulldozerアーキテクチャのプロセッサでは、32nmの製造プロセスが足かせになったのか、当初期待したほどクロックはアップせず、消費電力も高く、IntelのXeonをしのぐプロセッサにはならなかった。

改良版BulldozerのPiledriverを投入

 2012年11月に発売したPiledriverアーキテクチャのOpteronも、基本的なコンセプトは2011年のBulldozerアーキテクチャと同じだが、細かな部分をチューニングして、性能アップを図っている。

 例えば、PiledriverアーキテクチャもBulldozerアーキテクチャと同じく32nmの製造プロセスだが、Cyclosが開発した共振クロック・メッシュを採用することで、クロック分配にかかる消費電力を削減し、高いクロック数で動作するプロセッサを実現している。

 それでも、個々のCPUコアの性能向上は、Bulldozerアーキテクチャから10~15%伸びた程度にとどまっているという。

 実際に発売されたPiledriverアーキテクチャのOpteron 6300シリーズは、最大16コア(2つのCPUダイをMCMで1つにしている)を実現しているが、現状のクロックは2.70GHz(TDP 140W)にとどまった(同じPiledriverアーキテクチャを使用したデスクトップ向けのAMD FXシリーズでは、8コア/4モジュールで4.0GHzという非常に高い動作クロック数を実現している)。

AMDではクラウドで利用されるコンピューティングを3つのエリアで考えている。スイートスポットは、この3つのエリアが重なる部分にある
SeaMicroのファブリックコンピュータは、多数のプロセッサを搭載できるサーバーだ
SeaMicroのファブリックコンピュータには、早速PiledriverアーキテクチャのOpteronが採用された。10Uのシャーシに64ソケット(8コア×64ソケット=512コア)のプロセッサが搭載できる
今後は、スタンドアロンサーバーから、ブレードやファブリックサーバーへとサーバーの中心が変わってくる

HPCやVDIに適したOpeteon

 このように、Xeonと比べた場合の性能面でのアピールに劣るからか、AMDのOpteronプロセッサは、データベースやERPシステムなどの企業の中核的なサーバーとして普及していない。

 しかしサーバーベンダーによれば、HPC分野、VDI(仮想デスクトップ)を構築するサーバーなどでは、Opteronサーバーが指名買いされていると話している。

 HPC分野は、多数のプロセッサを使い演算を行うため、サーバーの台数が問題となる。Opteronは、CPUコア数が多く搭載されている割には価格が安いため、コストパフォーマンスに優れている。

 このため、多数のサーバーを利用するHPC分野などでは積極的に採用されているようだ。また、HPC分野は大学や研究所など、ユーザー自身がアプリケーションの開発を行っていることから、自分たちのシステム向けにチューニングしたアプリケーション開発が行えることも、大きな理由だろう。

 VDIに関しては、Opteronシリーズは物理CPUコアがXeonと比べて多いことが上げられている。Xeonの物理CPUコアは、1プロセッサあたり最大8~10コア(HT利用時で16~20スレッド実行)となっている。

 一方のOpteron 6300シリーズは、MCMにより2つのCPUダイを1プロセッサにまとめているとはいっても、物理CPUコアを最大16個搭載している。VDIなどを実行するサーバーでは、物理CPUコアの数が多い方が仮想デスクトップ環境を効果的に集約できるため、Xeonと比べて安価で、多くの仮想デスクトップ環境を扱えるOpteronの方が好まれるのだという。

次世代のSteamrollerアーキテクチャ

 ここまでは、2011年から2012年にかけてのOpteronの姿を紹介してきたが、ここからはいよいよ本題に入ろう。

 AMDでは、Piledriverアーキテクチャを大幅に改良したSteamrollerアーキテクチャのプロセッサを2013年に投入する予定だった。

 Steamrollerアーキテクチャは、Bulldozerアーキテクチャの弱点だった命令デコーダーを2系列に拡張して、複数のCPUコアがアイドルしないように改良されている。

 これ以外にも、CPUコアを改良し、Xeonに負けないだけのCPUコア性能を実現する予定だった。

 また、Piledriverアーキテクチャで採用した共振クロックメッシュをより改良して、現行のOpteron 6300シリーズよりも高いクロックでの動作を計画していた。

Steamroller世代では、デコーダーを2系統にして、演算ユニットがアイドルしないようにする
デコーダーを増やすことで、演算ユニットの同時実行性がアップする。
Steamroll世代では、CPUコアの1次キャッシュメモリを増やしたり、スケジューラを効率化したりすることで、パフォーマンスがアップする
Steamroller世代では、フェッチ、L2、浮動小数点演算ユニットなどを効率化することで、省電力化を図っている

2013年のリリース予定からSteamrollerアーキテクチャの姿が消えた

 ところが、このSteamrollerアーキテクチャのリリースに暗雲が立ちこめている。

 Steamrollerアーキテクチャでは、AMDから分離した半導体製造ファウンドリー、GLOBALFOUNDRIESの28nm製造プロセスを利用する予定だった。しかし、どうやら、GLOBALFOUNDRIESの28nm製造プロセスの開発が難航しているため、2013年の量産には間に合わなそうだという。

 GLOBALFOUNDRIESでも、ARMアーキテクチャでは28nm製造プロセスをテストしているが、高速で消費電力の高いデスクトップやサーバー向けのプロセッサ製造とは少し異なる。このため、単に28nmプロセスが完成したといっても、デスクトップやサーバーなどのプロセッサ製造がすぐにできるわけではない。また、量産時の歩留まりも問題になる。

 半導体の設計は、特定の半導体製造ファウンドリーを意識しているため、GLOBALFOUNDRIESがダメならほかに移すということも難しい(最初から、そのような設計になっていれば可能だが)。

 これは、以前の記事で書いたItaniumがいい例だろう。現状では、ほとんどは米HPのIntegrityサーバーで使用されているのに、プロセッサの設計・製造をIntelが担当し、OSの開発やサーバーの設計・販売をHPが行うというビジネスモデルになっている。

 少し話がそれたが、AMDにとっては、2013年にSteamrollerアーキテクチャのOpteronプロセッサがリリースできないことで、さらに市場を失っていく可能性が高い。

2012年末までのOpteronのロードマップ。Future部分は、PiledriverアーキテクチャのOpteron 6300シリーズがリリースされている
当初は2013年に予定されていた次世代Opteronが、2014年後半以降に変更されている。2013年は、2012年にリリースされたOpteronをそのまま使うことになる

 2013年にIntelは、Ivy Bridgeアーキテクチャをサーバー用にした新プロセッサをリリースする。製造プロセスは22nmに移行するため、メインストリームのXeon E5シリーズでは、CPUコア数も現状の8コアより多くになるだろう(最大10コア程度になると予想される)。また、消費電力も省電力化されるだろう。

 サーバー用のIvy Bridge世代では、Xeonの最上位プロセッサとなるXeon E7シリーズがリリースされる予定だ。CPUコア数に関しては、最大16コア(32スレッド)が計画されている(ただし、価格は非常に高くなる)。

 Xeonがこれだけの性能を実現していくると、HPCやVDIなどで重宝されているといっても、Piledriver世代のOpteron 6300シリーズではたちうちできなくなるだろう。そういった面から、AMDでは、できるだけ早くSteamroller世代のOpteronをリリースする必要がある。リリースが遅れれば、サーバー市場でAMDの影響力はさらに低下していくことが予想されるからだ。

 さらにSteamrollerアーキテクチャの遅れは、サーバー向けのOpteronだけでなく、GPUを搭載したメインストリームのデスクトップ向けプロセッサにも影響を及ぼす。

 AMDでは、CPUとGPUが統合されたAPU(Accelerated Processing Unit)をサーバーにも広げていこうと考えていた。GPGPUの利点を持つAPUをサーバー分野に適応し、Intelよりも高い性能を持つコンピューティング環境をユーザーに提供しようと考えていたからだが、この考え方も一歩後退することになる。

 Opteronが遅れる一方、AMDでは、ARMからライセンスをされた64ビットアーキテクチャのCortex A57/A53を利用することで、サーバー向けのARMプロセッサを2014年に提供しようと計画している。AMDのARMプロセッサは、買収した高密度サーバーを提供しているSeaMicroのファブリックコンピュータで採用されることになるだろう。

 このため、当初は、省電力のサーバープロセッサとして提供されるが、将来的にはNVIDIAと同じようにGPGPUコアを搭載したHSA(Heterogeneous System Architecture)を採用すると見られる。

 ただ、ARMベースのサーバープロセッサもターゲットとしては2014年だ。開発を急いだとしても、半導体製造ファウンドリーが量産できる時期を考えれば、2013年末から2014年初めに初期出荷ができるタイミングになるだろう。

AMDでは、HSAを採用したAPUをサーバー分野への展開しようと考えていた。GPGPUコアにより、今まで高い負荷がかかっていたデータ処理が高速化される

 AMDにとっては、半導体製造ファウンドリーは鬼門といえる。半導体製造部門を切り離し、身軽になったはずのAMDが、プロセッサの製造で足をすくわれるのは皮肉と言えるかもしれない。

 高性能なプロセッサという分野では、Intelが最も優れた工場を有している。ほかの半導体製造ファウンドリーは、Intelとは異なるスマートフォンやタブレットなどのモバイル用プロセッサなどが、大きなビジネスとなっているため、開発投資もおのずとこれらのエリアに集中することになる。

 ビジネスが小さく、コストのかかるハイパフォーマンスのプロセッサ向けの製造プロセスは後回しになったり、最初から扱わないという選択肢になってしまうのかもしれない。

 個人的には、AMDに何とかがんばってほしいと思う。サーバー分野においても、1社が独占状態になると、技術的な進歩やコスト競争といったことが少なくなる。こういったことからも、AMDには何とか空白となる2013年を乗り切って、輝かしい2014年を迎えてほしいと思う。

 なお、AMDでは毎年、CPUやGPUのロードマップを解説するAnalyst Dayという説明会を開いており、現状では次回開催に関してはアナウンスはないが、いつもの通りであれば、2013年2月に開催されると思われる。ここでは、より詳細が解説されるだろう。

【お詫びと訂正】
 初出時、Opteronのモデルナンバーを誤っておりました。Bulldozer世代がOpteron 6200、Piledriver世代がOpteron 6300となります。お詫びして訂正いたします。

(山本 雅史)