はじめに
ARMチップは、1993年のApple Newton登場以来、携帯電話や小型ガジェットの定番として採用され、現在使われているスマートフォンの大半を支えています。そして近年、ARMチップは新たな領域へと進出しました。クラウドコンピューティングです。2018年に登場したAmazon AWSのGravitonは、大手クラウド事業者が自ら設計した初のARMプロセッサーとなりました。
集積回路の設計・製造で成功を収めてきたファウンドリモデルは、クラウド向けARMサーバーCPUの開発にも応用されています。一般的な流れは次のとおりです。
- ARM HoldingsがRISCアーキテクチャに基づくSIPコアを設計し、他社にライセンス供与します。
- ファブレス半導体メーカーでもあるハイパースケーラー(Amazon、Google、Azure)が、これらのSIPコアを実装し、独自のカスタマイズを加えてCPUのテープアウトを作成します。
- このテープアウトがピュアプレイの半導体ファウンドリに送られ、実際のチップ製造が行われます。
ARMのNeoverseシリーズは、クラウドコンピューティング、HPC、AIワークロード向けに設計されたCPUファミリーです。
本記事では、Neoverse V2アーキテクチャの2つの実装、AWS Graviton 4とGoogle Axionをベンチマークします。なお、Azure Cobalt 100はやや異なるバリアントであるNeoverse Nを採用しているため、今回の比較からは除外しました。
テストスイート
Webアプリケーションは、クラウド上で最も多くデプロイされるワークロードの1つです。Graviton 4とAxionのWebアプリケーション性能を評価するため、本記事ではTechEmpower Framework Benchmarks(TFB)を活用します。TFBはさまざまな言語・フレームワーク向けのテストを備えていますが、ここではシンプルさを優先し、JVMベースのリアクティブアプリケーションフレームワークとして広く知られるVert.xを使用します。
TFBは、リクエストルーティング、JSON処理、スループット、データベース連携(ORMマッピング、キャッシュ、コネクションプーリング)といった観点でWebフレームワークの性能を評価します。テストの実施には3台の仮想マシンが必要です。Webフレームワークを動かすアプリケーションサーバー、データベースサーバー、そして負荷生成用のマシンです。
インフラ構成
AWSでは、R8g.xlarge(4 vCPU、32 GiBメモリ)と20 GBのgp3 SSDを備えたVMを3台使用しました。AZ間のネットワークレイテンシを最小化するため、すべてのVMを単一のAZにデプロイしています。

GCPでも同様に、C4A-highmem-4(4 vCPU、32 GiBメモリ)と20 GB SSDを使用し、すべてのVMを単一のAZにデプロイしました。

ベンチマーク結果
TFBは、アプリケーションサーバーに実環境さながらの負荷をかけるためにwrkという強力なツールを使います。仕組みは次のとおりです。
- wrkは同時リクエスト数を段階的に変化させ、さまざまなユーザートラフィックを再現します。
- ベンチマークは各テストシナリオで返された行数を計測します。
- 行数が多いほどCPU性能が高く、負荷下でより多くのデータを処理できることを示します。
各テストケースの結果は以下のとおりです(数値が高いほど高性能)。

数値が高いほど性能が高く、負荷下で多くのデータを処理できることを示します(数値が高いほど高性能)。
次のグラフは、これらの数値を棒グラフ化したもので、Graviton 4とAxionの性能差をパーセンテージで示しています。

Graviton 4とAxionの性能差をパーセンテージで示したグラフ(数値が高いほど高性能)。
結論
結果から明らかなように、GCPの最新ARMチップであるAxionは、7つのテストケースのうち5つでAWS Gravitonを上回りました。Graviton 4に対するAxionの優位性は、9.85%という明確な差から47.79%という大幅な差まで幅があります。一方、Gravitonが優位だったのはplaintextと複数クエリの2ケースのみで、Axionをそれぞれ2.57%、3.69%上回るにとどまりました。最適なチップの選定には、アプリケーション要件やコストを踏まえたさらなる検証が必要です。
ぜひDoiTまでお問い合わせください。シニアエンジニアのみで構成された当社は、高度なクラウドコンサルティング、アーキテクチャ設計、デバッグ支援、コンサルティングサービスを専門としています。