後藤弘茂のWeekly海外ニュース

スモールコアのマイクロサーバーに傾くIntelのサーバー戦略

サーバー/HPCで起こした構造変革の再来を狙うIntel

 Intelは、低消費電力CPUコアベースのサーバー製品に注力している。すでに、同社は32nmプロセスの「Atom S1200」シリーズ(Centerton)を導入しているが、後継となる22nmプロセスの「Avoton」、「Rangeley」を今年(2013年)、14nmの「Denverton」をその後投入する。Centertonが、既存のモバイル向けAtomのダイ(半導体本体)をサーバー向けにした“間に合わせ製品”だったのに対して、Avoton以降の製品はサーバー市場向けに設計された製品となる。

 IntelはAtomベースのサーバー製品のほかにも、Haswell(ハズウェル)アーキテクチャ系で14nmプロセスの「Broadwell」のSoC(System on a Chip)版もサーバーに投入する。こうした新ブランドのサーバーCPUの投入で、Intelが最終的に目指しているのは「Re-Architecting The Datacenter」、つまり、データセンターの再構築だ。Intelは、かつてサーバー市場で一度これを成し遂げた。その再現を行なおうとしている。

 Intelが過去の再構築の例として挙げたのは、スーパーコンピュータだ。下のスライドが示すように、Intelは1990年代中盤以降、スーパーコンピュータに地殻変動をもたらした。このスライドは、3つの重要なポイントを示している。

1990年代に起こったスーパーコンピュータの変化

 1990年代のスーパーコンピュータは、いわゆる“Attack of the Killer Micros(MPUの攻勢)”時代で、ベクトルコンピュータから、スーパースカラプロセッサの超並列構成のマシンへと切り替わった。それまでスーパーコンピュータの主役だったベクトルコンピュータは、構造変化の結果、超並列のマイクロプロセッサへと主流の座を奪われる。Intelは、そうしたスーパーコンピュータの変革の波で大きな役割を果たした。

 しかし、Attack of the Killer Microsが始まった当初は、スーパーコンピュータはRISCプロセッサをベースにしていた。当時は、ハイエンドのサーバーはいずれも各社のRISCプロセッサをベースにしており、超並列スーパーコンピュータもその延長にあった。Intelも当初は自社のRISC「Intel i860」でスーパーコンピュータを開発した。

P6からサーバーに本格参入したIntel

 その流れが変わったのは、Intelが「Pentium Pro(P6)」でサーバーに攻勢をかけ始めた時からだ。Intelはその後、CPUにショートベクトルであるMMX/SSE系の命令拡張を入れ込み、x86ベースの超並列スーパーコンピュータ「ASCI Red」でTFLOPSを達成する。そして、近年見られるように、x86系プロセッサがスーパーコンピュータの主流になる流れを作り出した。これは、サーバー市場で、x86がRISCを駆逐して行くのと同期していた。Intelはx86のボリュームによるスケールメリットで、サーバー市場を塗り替えてしまった。

スーパーコンピュータとそのMPUの歴史
※PDF版はこちら

 スーパーコンピュータでは、Intelはこのように2つの構造変化、ベクトルコンピュータからスカラの超並列機への変化と、RISCからx86への変化の2つを実現した。Intelのx86は、スーパーコンピュータのみならず、ハイエンドのサーバー市場を占めるようになった。しかし、先のスライドにある、“15年間でFLOPS当たりのコストの低減が100倍”という数字が、Intelのアプローチの限界を示している。

 ムーアの法則の通りなら15年間にトランジスタコストが180分の1のはず。しかも、チップの周波数も上がるので、FLOPS当たりのコストの低減はさらに進んでもいいはずだ。ところが、そうなっていない。理由はいくつもあるが、その1つは、スーパースカラプロセッサでは、シングルスレッドのパフォーマンスの向上はムーアの法則で増えるトランジスタの平方根分しか期待できないこと。また、CMOSスケーリングの壁によって、周波数の向上が鈍化していることもある。

 そして、最近では、スーパーコンピュータのトップ500の上位は、GPUベースのヘテロジニアス構成と「BlueGene/Q」のスモールメニイコア構成に浸食されている。Intelは「Xeon Phi」(Knights Corner)によるヘテロジニアス構成で、スーパーコンピュータトップの座は確保したものの、非常に大きな消費電力で電力効率に疑問符を付けてしまった。

 つまり、上のスライドは、IntelがPentium Pro以降に成し遂げたサーバーやHPC(High Performance Computing)での構造変革を示しているが、それと同時に、その流れの行き詰まりも示唆している。Intelは新しい構造変革に直面しており、P6以来のアプローチとは異なる対応が必要になっている。

サーバー市場の量・多様性・電力要求の変化

 何が今、サーバーに起きているのか。サーバー側には大きな変化が3つ発生している。1つは量的な拡大で、クラウドコンピューティングの普及とともに、サーバー市場が急速に拡大している。もう1つは質的な変化で、クラウドやビッグデータ、ネットワークやストレージのリアーキテクチャによって、データセンタのワークロードが大きく変化して多様化している。3つ目は、サーバーの規模が大きくなるに従って、電力当たりのパフォーマンス効率が極めて重要になったことだ。

 こうした変化によって、サーバーも「ワンサイズフィッツオール(one size fits all)」モデルが有効ではなくなってしまった。単一のアーキテクチャで、市場の全てをカバーすることができない状況になりつつつある。そのため、Intelもサーバーにおいて、複数のソリューションを必要とするようになった。

データセンターの用途によって求められる性能が異なる
Intelは複数のソリューションをサーバー向けに提供

 Intelの解答の1つは、対GPUサーバーで開発したXeon Phiによる、小型のベクトル強化コアによるコンピュテーションインテンシブなワークロードへの対応だ。Xeon Phiは主にHPC向けだが、Intelは別なアプローチも必要としている。その代表が、サーバーの新しい構造変化の波とされている「マイクロサーバー」(Microserver)と呼ばれ始めた、低消費電力サーバーの流れだ。スモールコアサーバーなどと呼ばれることもある。ビッグデータなどの新しいワークロードに最適とされるサーバーアプローチだ。

 マイクロサーバーは、スレッド当たりのパフォーマンスは低いが、電力効率が高く、スレッド並列性が高く、I/Oパフォーマンスに優れる新しいサーバーカテゴリだ。マイクロサーバーへのモチベーションの1つは、パフォーマンス効率と絶対パフォーマンスのトレードオフにある。スモールコアは、絶対パフォーマンスが低いものの、パフォーマンス効率に優れる。そのため、電力当たりのパフォーマンス重視するサーバー分野では、低電力プロセッサアーキテクチャのサーバーを求める勢いが強くなりつつある。

 特に、シングルスレッドパフォーマンスがクリティカルではなく、キャッシュヒット率が低く、メモリやI/Oへのアクセスが多発するようなワークロードは、スモールコアに向いている。キャッシュミス時やI/O待ちの電力ロスは、スモールコアの方が小さいからだ。こうした分析は、新しいものではなく、Oracleに吸収されたSun Microsystems(Sun)が、スモールコアの「Niagara」(ナイアガラ)を開発した時から指摘している。SunがNiagaraを発表した時のスライドには、明確にコンセプトが示されている。

スモールコアの可能性を指摘したSun Microsystemsのスライド

 Sunはこの時、スレッド並列性(TLP)が非常に高いアプリケーションで、ワークセットが大きくデータ局所性が低くキャッシュミス率が高く、スレッド間のデータ共有も多い場合、従来型のラージコアでは性能が発揮できないとしている。

ARMv8サーバーの奔流が2014年から始まる

 Niagaraから始まったスモールコアサーバーの流れは、CPUインテンシブではないサーバー分野が広がっていることで注目を集めつつある。そして、マイクロサーバーとしてカテゴリが成立し始める気配が見えたことで、そこにARMコミュニティが参入し始めた。パフォーマンス/電力に優れたARMコアで、マイクロサーバーを実現しようとする流れが。

 ARMはそのために、64bitアーキテクチャの新命令セット「ARMv8」を前倒しして発表。それに乗って、Applied MicroやCalxeda、CaviumといったベンダーがARMサーバーCPUの開発を進めてきた。モバイル市場でのARMコアの主力ベンダーも参入の気配を見せている。さらに、x86の雄の片方だったAMDも、マイクロサーバーではARMコアを選択した。「Seattle」では8または16コアの「Cortex-A57」を搭載する。

マイクロサーバー向けに前倒しされた64bit ARMコア「ARMv8」
AMDは「Seattle」でARMアーキテクチャを採用
ARM Cortex-A57のブロックダイヤグラム
※PDF版はこちら

 ARMv8によるマイクロサーバーが本格化するのは2014年となる。マイクロサーバーを担ぐベンダーは、この潮流が、サーバー全体の構造変革に繋がっていくと期待している。

 そのため、Intelも対応しなければならない状況にあった。Intelの選択は、x86ベースのマイクロサーバーで、緊急措置としてモバイル向けのAtomをサーバー向けに投入した。しかし、CentertonをがIntelの本命ではないのは一目瞭然で、Intelは本格的なサーバー製品であるAvoton、Rangeley、そしてDenvertonを急展開する必要に駆られていた。

Intelのマイクロサーバー向けプロセッサロードマップ

 また、Intelはサーバーの構造変革の中には、ソフトウェアデファイン(ソフトウェアによる定義)化もあると指摘している。「Software Defined Network」であったり、「Software Defined Storage」とIntelが呼ぶ流れだ。この潮流も明確で、ネットワークとストレージの部分がソフトウェア化してフレキシブルなモジュールになって行く。この部分でも、新しいコンピューティングエレメントが必要となっている。

ストレージやネットワークなど、ソフトウェアデファインへの変革

CPUやキャッシュインテンシブではないワークロードに最適化

 では、具体的にIntelはどう対応して行くのか。Intelが示した22nmプロセスのAvoton/Rangeleyの図が方向性を明確に示している。Avotonは、Intelの新しい低消費電力コアである「Silvermont」(シルバモント)を8コア搭載し、通常のサーバーCPUでは別チップに分離されている各種I/Oもワンチップに統合したSoC製品となる。

Avoton/Rangeleyの特徴

 8個のSilvermontコアは、2コアずつが1MBのL2キャッシュを共有する。このCPU部分には、従来のサーバーCPUとの違いが明確に見える。まず、当然のことだが、IntelのパフォーマンスCPUコアよりも格段にシングルスレッド性能が落ちる。そして、従来のサーバーCPUは、8コアも搭載するなら、10MB以上の大容量共有キャッシュを載せてプロセッサ間のスヌープトラフィックを軽減していたが、それも見当たらない。

BonnellとSilvermontのブロックダイヤグラム比較
※PDF版はこちら
Intel製プロセッサのアーキテクチャ比較
※PDF版はこちら

 つまり、Avoton/Rangeleyはシングルスレッドパフォーマンスがクリティカルではなく、キャッシュヒットにあまり期待できないワークロードに最適化された、まさしくマイクロサーバーの分析に沿ったアーキテクチャとなっている。この点は、旧来の大容量キャッシュを載せたスモールコアサーバーと明確に異なり、ARMサーバーと同じ流れにある。

 とはいえ、Avoton/Rangeleyの特化の度合いは、まだ中途半端の感もある。I/Oも統合しているものの、I/O回りを大幅に強化しているとも、まだ言えない。メモリインターフェイスも、アグレッシブに広帯域なメモリを採用するといった流れではない。Intelが注意深く様子を見ながら、Avoton/Rangeleyを開発していることが分かる。

市場はまだ小さいが顧客は大きい

 問題はどこにあるのかというと、まだ市場の様子がはっきりと見えない点にある。サーバーSoCにどんな機能を統合するのが適切なのか、どこまでアクセルを踏んでいいのか、なかなか明確にならない。サーバー市場の多様化/分断化が激しいために、どこに焦点を合わせていいのか、判断が難しいのが現状だ。

 また、サーバーCPUの市場は、個数的にはPCやモバイルと比べてずっと小さい。その上に、新しく出てきた新世代のサーバーの波がどれだけのボリュームを必要とするのか見極めにくい。個々の市場セグメントが小さく、いきなりアクセルを踏んで大々的に推進しても、早すぎれば空振りに終わる可能性もある。Intelの下のスライドは、そうした問題を明確に示している。ビッグデータと騒がれてはいても、その方向へと舵を切った企業の数は6%に過ぎないとIntelは見る。

ビッグデータへ舵を切った企業は6%というIntelの調査結果

 さらに話を難しくしているのは、顧客の数とそのノード規模だ。例えば、パフォーマンス/電力が重要なビッグデータアプリケーションでは、Memcachedのような分散型のメモリキャッシュシステムも使われており、低電力コアのサーバーはそこでの活用が期待されている。Memcachedは非CPUインテンシブワークロードの代表だからだ。

 しかし、Memcachedを使うユーザーは、Facebookのような超巨大サーバーを抱えるところばかり。下は、2011年のJEDECのカンファレンスでのFacebookのプレゼンテーションで、Memcachedサーバーでの要求がCPUではなくメモリにあることが明確に示されている。そして、Memcachedユーザーは、個々のデータセンタの規模は大きいものの、そのユーザー数は限られる。そのため、1ユーザーを獲得すれば、膨大な数がインストールされるという状況にある。つまり、少ないビッグ顧客の奪い合いレースになる。

FacebookのMemcachedサーバーでの要求

 簡単に言えば、市場の規模はまだ小さいものの、乗り遅れるとビッグな有力顧客を取り逃しかねない状況にある。Intelは、この複雑な状況を、彼らのx86アーキテクチャと先進のプロセス技術、そして低消費電力技術で乗り切ろうとしている。

(後藤 弘茂 (Hiroshige Goto)E-mail