今年も9/13~9/15のスケジュールで、San FranciscoでIDF San Francisco 2011が開催された。既にYoichi Yamashita氏の基調講演レポートが掲載されているわけだが、今回は久しぶりに「お留守番」ではなく筆者も参加した。で、そのレポートがいきなりPCI-SIGかよ? という話だが、ある意味一番インパクトが大きい話なので最初にお届けすることにしたい。9/14にPCI-SIG ChairmanのAl Yanes氏(Photo01)とRamin Neshati氏に時間を作っていただき、色々確認することが出来たので、まずはこちらからである。

Photo01: おなじみAl Yanes氏。Ramin Neshati氏は途中で用事があって中座されたため、写真を撮りそこなった。ちなみにAl氏によれば2日間で19のミーティング(最後が筆者とのもの)をやる羽目になったとか。

PCI Express 3.0はコンシューマ向けに「立ち上がらない」

タイトルでいきなり結論を書いてしまったが、事実上こういう話になってしまったことを確認できたので、まずはここから話をして行きたいと思う。

PCIe Gen3そのものは2010年11月に仕様策定を完了し、実装はやや遅れたものの、GPUの側は今年末に投入が予定と伝えられるAMDのRadeon HD 7000ファミリーと来年に投入とされるNVIDIAのKelperでこれに対応。チップセットの側も、IntelのX79とこれに続くIntel 7シリーズ、AMDではSocket FM2でやはりPCIe Gen3に対応を済ませることで、2012年後半には本格的にGen2からの移行が始まる「筈」だった。これが完全にご破算になってしまった事になる。

理由はというと、AMDとNVIDIAがそろってGen3への移行をキャンセルしたからだ。その理由は、両社が共同でPCI-SIGに対し、既存の300W枠を超える電力供給の標準化の要求(8pin×2の375Wに加え、8pin×2+6pin×1の450Wも要求した模様だ)を出し、これがPCI-SIGに却下されたためである(Photo02)。AMD/NVIDIAが要求を出し、これをPCI-SIGが却下した事実は、今回Yanes氏が明確にこれを肯定した。

Photo02: PCIe Gen3 CEM(Card Electromechanical Specification)の現状についてのまとめ。Power Factorでは150Wと300WのSpecificationを統合するとしており、逆に言えばこれ以上のSpecificationは一切入れない、という事になる。実際、150Wのものや225/300WのものはCEMではなく、追加仕様として策定されていたので、「例えば375Wを追加仕様で策定する可能性は?」とYanes氏に尋ねたところ「絶対にない」と強く否定された。

これを不満とした両社はPCIe Gen3への対応をキャンセルし、PCIe Gen4のタイミングで対応することを現状想定している。つまりRADEON HD 7000シリーズやNVIDIAのKelperは、(実際にはGen3まで対応した構造としつつも)Gen2までの対応(つまりGen3対応を潰した状態)となる模様だ。

チップセットも同じで、AMDはまもなく登場するZanbeziベースのAMD FXの後継製品をSocket FM2に移行させる予定だったがこれをキャンセル、引き続きSocket AM3+のままリリースすることにした。それだけではなく、AMDのBulldozerコア+RadeonとなるTrinityプラットフォームも、外部I/FはPCIe Gen2のままとなる。これはAMDのJoe Macri氏(Photo03)がノート向けプラットフォームでは、と前置きした上で「Gen3は消費電力が過大であり、適さないのでTrinityではGen2のままだ」と明確に語った事からも確認できた。

Photo03: Corporate Vice President, CTO Client Division, AMDのJoe Macri氏。この前会ったときは髪の毛がもじゃもじゃと爆発していたんで「どうしたの」と聞いたら「定期的に切ってるんだよねぇ」との事。そういえば広報写真では短い髪の毛だった。

一方IntelはまずX79チップセットで、ついで来年登場予定のIntel 7シリーズチップセットでそれぞれPCIe Gen3を「今のところは」サポート予定である。「今のところは」というのは、X79を含むIntel 7シリーズチップセット自身がまだ公式には語られていないので、最後の最後でサポートを外す可能性もあるからだ。その予兆も既にある。というのは今回のIDFのテクニカルセッションでは"Technology Insight: Intel Next Generation Microarchitecture Codename Ivy Bridge"と"Media Innovations in the Intel Microarchitecture Codenamed Ivy Bridge"という2つのセッションがIvy Bridgeを取り上げているのだが、どちらのセッションでもPCIeがGen2のままか、Gen3になるのか一切触れておらず、単にPCIe x16レーンとだけ記載されているからだ。X79はPCIe Gen3回りで色々問題が出ている事は既に知られており、対応GPUが無い状況で無理してComplianceを通す必要がなくなっており、このあたりを加味するとコンシューマ向け全チップセットでPCIe Gen3の対応が消える可能性は少なくない。

ではそもそもなぜPCI-SIGは300Wを超える仕様を拒否したか、であるがNeshati氏によれば「300Wを超えるようなカードは、シャーシのメカニカル的な強度に無理が生じてくる。あるいはこうしたハイパワーのカードの場合、リテンションの強度やカードそのものの重量、排熱がシステムに与えるストレスなどを考慮しなければならない。冷却やエアフローが、システム内部への排熱がシステムボードのほかのコンポーネントに影響を与えない様にする必要がある。例えばCPUとかなら、IntelにしてもAMDにしても内部にThermal Sensorを搭載し、温度が上がったら発熱を下げるような工夫がされている。ところがGPUカードはこうした具合になっていない。これはシステム全体のパフォーマンスをむしろ下げる方向に作用する。これはユーザーにとって良いことではない。GPUベンダーは、もう少しThermal BudgetやCooling Budgetを考えるべきだろう。勿論NVIDIAの様なGPUベンダーの視点からすれば、こうした問題は解決可能なのだろう。しかしPCI-SIGの視点からすると、メンバー企業がスペックを超えた仕様を独自の努力で可能にするのは自由だが、それを仕様化するのは好ましいとは言えない」という返事であった。「でもIntel MICも今は150Wに収まっているけど次はどうだろう?」と水を向けると「それはImprementation Choiceだ」と、判りやすい返事が返ってきた。

ただ、将来的にはGPU以外にも300W超えの要求が出てくる可能性はあるのではないか? と尋ねるとYanes氏は「そうした要求があれば、Gen4のTimeframeで取り込む事になる」との回答だった。またNeshati氏も「勿論AMDなりNVIDIAが独自規格で勝手に300Wを超える仕様を策定するのは混乱の元になるだろう」と認めつつも「今後進化した技術を元にPCI-SIGに提案を出してくれれば、それは標準化の対象として検討するが、現在両社が提案しているのはProprietaryなSolutionだ」としており、これが標準的なものになったら提案を受け取るとした。

一応GPUベンダーの視点からすると、PCIe Gen3をサポートすることでPHYの消費電力も当然上がるし、その上のレイヤも(処理速度が倍になるから)やはり消費電力が増える。となると、GPU自身を何もいじらなくても、Gen3対応にするだけで消費電力が厳しくなるわけで、300Wの上限が増えないのであればGen3対応にしても辛くなるだけ、ということになる。おまけに、GPGPU的な使い方をしている場合はともかく、GPUとして使う場合PCIeの速度は殆ど無関係である。例えば3Dゲームの場合、GPUカード側にあらかじめテクスチャその他は全部ロードしてからスタートするから、ロード時間が多少短くなる程度の差でしかないためだ。

そんな訳でGen3世代では事実上GPUが立ち上がらなくなることをPCI-SIG自身も覚悟した。Photo04が今年6月にサンタクララで実施されたPCI-SIG Developer ConferenceにおけるPCIe Gen3のUsage Model、Photo05が今回示されたUsage Modelである。もはやGraphicsを期待していない事が明確に見て取れる。

Photo04: Gen4の話は後述。

Photo05: 見事に"Graphics"の文言が消えているのが判る。

勿論、将来的にはGen3対応は行われるだろう、と筆者は考えている。ただしそれはHPC向けで、Intel及びAMDのサーバー向けチップセットと、HPC向けのGPGPU製品(AMDならFireStream系列、NVIDIAならばTesla系列)に限られるだろう。まずサーバー向けには、まもなく本格的に利用され始める40GのEthernetやその先に見えている100G Ethernetを使うために、Gen2のままだとやや帯域が足りない。またHPC向けは、こちらは帯域が今でも足りてないから対応は必須である。ただAMDの場合はサーバー向けチップセットの更新は2012年後半~2013年にずれ込みそうだし、GPU側もRADEON HD 7000系列ベースの製品はともかくNVIDIAはKelperは当分出てこない(当初はFermiの28nmシュリンク版となり、これはGen2のままの模様)から、現実問題としてはあと1年ほどはGen2のままという事になる。

これらの製品が消費電力的にどうなるかは判らない。用途を限れば、Neshati氏の言うとおり「Proprietaryな電源規格」でもいけると思われるからだ。

ちなみにGPU以外の用途は? ということであるが、既にいくつかのベンダーが製品を出し始めており(Photo06)、相互接続テストも次第に増えているという(Photo07)。ちなみにTest specificationそのものはまだ完成しておらず、こちらが1.0になるのは"Early 2012"(Yanes氏)との事だった。

Photo06: ここのベンダー名は6月から一切増えていない。Intel/AMD/NVIDAが含まれて居ないのはある種象徴的。

Photo07: 2ヶ月おきに段々製品数が増えているが、まだ絶対的な数がかなり少なめである。