イベント
[GTC 2014]Maxwellの次に来る次世代GPU「Pascal」。「NVLink」と3次元メモリがその“次世代性能”を切り開く
すでに一部は速報でお伝えしているが,筆者のレポートでは,今後何本かに分けて,Huang氏による基調講演の内容と,その関連情報をお伝えしてきたいと思う。
GTC 2014のテーマは「ビジュアルコンピューティング」
そして,氏は次のように述べた。
「GTC 2014の大きなテーマは,ビジュアルコンピューティングだ」。
2010年のGTCはHPC,2012年は医療や原子物理学,そして2014年はビッグデータやコンピュータビジョンが大きなテーマに |
GPGPUが活かされる次なるテーマはビッグデータ解析とクラウド,コンピュータビジョンだとHuang氏 |
このビジュアルコンピューティングを実現するうえで重要となってくるのは「CPUとGPUの最大性能を引き出す手段」であるとHuang氏は続ける。
CPUは,低遅延で高速なシングルスレッドの実行に特化し,GPUは大量の演算を超並列に実行することで膨大なスループットをもたらすことを得意としている。そのなかでGPUを最大限に効率よく利用するための手段として,NVIDIAはCUDAを用意しているが,それでも,データの伝送速度はシステム全体のボトルネックになりがちだった。
GPUと接続されたグラフィックスメモリは数百GB/sの帯域幅を誇るが,PCI Express 3.0のバス帯域幅はたかだか数十GB/s。CPU側に接続されたメインメモリ(以下,CPUメモリ)も同様だ。いくら演算能力が高くても,データの移動が遅ければ,そこがボトルネックになってしまい,最大性能を発揮できない。
この「帯域幅不足」という問題に対し,NVIDIAは今回,いくつかの解決策的技術を発表した。
その1つが「NVLink」で,これは,GPUとCPU,あるいはGPU同士を超高速にインターコネクトするためのバス規格だ。NVIDIAとIBMとの共同開発で実現されたという。
プログラミングモデルはPCI Expressに準拠するが,実効帯域幅はPCI Express 3.0比で5〜12倍に達するのが,NVLinkの持つ最大の特徴だ。現行世代比で12倍の帯域幅を確保できれば,グラフィックスメモリに近い帯域幅でGPUからCPUメモリまでアクセスできるようになるわけで,「AMDのAPU的な『CPUとGPUの融合』をNVIDIAも始めた」と言ってもいいかもしれない。
夢の技術に聞こえるNVLinkだが,注意点もある。それは,NVIDIAとIBMの共同開発ということで,IBM製CPU――おそらく「Power8」――との組み合わせが想定されている点だ。NVLinkは,HPC(High Performance Computing,スーパーコンピュータを使って計算する科学技術計算分野)がターゲットとなる技術ということもあり,民生向けPCの主流であるIntel製CPUはNVLinkの対象に入っていない。
もちろん,「Intel製CPUをサポートする,NVLink対応のチップセット」をNVIDIAが開発すれば対応は可能だろうが,NVIDIAはチップセット事業から撤退して久しいので,その可能性は低いと見るべきだろう。
「ではIntel製CPUと組み合わせた場合にはNVLinkの恩恵を受けられないのか」というと,そういうわけではない。先ほども述べたとおり,NVLinkはGPU同士のリンクにも対応したバス技術なので,複数のGPU同士を接続した場合には,Intelプラットフォームでも相応の恩恵が受けられる。
つまり,PCI Expressリンクにぶら下がる形でGPUが接続されるIntelプラットフォームにおいても,“遅い”PCI Express経由で持って来たCPUメモリからのデータは,NVLinkで結ばれた複数のGPU間で超高速に共有できる。「CPUメモリの出し入れは遅いが,GPUに持って来てからは速い」といったイメージで利用できるのである。
「帯域幅不足」問題の改善に向けたもう1つのソリューションが,3次元メモリ(3D Memory)だ。
これは簡単にいうと,メモリチップを高層ビルのように上方向へ積み上げる形で積層させ,製造してしまおうという技術のことである。
現在,メモリの容量を増やしつつ,性能も上げようという場合は,メモリチップを基板上に複数個配置して,各メモリチップからの信号線をプロセッサ側のメモリコントローラと接続するデザインを行う必要がある。メモリチップの数が増えればその分だけ基板上の場所を取るというのは容易に想像できると思うが,メモリチップとメモリコントローラを結ぶ信号線の数が増えれば,基板レイアウトの難度も上がる。
それに対して3次元メモリでは,1枚分のメモリチップ上に,複数の層からなるメモリ素子(=メモリセル)を積層させる。信号線は,各層を貫通するような形で実装してしまう。いわば,複数のメモリチップを,最短距離で立体的に配線するイメージだ。
これにより,メモリ容量とメモリ帯域幅の両方を一気に解決してしまおうというわけである。
なお,この3次元メモリは,GPUのダイとは立体的に直結されるようになり,一度に何千bitというデータが,GPUとの間を往来できるようになる。Huang氏は,メモリバス帯域幅がこれから一気に跳ね上がるというスライドを示していたが,まさに,そういう期待が持てる技術なのだ。
Pascal発表。GPUロードマップに変更あり!?
CUDA世代以降のNVIDIAは,GPUのコードネームに物理学者の名字を与えてきているが,Pascalは,機械計算器の発明や,流体力学における「パスカルの原理」,幾何学における「パスカルの定理」の提唱者として知られ,圧力の単位にもなっているフランスの物理学者,Blaise Pascal(ブレイズ・パスカル)がその由来。Huang氏は,Pascalの評価用モジュールを実際に掲げ,開発が順調であることをアピールしている。
Pascalモジュールを掲げるHuang氏。モジュールを見ると,Pascalのパッケージ上で4つ見えるのが,3次元メモリだ。周辺の部材は電源関連ではないかと思われるが,詳細は不明 |
Pascalモジュールは,PCI Expressスタイルの(ハイエンド市場向け)グラフィックスカード比で3分の1程度とのこと。このサイズを実現できているのは,当然のことながら3次元メモリの恩恵が大きい |
気になるのは,GTC 2013で公開されたロードマップにおいてMaxwellの次とされていた,積層メモリ採用の「Volta」(ヴォルタ,開発コードネーム)がGTC 2014版のロードマップから姿を消していることだが,この点についてNVIDIAは「Voltaの前にPascalが挿入される形でロードマップに追加された」という公式見解を示している。
GTC 2013版のロードマップだと,Voltaの登場年は明確にされていないので,NVIDIAの公式見解を素直に受け止めるなら,ロードマップに若干の変更があったということなのだろう。
ところで,Huang氏の掲げた評価用モジュールは,従来型のグラフィックスカード的なスタイルになっていないが,この点については,Huang氏がこのモジュールを「コンピュータモジュール」と呼び,さらに「これが将来のワークステーションであり,HPCプラットフォームであり,ハイエンドPCゲーミングプラットフォームにもなる」と表現していたことがヒントになりそうだ。おそらく,モジュール中央のプロセッサに,CPU機能も統合されているのだろう。
おそらく,従来型のPCフォームファクタに適合するグラフィックスカード型製品も提供されるとは思うが,現時点で,その詳細は分からない。
なお,Pascalとは直接関係ないが,新しいロードマップで,Maxwellに「DX12」と記載されている点もさりげない注目ポイントといえるだろう。既報のとおり,DirectX 12自体はDirectX 11世代のGPUにも対応することが明らかになっているが,DirectX 12(≒Direct3D 12)の最終仕様では何らかの新要素が加わるという予測が立っている。すでにGeForce GTX 750シリーズなどとして世に出ているMaxwellだが,ここに,Keplerにはない新要素が追加されたという情報はいまのところない。この点は,今後の情報開示を待つ必要がありそうだ。
Pascalに関するNVIDIA公式blogのポスト(英語)
GTC公式Webサイト(英語)
[GTC 2014]NVIDIAの次世代GPUは2016年の「Pascal」。3次元メモリ技術で帯域幅は1TB/sに
- 関連タイトル:
GeForce GTX 10
- 関連タイトル:
Volta(開発コードネーム)
- この記事のURL: