Xeon PlatinumとEPYCをコンピューティング全体から考える

NVIDIAのCUDAによりコンピューティングが変わって来た

現代的なCPUには論理演算機能、整数演算機能、浮動小数点数演算機能の全てが備わっていますが、多くのコプロセッサと呼ばれる製品はこのうちの浮動小数点数演算機能を補う目的のものです。

GPUは大量の浮動小数点数演算を必要とするワークロードのうち、グラフィクス機能に特化したコプロセッサと言えます。CPUと協調し、リッチなグラフィックス機能を提供してきたGPUですが、NVIDIAが開発したフレームワークであるCUDAによりGPUが数値演算コプロセッサとしても使用される時代になりました。

GPUを汎用的な演算に使うことをGPGPU(Global Purpose GPU)と呼ばれていてGPUによって安価にCPUの浮動小数点数演算性能を補える時代となりました。GPU膨大な計算能力を使ったHPCワークロードが次々と提案されています。

とりわけ、ディープ・ラーニングのトレーニングや推論、データ・アナリティクスなどはHPCワークロードの中でもビジネスへの広い応用が期待されています。ディープ・ラーニングは特にGPUに適しており、NVIDIAは謎のAI半導体メーカーなどと呼ばれることもあるようです。

NVIDIAはGPUによって、浮動小数点数演算性能が肝要となるHPCをより身近なものにし、コンピューティングのパラダイムを変えつつあります。

IntelはCUDA対抗のカードAVX512を切ってきた

Intelのx86 CPUはIntel 486というモデルでx87という数値演算命令に対応するコプロセッサを統合しました。Pentium IIIからは、マルチメディアに関する処理などで演算性能への要求が高まったことから、SSE(Streaming SIMD Extension)命令が実装され演算性能も向上しました。その後もCPU単体での数値演算性能は向上し、Sandy Bridge世代から後継のAVX命令が実装され今も開発が進んでいます。

現代的なCPUには数値演算コプロセッサが内蔵されており、論理演算機能、整数演算機能に加えて浮動小数点数演算機能が備わっていると言えます。このバランスはCPUにマルチメディア機能が要求されるようになるなど、CPUの実際の使われ方によって変化していると言えます。

IntelのHPC向けコプロセッサ/プロセッサ製品であるXeon PhiはAtomに使用されていた省電力コアそれぞれに、VPUと呼ばれている512bitのSIMDに対応するベクトル・プロセッサがくっついたものを並べたようなプロセッサです。コアあたり論理演算、整数演算についてはモバイル並の性能しかありませんが、これらに対して浮動小数点数演算の潜在能力が飛び抜けて高い製品と言えます。

IntelはXeon Platinumという形でAVX512の一部をエンタープライズ向けに投入してきました。内蔵する浮動小数点数演算機能も512bit SIMDに対応する形に強化され、浮動小数点数演算の潜在能力を大幅に強化しています。

CPUと数値演算コプロセッサとしてのGPUを組み合わせるGPGPUに対してIntelのAVXはコアに隣接する形で数値演算コプロセッサを配置している格好となります。この粒度の違いがどのように響くのでしょうか。

AMDはRadeon Open Computeで切り崩しを狙う

Radeon INSTINCTを旗揚げし、GPGPU市場、特にディープラーニング市場を狙うようです。AMDのVegaはディープ・ラーニングのトレーニングにおけるパフォーマンスについてDeepbenchのスコアを上げてTeslaに対する優位性をアピールしています。EPYCとRadeon INSTINCTの組み合わせも期待出来るでしょう。

EPYCとRadeon INSTINCTで構築するGPGPU環境について、AMDはRadeon Open Computeと呼ばれるオープンソースのGPGPU環境を提案し開発しています。HPCワークロードはサーバー市場で強いオープンソースのLinux上で行われることが多いことから、高い親和性が期待され、導入のハードルが低くなることが予想出来ます。

CUDAはクローズド・ソースですし、Linuxの開発者であるリーナス・トーバルズはNVIDIAに対して中指を立てたという逸話があります。ROCmがオープンソースであると言う点がCUDAに対抗する上で大きな意味を持つのでしょうか。

CUDA、AVXの二強かCUDA、AVX、ROCmの三つ巴

現在これから大きく発展すると見られる数値演算性能の要求が高いHPCワークロードの需要を、CUDAに対応するNVIDIAのTeslaが手にするかAVX512に対応するIntelのXeon/Xeon Phiが手にするかという競争が巻き起こっていると言えます。これにAMDはROCmというオープンソースなGPGPUを謳う新たなカードを切ってきました。各製品を論理演算(Logic)、整数演算(Int)、浮動小数点数演算(FP)について特徴を示すとすれば以下のようになると思われます。

製品名 Logic Int FP
Tesla
Xeon Phi
Xeon Platinum
EPYC
Radeon INSTINCT

汎用プロセッサにHPCワークロードを任せるIntelとコプロセッサにまかせるAMD

IntelはHPC需要の高まりに対応する形で、Xeon PlatinumにAVX512命令を下ろして浮動小数点数演算性能を強化し、性能の要求の低い大量のワークロードではなく、要求の高い少数のHPCワークロードにおいて都合の良い大規模な構成に対応することをアピールしています。一箇所のメインメモリに大量にプールすることが出来ればビッグデータに対するHPCワークロードを扱いやすくなるでしょうし、ディープラーニングのトレーニングや推論なども、ネットワークを介さなければ楽に扱えるでしょう。

一方でAMDはそのようなワークロードはコプロセッサに任せる方針のようです。GPGPU向けのGPU製品Radeon INSTINCTを旗揚げしましたし、EPYCには汎用のインターフェースであるPCIeのコントローラが大量に積まれています。Teslaとの組み合わせについては分かりませんが、EPYCがRadeon INSTINCTと協調することはAMDが明かしている通りです。

関連記事

Xeon Platinum/Goldシリーズ最初のCPU Skylake-SPが発売、EPYCシリーズ最初のCPU Naplesとどのような戦いを繰り広げるか

Intelは第三世代Xeon Phi「Knights Mill」と新しいXeon「Knights Crest」でGPUの時代を終わらせるらしい。

BaiduがNVIDIAとパートナーシップを結び、Tesla V100とTesla P4を備えるHGXリファレンス・アーキテクチャの導入を決定

「Radeon INSTINCT」が用いられたディープラーニング・ソリューションは2017年Q3から提供

Add a Comment

メールアドレスの入力は任意です。(公開されることはありません)