AMDが開発表明したARMサーバープロセッサ「ARM64」


 29日(米国時間)に米国で記者発表会を開いた米AMDは、2014年にメガデータセンター向けのARMベースサーバープロセッサ「ARM64」を提供すると発表した。

 現在、AMDでは、サーバー向けのプロセッサとしてx64ベースのOpteronを提供しているが、ARM64もOpteronブランドで提供されることになる。

 今回は、この戦略や業界への影響について分析してみる。

 

スマートデバイス向けではなくサーバー向けのARMプロセッサ

 以前からAMDが、ARMベースのプロセッサを開発するといううわさがあった。しかし、サーバー向けというよりも、タブレットやスマートフォンなどのマーケットに対応するためといわれていた。ふたを開けてみると、サーバー向けにARMプロセッサを開発するということで、少し驚いた。

 AMDが2014年に提供を考えているサーバー向けのARMプロセッサは、ARMが昨年発表した64ビットアーキテクチャのARMv8をベースにする。

 ARMv8自体は、命令セットなどを含めたアーキテクチャとなるため、実際のプロセッサとしての回路設計をさらに行う必要がある。例えば、現在のスマートフォンやタブレットで利用されているCortex-A9やCortex-A15は、32ビットアーキテクチャのARMv7のファミリーとなっている。

 AMDにとって、ARMベースのサーバープロセッサは、Intelとは異なるマーケットを切り開くためには必要なプロセッサになる。

 AMDのロリー・リードCEOは、「AMDは、AMD64によりデータセンターの64ビットコンピューティングアーキテクチャへの移行をリードしてきた。そして、今回の戦略により提供される、x86アーキテクチャおよびARMアーキテクチャの両方を基盤とした省電力64ビットサーバープロセッサの幅広い導入を促進することで、AMDは業界の大きな転換点をいま一度リードしていくことになる」と述べ、業界にとって大きな意味のある発表だという点を強調する。


スマートフォンなどの増加により、デジタルで生み出されるデータの量が指数関数的に増えている。2012年に2.6ゼタバイトだったデータは、2016年には6.6ゼタバイトに増えるAMDは、2003年に最初のサーバー向けプロセッサOpteronをリリースして、さまざまなイノベーションを行ってきた。今回のARM64により、サーバーマーケットを大きく変革する

 また、「ARMとのコラボレーションを通じて、AMDは64ビットプロセッサに関する深い知識や、業界最先端のAMD SeaMicro Freedomスーパーコンピュート・ファブリックをはじめとするその豊富なIPポートフォリオを生かし、今日のデータセンターに最適な最高レベルの柔軟性を備える完成された演算処理ソリューションを提供する」と、今後の方針を語った。

 なおARMとしては、ARMv8の回路を設計して、机上のアーキテクチャから、実際に動作するIP(Intellectual Property)に仕上げる必要がある。このためには、サーバープロセッサを提供しているAMDとのアライアンスが必要になったのだろう。


AMDのメリットは、プロセッサだけでなく、GPUを内蔵したAPU、買収したSeaMicroが持つ進化したファブリックなどのリソースを持つ。ARM64の追加により、x64、ARM64の2つのプロセッサアーキテクチャを提供できる唯一の企業になる今までは、1つのサイズ、1つのアーキテクチャのプロセッサがすべてのカテゴリをカバーしてきた。しかし、さまざまなデバイスの登場により、1つのプロセッサがすべてをカバーすることはできなくなった。今後は、用途に応じて、プロセッサのアーキテクチャを選択していくことになるARM64の開発を決めたのは、AMRの省電力性だけでなく、ARM社と共同でサーバー向けのプロセッサを開発できることだ。これにより、自社でプロセッサアーキテクチャなどを行わなくても、プロセッサが開発できる

 

消費電力量あたりの性能に優れたARMサーバープロセッサ

 AMDのARMサーバープロセッサは、低消費電力性とワットあたりの高い性能を実現する。これにより、メガデータセンターではx64サーバーよりも省電力で、高密度なサーバーファームを構築することが可能になる(省電力化されれば、発熱も低くなり、サーバーの密度も高くできる)。

 AMDは、2012年の3月に高密度のブレードサーバーを発売しているSeaMicroを買収しており、リードCEOもコメントしているように、将来的には、ARM64ベースのブレードサーバーを開発し、SeaMicroが持つFreedom Fabricに収容していく計画を持っている。

 Freedom Fabricは、専用のASICにより、I/O仮想化機能およびTurn It Off機能を実装している。

 I/O仮想化機能によって、マザーボード上にはCPU、メモリ、ASICだけを搭載する。ネットワークやストレージなどのI/O部分は、仮想化によりマザーボード上には搭載しない。これにより、マザーボードのサイズを大幅にコンパクトにし、さらに消費電力およびコストも削減している。

 Turn It Off機能は、動作に不必要なCPUやチップセットをダイナミックにオフすることでマザーボード上の電量消費量を極限まで落とすことが可能になる。

 またマザーボードは、Freedom Fabric ASICによって、複数のインターコネクトに接続されている。1.2Tbps/秒のMulti-Dimensional Torus構造でマザーボードを接続することで、多数のマザーボードを高速で接続することが可能になる。

 AMDでは、ARMベースのOpteronをSeaMicroのシャーシに搭載した場合、数百~数千個規模のクラスターサーバーが実現すると語っている。


SeaMicroが持つFreedom FabricのMulti-Dimensional Torus構造。このように、複数のインターコネクトでマザーボード間を接続する。SeaMicroのシャーシ。ブレードサーバーというよりも、小型のマザーボードを多数挿入できるシャーシだマザーボードは、非常に小型で、CPUとメモリ、専用ASICが搭載されているだけだ。I/Oなどは、シャーシ内部で仮想化されたものが利用される

 

問題はOSとアプリケーション

 今回発表されたARMサーバープロセッサだが、意欲的な計画だが、実際にAMDやARMが考えるようになるかは未知数の部分が多い。

 まず、ARMv8に未知の部分がある。ARMは、携帯電話やスマートフォン向きでマーケットを広げてきた。今回、ARMv8で64ビット化を果たしているが、サーバーが必要とする性能をカバーできるかは、実際に製品が出てみないとわからない。

 ARMv8に関しては、性能面の問題だけでなく、64ビット化により内部構造が複雑化し、ARMの特徴といえる低消費電力性がどうなるかも疑問だ。このあたりは、実際の製品を待つしかないだろう。

 DellやHPなどでは、テストケースで省電力のARMサーバーを開発したが、実際の製品化には、まだこぎつけられていない。ほとんどの場合、OSやアプリケーションを開発するためのテストサーバー、開発ノウハウの蓄積という部分で止まっているようだ。

 用途という面で見ると、これらのテストケースでは、Webサーバーのフロントサーバー、ノードの数が性能に直結するビッグデータ(Hadoopなど)で利用されている。

 Webサーバーのフロントサーバーなどは、一つ一つのサーバーはそれほど性能は高くなくても、数百、数千のサーバーを並べることで、数十万、数百万のアクセスをさばくことができればいい。

 またHadoopなどでは、データを処理するノードの数を多くすることで、一つ一つのサーバーが処理するデータ量は少なくなるため、それぞれのサーバーにはそれほどのパフォーマンスは必要とされない。

 ただし、サーバー間でのデータトラフィックが増えるため、それに耐えられるクラスタ設計が必要になる。そういう意味では、SeaMicroのFreedom Fabricは、ぴったりな構造を持っているようだ。

 筆者が考える、ARMサーバーにおいての最も大きな問題は、OSやアプリケーションだ。現状では、ARMベースのOSとしては、UbuntuやFedoraなどのLinuxがリリースされている。

 実際に企業で導入することを考えれば、Red Hatなどの、企業にとって信頼度が高いディストリビュータがOSを提供する必要があるだろう。今回の記者会見後に引き続いて行われたパネルディスカッションに、Red Hat Linux Engineering Development担当Vice PresidentのTim Burke氏が出席していた。このことからも、ARM64のOSとして将来的にRed Hat Linuxが提供される可能はある。実際、ARMやAMD、Red Hatは、FedoraのARM版の開発やJavaのARM版のOpenJDKの開発を進めている。

 ただ、Webサーバーのフロントサーバーとして利用するため、ApacheやTomcatの移植は比較的早くに進むだろうが、さまざまなアプリケーションを含めてARM版をリリースするには長い道のりがかかるだろう。

 特にデータベースに関しては時間がかかると思う。現在リリースされているARMベースのデータベースのほとんどは組み込み機器用で、データ量が小さいものばかりだ。エンタープライズで利用できる普通のデータベースを動かすには、テストを重ねる必要があるだろう。企業が本格的に採用するには、多くの実例を重ね、高い信頼感を獲得する必要がある。

 逆に、特定のアプライアンスに近い用途に関しては、ARMサーバーは早期に入っていくと予想されるが、特定用途向けになるため、一般企業の多くが採用したり、パブリッククラウドのベンダーが積極的に採用したりすることにはならないのではないだろうか。

2014年にリリースするARM64を使ったSeaMicroのサーバーは、低消費電力を武器に、多くのデータセンターやクラウドに採用されていくとAMDでは考えているAMDでは、WebサーバーやエンタープライズサーバーにARM64が利用されると予測している。今後は、ワークロード別に、ARM64、x86、APUが利用されるARM64のエコシステムを構築するために、AMD以外に、HP、DELL、ARM、Red Hat、Linaro(ARMのSoC向けにLinuxをチューニング)などが参加している

 

 ARMサーバーは、やっとマラソン大会に出場することが決まった状態で、まだスタートラインにもたっていない。多くのユーザーを引きつけるためには、実際にARMサーバーを製品化し、OSやアプリケーションなどの周辺環境を整える必要があるだろう。このように見れば、今後の10年に向かって歩き始めた段階といえる。逆にいえば、将来性に期待はしたいが、どうなるか全く未知数という状況だ。

 AMDがリリースするARM64に期待したい部分としては、プロセッサコアだけでなく、AMDが持つGPGPUと融合させたサーバー向けのAPUがある。サーバー用途ではグラフィック性能はまったく必要ないが、GPGPUを使って、新しい領域のサーバーが生み出せるのではと期待したい。

 実際、ARMv8を使ったサーバー向けプロセッサーとしては、AMDだけでなくAppliedMicroがARMと共同で開発を進めている。このアライアンスにも、Red Hatが参加している。このように、ARMサーバープロセッサは、AMDだけのものではない。

 またAMDにとっては、ARMサーバーという新しい目標を掲げるのもいいが、それよりも現状のOpteronを積極的に改良して、IntelのXeonシリーズを追い抜くような性能と低消費電力を実現してほしいと、切に願っている。

関連情報
(山本 雅史)
2012/10/31 13:42