ニュース

NVIDIA、Pascal搭載の深層学習用スパコン「DGX-1」の国内販売開始

~「Deep Learning Day 2016 Spring」講演

 エヌビディア合同会社は27日、都内にて、深層学習についてのイベント「NVIDIA Deep Learning Day 2016 Spring」を開催した。

 同イベントには同社プラットフォームビジネス本部部長の林憲一氏が登壇。本イベントに先だって、米サンノゼにて4月5日(現地時間)より開催された「GTC(GPU Technology Conference) 2016」にて行なわれた、NVIDIA共同創設者で社長兼CEOのジェンスン・ファン氏らの基調講演をベースに、深層学習に関連した内容をピックアップして紹介した。

エヌビディア合同会社 プラットフォームビジネス本部部長 林憲一氏

 林氏は、画像認識精度を競う大会「ILSVRC」にてGoogleとMicrosoftの深層学習の結果得られたモデルが人間の認識精度を超える結果を出したほか、バークレー大学の自己学習ロボット、中国語と英語を1つのニューラルネットワーク(NN)で認識するBaiduの「Deep Speech 2」、囲碁世界チャンピオンを破ったGoogle Deep Mindの「AlphaGo」など、「人工知能にとって驚くべき1年だった」と述べた。

 深層学習の登場により、従来は専門家が時間をかけてチューニングしていたものが、深層神経回路網と学習用のビッグデータ、高性能の演算処理で自動化するという新しいコンピューティングモデルが登場し、ImageNetでの結果を踏まえ、既に人間を超える成果を達成しているとした。

驚くべき一年
新しいコンピューティングモデル

 こういった結果を受け、国内外を問わず多くのスタートアップ企業が登場し、さらに大企業がそれらのスタートアップを利用して自社サービスに組み込むといった事が起こっており、深層学習は今後10年で50兆円の市場を創出するという予測を紹介した。

スタートアップ企業も多数登場
今後10年で50兆円規模の市場に

 SkypeやShazam、Facebook、Twitter、Flickrなどのサービスに使われるなど、拡大していく深層学習の利用だが、実際に学習や推論処理を行なっているのは、ハイパースケールのデータセンターとなる。

 NVIDIAでは、ハイパースケールのためのGPUとして「Tesla M40」、「Tesla M4」といった製品を投入しているが、増大する性能への要求に対応する、ハイパースケールデータセンターのためのGPU「Tesla P100」をアピールした。

ハイパースケールのためのGPU「Tesla M40」、「Tesla M4」

Pascalアーキテクチャ/HBM2採用のGPU「Tesla P100」と世界初の“深層学習用”スーパーコンピュータ「DGX-1」

Tesla P100

 Tesla P100では、ユニファイドメモリやプリエンプション(タスクの一時停止)を実現した次世代アーキテクチャ“Pascal”を採用。16nm FinFET採用し、600平方mmという大型ダイを形成する。

 搭載されるメモリは「HBM2」で、GPUの上に積層され、4,000本のワイヤでGPUと接続されており、従来のGDDR5比で3倍のバンド幅を持つという。また、従来は誤り訂正機能であるECCを搭載すると、メモリチップのサイズや通信速度に影響があったが、HBM2では最初から組み込まれているため、ECCのオン/オフに関わらず、常に最高性能を発揮でき、これにより、高い信頼性と速度を両立できるという。

 また複数GPUの接続を高速化するため、高速インターコネクト「NVLink」をサポート。PCI Express比で5倍という通信速度で、GPU間やCPUとの通信を高速化可能とした。

先進テクノロジー
飛躍的な性能向上
搭載サーバーはIBM、Hewlett-Packard Enterprise、DELL、Crayから2017年第1四半期に登場
IBMはPower 8 CPUとNVLinkで接続したサーバーを出荷予定

 Tesla P100の出荷開始は2017年第1四半期だが、カード単体での出荷に先立ち、NVIDIAは、Tesla P100を8枚搭載した、世界初の“深層学習用”スーパーコンピュータ「DGX-1」を発売する。

 DGX-1は、Tesla P100×8、Xeonプロセッサ×2、7TB SSDを搭載したスーパーコンピュータで、Tesla P100はNVLinkで接続され、倍精度で40TFLOPS、半精度で170TFLOPSの演算処理性能を持つ。消費電力は3,200Wとなる。

 林氏は「これは(数年前の)地球シミュレータを上回る性能」とアピールし、Xeon×2のサーバーで150時間かかるAlexNetの学習を2時間で終えるという。同じ性能をXeonサーバーで実現するには250ノードが必要で、DGX-1は、250台のサーバーと同様の性能を3Uラックサイズで実現するとした。

 国内での正式販売開始も発表され、国内では、GDEPソリューションズ株式会社、HPCシステムズ株式会社、株式会社日立製作所の3社より、26日から販売される。価格についてのアナウンスはなかったが、米国では12万9千ドル(1,419万円、1ドル=110円換算)で販売されることがGTC 2016にて公表済みだ。

DGX-1
中身
性能
日本での販売

 自動運転車については、発表済みの自動運転車向け車載コンピュータ「DRIVE PX」を紹介。加えて、AIによる自動運転の新たな試みを紹介した。

 これは通常のアプローチとは異なり、車の前方方向だけをカバーするカメラを1台設置し、人間と同様の視界を与え、人間のハンドル操作を学習させたというもの。3,000マイル(約4,830km)の走行を学習させると、コーンを避け車道から飛び出すこともなく走行できるようにとなったという。

 また、世界初の自動運転車によるレース「Roborace」にDRIVE PX 2が採用されたことを紹介した。Roboraceでは、強力なモーターとバッテリ、Drive PX 2を搭載した、車重1トン程度のマシンが走行する。全10チームに2台づつ、同一仕様のマシンが用意されており、各チームは自動運転のためのソフトウェアを開発することで順位を競う形となる。林氏は、自動運転車は実際にレースが行なわれる前からシミュレーションが可能なため、「本番前に何千周とコースを走り込んできたAI達が競うレースになる」と述べ、人間ではあり得ないドライビング、はたまたアクシデントに期待して欲しいと語った。

Drive PX
自動運転車への新たな試み
学習の初めではコーンをなぎ倒し車道からはみ出しながら走行
3,000マイルの走行学習後
コーンを避ける
公道も運転可能
雨の日でも運転
Roboraceのマシン。DRIVE PX 2を搭載する

 イベントの前半では、エヌビディア合同会社 ディープラーニングソリューションアーキテクト兼CUDAエンジニアの村上真奈氏、同社シニアCUDAエンジニア プラットフォームビジネス本部の森野慎也氏が登壇。NVIDIA GPUを利用した深層学習について解説した。

エヌビディア合同会社 ディープラーニングソリューションアーキテクト兼CUDAエンジニア 村上真奈氏
同社シニアCUDAエンジニア プラットフォームビジネス本部 森野慎也氏

 村上氏は、深層学習はネットワークのレイヤー数が深くなると、学習に要求される計算量が膨大になっていくと述べ、GPUとCPUを比較した場合、計算結果は変わらないが、GPUはアーキテクチャが最適化されているため、CPUよりも約10倍高速に処理できるとした。

 前述の通り、深層学習は膨大な演算処理を求められ、10層のネットワークでも10億個のパラメータに達する。Microsoftが画像認識用に開発した学習モデル「ResNet」は152層で、さらに膨大なパラメータを持っている。

 しかし、深層学習の学習フェーズは行列演算の塊であり、CPUに比べてGPUは行列演算が得意(並列化)なため、CPUよりも高速に処理できるとした。

 さらに、GPUは学習だけでなく、推論(Inference)処理もCPUと比較して高速に処理できるとした。NVIDIAのテストによれば、Xeon E5-2698 v3とGeForce Titan Xを比較すると、Titan Xは6.8倍高速だという。

 村上氏は、これらの高速な処理を支えているのがNVIDIAのGPGPU環境「CUDA」、深層学習アプリケーションを開発するためのツールとライブラリである「NVIDIA ディープラーニングSDK」であると述べ、ディープラーニングSDKの最新版では、Pascalへの最適化のほか、多くの機能追加や高速化が行なわれているとアピールした。

深層学習の活用例
深層学習を加速する3つの要素
深層学習の学習フェーズは行列演算の塊
学習のサイクル
学習フェーズを高速化しデータサイエンティストのR&Dサイクルを高速化
GPUはCPUより高速
推論でもCPUより早い

推論エンジンを最適化する「GPU Inference Engine」

 続いて登壇した森野氏は、NVIDIAの開発した推論エンジン開発用フレームワーク「GPU Inference Engine」を紹介した。

 これは深層学習による推論を用いた製品を展開するためのソリューションで、学習済みのネットワークと、GPUに対して推論エンジンの性能を最適化するというもので、ハイパースケールや自動運転、組み込み向けとなる。

 NN演算の高性能化には、最適な畳み込みアルゴリズムの選択、グラフの最適化、メタパラメータのテンソルレイアウト、BLASの有効活用や、Pascal世代のGPUでサポートされた混合精度演算の利用といったアプローチがあると述べ、それらの処理を一括して実装可能にするためにNVIDIAが提供するのが「GPU Inference Engine」であるとアピールした。

GPU Inference Engine
学習と推論の要件の違い
高性能化へのアプローチ
最適な畳み込みアルゴリズムはレイヤの次元に依存する
VGG-E
グラフ最適化
畳み込み処理、バイアス、ReLUそれぞれでGPUメモリに読み書きしていたカーネル融合しアクセスを減らす
縦方向処理の融合
横方向の処理融合
Concatenationを除去
並列実行
小さいバッチ処理で行列が狭くなるため「GEMM」ではなく「GEMV」を使う。ベクタ積なのでcuBLAS関数を活用
データレイアウト
テンソルフォーマット
Pascal世代で高速な混合精度演算サポートし推論高速化
GPU Inference Engineではこれらの最適化を行なう
ワークフロー
性能

(佐藤 岳大)