◆Intel GPU

いまだに謎に包まれているIntelのX^e(Xe)。こちらの記事では、インテルの安生氏が「Xeグラフィックスでは、インテルがディスクリートGPUに参入するのではといわれることもあるが、その認識は少し違う。薄くて軽いノートPCに、ディスクリートGPU並の統合GPUを内蔵するというのが、我々の認識だ」と述べるという攪乱戦術(?)を取っているが、昨年10月4日に開催された2019年第3四半期のConference Callの中でBob Swan CEOが"And in 2020, we'll continue to expand our 10-nanometer portfolio with exciting new products including an AI Inference Accelerator, 5G base station SOC, Xeon CPUs for server storage, and network and a discrete GPU. This quarter, we've achieved power on exit for our first discrete GPU, DG1, an important milestone."(2020年、我々はAIアクセラレータや5G基地局向けSoC、ストレージやネットワーク向けのXeon、そしてDiscrete Graphicsを10nmプロセスで追加する。今四半期、我々は最初のDiscrete GraphicsであるDG1の開発を完了した。これは非常に大きなマイルストーンだ)と言明している訳で、まずはこれのお手並みを拝見というのが現状である。

ただこのDG1は、Consumer Graphicsに向いた構成ではなく、NVIDIAのTeslaとかAMDのRadeon Instinct同様に、限りなくHPC向けのGPGPU用途に向いた構成で登場する可能性が低くない。Intelが昨年11月17日にHPC Developer Conferenceを開催しており、この際にRaja Koduri氏(SVP&Chief Architect&GM of Architecture, Graphics and Software)が色々とプレゼンテーションを示しているのだが、主要なXeの特徴として挙げられた話をご紹介すると、演算ユニットは可変幅Vector(Photo30)で、最大数千のスケーラビリティがあり(Photo31)、AI向けにも複数のデータ型をサポートし(Photo32)、当然Double Precision(つまりFP64)もサポート(Photo33)する。

  • Photo30: 3種類のSIMT/SIMDの使い方が用意されている。

  • Photo31: Intelお得意の2次元Meshなのか、アプリケーションから見るとこう見えるだけで実際の構造は違うのか、は不明。

  • Photo32: BFloat16のサポートが当然入っている。

  • Photo33: EUあたりのFP64の性能が40倍というが、これまではハードウェアでFP64を持っておらず、ソフトウェアエミュレーションでの実施だったから、要するにハードウェアのFP64サポートが追加された(ので結果的に40倍の速度になった)と言う事だろう。

MemoryはHBM2が前提になっているが、間にXEMFと呼ばれるSwitch(というかFabric)が挟まり、このSwitchにRAMBO Cacheと呼ばれる独特なキャッシュが搭載されており(Photo34)、特に大規模な数値演算で効果を発揮するとする(Photo35)。このXEMFはCache Coherencyになっており、CPUあるいはほかのGPUと容易に接続できるとする(Photo36)

  • Photo34: HBM2という時点でコンシューマ向けではない気がするが、このXEMFがGDDR6などもサポートできるかどうかは不明。

  • Photo35: どういう仕組みなのかは皆目不明。一種のData Prefetch機能付きキャッシュの様な気もするが。

  • Photo36: Cache CoherencyはおそらくCXLベースと思われる(が、機能的に足りているのかちょっと疑問)。

さて、DG1はどんな構成になるのかは明らかにされていないが、その先のAuroraに向けた構成の説明はあった。まず個々のGPUは、複数の演算ユニットをFoverosで接続するMCM構成であり(Photo37)、これを2つ繋げたPonte Vecchioと呼ばれるモジュールが1つのX^eデバイスとして見える形になる(Photo38)。

  • Photo37: 8つのGPU Unitの間に挟まれる4つのチップはRAMBO Cacheの模様。

  • Photo38: HBM2は周囲に配される形になっている。それはいいのだが、やはりこの時代でもEMIVは直接HBM2を接続するのは難しいのか...

そしてAuroraは、Sapphire RapidsベースのXeon×2と、Ponte Vecchio×6で一つのCompute Nodeを構成することになるそうだ(Photo39)

  • Photo39: 6つのPonte Vecchioの中央に位置するのがX^e Linkと呼ばれるCXLベースのInterconnectで、2つのXeonと6つのPonte Vecchioを繋ぐ8ポートのスイッチとなっている。

とまぁこんな構成であるが、こうしたものから考えると、やはりDG1はPonte Vecchio向けソフトウェアの開発プラットフォーム、という位置づけにあるような気がしてならない。先の安生氏の発言も、DG1がGaming向けではないと仮定すれば納得できる発言である。このあたり、詳細がもう少し出てこないと何とも言えないが、あまり過度な期待はしない方が良さそうに思える。