2016年4月に開催された「GPU Technology Conference(GTC 2016)」の基調講演で、NVIDIAのJen-Hsun Huang CEOは、次世代のGPUである「Pascal」を発表した。NVIDIAはGPUアーキテクチャに偉大な科学者の名前をつけており、Fermi、Kepler、Maxwellときて、今回がPascalである。
Fermiは、倍精度浮動小数点演算で高い性能を持ち、ECCをサポートするなど、科学技術計算に本格的に対応できるGPUであり、NVIDIA GPUがスパコン市場で大きなシェアを占める道を切り開いた。そして、Keplerはこれに続いて科学技術計算の性能や機能を強化して、今日のスパコンで使われているGPUの大部分がKeplerという状況になっている。
これに続くのがMaxwellであるが、ここで異変が起きた。Keplerは28nmプロセスで作られており、Maxwellは次世代の20~22nmプロセスに縮小してCUDAコア数を増やして性能をあげるということを目論んでいたと思われるが、20~22nmプロセスは思ったほど密度が上がらず、性能的にもメリットがあまり無いということになり、NVIDIAだけでなく他のGPUメーカーも20~22nmプロセスの採用を見送った。
結果としてMaxwellでは半導体の微細化による密度向上が期待より少なくなってしまい、Maxwellは倍精度浮動小数点演算回路を少ししか搭載しないという仕様になってしまった。このため、科学技術演算向けとしては、前世代のKeplerチップを2個使うK80のような製品を作って凌ぐという状態が続いていた。この状態にあるNVIDIAにとっては、待ちに待った新製品がPascalアーキテクチャを採用した次世代GPUである。
新技術を詰め込んだPascal GPU
Pascalには多くの新技術が詰め込まれている。Jen-Hsun Huang CEOは、これを5つのミラクルと述べた。第1のミラクルはPascalアーキテクチャである。第2のミラクルは16nmのFinFET(FF)プロセスの採用である。第3のミラクルはHBM2の採用、第4のミラクルはPCI Express3.0の5倍のバンド幅を持つNVLINKの採用、第5のミラクルはディープラーニングなどの新しいAIアルゴリズムのサポートであるという。
2番目の写真の半導体プロセスであるが、これはTSMCの16FF+プロセスを採用している。3番目のHBM2の写真のCoWoS(Chip-on-Wafer-on-Substrate)はTSMCの技術で、上の左側が3D積層のHBM2メモリ、右側はGPUチップである。そして両者をサブストレート(基板の両面に薄い配線層が5層程度見える)で接続している。
NVLINKはNVIDIAの技術で、2つのGPU間を80GB/sというバンド幅のリンクで結ぶ。PCIe3.0のx16リンクは16GB/sであり、5倍のバンド幅を持っているとNVIDIAは言っている。しかし、x16のPCI Expressリンクのバンド幅は32GB/s(双方向の合計)であり、これに対してNVLINK 1リンクでは40GB/s(双方向の合計)であり、オーバヘッドが小さいとしても30%程度の違いではないかと思う。ただし、NVLINKは4リンクを並列にして80G/sの双方向リンクとして使えるという点では、PCI Expressより高いバンド幅が使える。
これらの技術は、ミラクルというにはちょっと基準が甘い気もするが、かなり頑張って技術を詰め込んでいることは確かである。