米Intelは11月11日、かねてから同社が開発中であることを広言していたServer GPUを発表した。これに関してオンラインの形で事前説明会が行われたので、この内容をまとめてご紹介したい。
Xe Update
まずはおなじみRaja Koduri氏によるXe全体のUpdateが説明された。Xeそのものは以前こちらで説明した通りあるが、すでに発表済のTiger Lakeと、11月2日に発表されたIris Xe Maxを組み合わせる場合、PCIeではなく(いや物理的にはPCIeを流用しているのかもしれないが)独自のDeep Linkと呼ばれるInterconnectが使われることが明らかにされた(Photo01)。
次いで現状の製品動向。そんな訳でTiger LakeとIris Xe MAX GPUはすでに出荷済みであるが、これに続きサーバー向けのXeHPが現在サンプル出荷中。そしてエンスージャスト向けGPUであるXe HPGについては、すでにLabレベルでは稼働している事が明らかになった(Photo02)。
oneAPI Update
次がoneAPIの話。oneAPIの話は以前の安藤先生の記事が詳しいが、端的に言えば従来はプロセッサ別に異なるライブラリやミドルウェア・フレームワークを用意していた(Photo03)のをUnifiedする(Photo04)という事になる。
そのoneAPIもついに1.0がリリースされ、広く利用可能になったとする(Photo05)。
今年の12月には"Gold"バージョンのインプリメントもリリース予定だ(Photo06)。
そのoneAPIだがCore libraries/tools(Photo07)に加え、HPC ToolkitやIoT Toolkit、Rendering Toolkit(Photo08)、さらにAI Analytics ToolkitやOpenVINO Toolkit(Phoot09)なども用意され、oneAPI単独では足りない特定用途向けのチューニングを容易に行えるとする(Photo09)。
デモとして、CPU+GPUの環境において、まず自動車の認識というAI InferenceをCPUを利用して実施(Photo10)。
次いでこれを"XeHP"に書き換えると、今度はGPUで実施できる、という例が示された(Photo11)。他の行の変更は一切なく、要するにoneAPIを利用するとCPUとGPUが等価に扱えるという事が示された形だ。
Datacenter Software&GPU
次がサーバー向けGPUのソフトウェア戦略とサーバー向けGPUの話。Intelとしては、サーバー向けGPUに関しては、Windowsだけでなく積極的にLinuxをサポートする方針を明確にした(Photo12)。
またOneAPIのLevel Zero(言ってみればHAL:Hardware Abstraction Layerに近い)を利用して、例えばレンダリングをCPUだけでなくGPUやFPGAにもオフロードできる仕組みを提供するとしている(Photo13)。
さて、なんでLinuxが重要かという話であるが、特にAndroidベースのゲームが、実際にはサーバー側でレンダリングされてその結果をクライアントに送り出しているというケースが多いためである(Photo14)。
もちろん現時点でまず要求されているのCDN向けである。例えばライブストリームなどのハンドリングではリアルタイムでエンコードのパラメータを変えつつ、しかも複数種類のエンコード/デコードが必要であり、XeのMedia Engineはこうした用途に最適という話である(Photo15)。
もう1つは上で書いたゲームである。要するにコンテナの形でAndroidを動かし、これがGPUを利用してレンダリングを行って、クライアントに送り出すという用途である(Photo16)。
この2つの用途に向けて、今回発表されたのがServer GPUである(Photo17)。
外部メモリはLPDDR4 8GBというちょっとおとなしいものだが、Server実装なので省電力性とコストを重視したものと思われる。ちなみにIntelは純粋にこのServer GPUだけを提供しているが、中国H3C TechnologiesがこのServer GPUを4つ搭載したボードをすでに開発している(Photo18~19)。
説明によれば、ARENA of VALOR(https://www.arenaofvalor.com)のレンダリングにおいて、このXG310が1枚で30fpsのストリームを60本、2枚で120本生成できるとした(Photo20,21)。
ちなみに現時点で国内へのServer GPU投入の時期などは不明である。