後藤弘茂のWeekly海外ニュース
Cerebrasが開発したウェハサイズの深層学習チップ
2019年8月27日 12:22
世界最大のチップがカンファレンスで発表される
チップのサイズは46,225平方mm、縦横215mm×215mmの正方形。NVIDIAの最大のGPUである「Volta GV100(Tesla V100)」ダイの815平方mmの約56倍のサイズだ。人間の頭より確実に大きい。間違いなく、世界最大の“半導体チップ”だ。
そして、チップ上のトランジスタ数は1兆2,000億と、1兆個を越えた。これも、Voltaの211億トランジスタの約56倍。最大のGPUの56倍のサイズの超モンスターチップ、それが、Cerebrasが開発した深層学習プロセッサ「Cerebras Wafer Scale Engine(WSE)」だ。
Cerebras WSEのアイデアは奇抜だが単純明快だ。可能な限り大きなチップを作る--そのコンセプトに沿ってウェハサイズのチップをCerebrasは作った。半導体チップは、ウェハと呼ばれる円形のシリコン板の上に作られる。通常は、直径300mmのウェハに、数十~数百個のダイを作り、それを1個1個切り出してチップとする。ところが、Cerebrasは、小さなダイを切り出す代わりに、ウェハ1枚をまるまるチップとしてしまった。215×215mmというサイズは、300mmウェハで製造できる最大サイズだ。
巨大化する深層学習ワークロードへの解決策
米スタンフォードで開催された半導体チップのカンファレンス「Hot Chips 31」で、今年最も話題をさらったのは、CerebrasのWSEだった。WSEは16nmプロセスで製造され、搭載しているAIプロセッサコア数は40万、オンチップのメモリ量は18GB、メモリ帯域は9PB/sec、内部ファブリックの帯域は100 Petabit/sec。どの数字を取ってもとてつもない、深層学習専用のアクセラレータチップだ。
CerebrasがWSEを開発した背景には、機械学習のニューラルネットワークモデルの大型化がある。膨大なコンピュテーションを必要とする最近のNNは、もはや1個のGPUには収まらない。そのため、NVIDIAもAMDもGPU同士を広帯域連結させて、ワークロードの増大に対応している。しかし、チップ同士の接続は、性能や電力の面で不利となる。それなら最初から数十個のGPUに相当するチップを1個の巨大チップとして製造しようというのが、Cerebrasのアイデアだ。
Cerebras WSEの40万個のコンピュートコア「Sparse Linear Algebra(SLA) Core」は、ニューラルネットワークのテンサーオペレーションに最適化されている。演算アレイは積和算とコンボリューションの両方を実行する。また、フルに接続されたデンス(dense)ネットワークだけでなく、剪定されたスパース(sparse)ネットワークにも対応する。スパースNNの実行は、無駄な演算をスキップするようにハードウェアで制御する。
深層学習では膨大なメモリ帯域を必要とする。深層学習向けプロセッサの多くがHBM系メモリを採用しているのはそのためだ。しかし、深層学習のワークロードでは、伝統的なコンピュートとメモリの分断は効率的ではない。そこで、Cerebras WSEでは、18GBのメモリをオンチップに搭載、メモリをコアごとに分散配置している。「重み(ウエイト:weight)」データと「活性化関数(アクティベイション:activation)」データの格納やハンドリングは、基本的にオンチップメモリで行なう。トータルのメモリ帯域は、9PB/secという途方もない数字となっている。
ウェハスケールチップの最大の課題はダイ間配線
ニューラルネットワークプロセッサのアーキテクチャとしては合理的なCerebras WSEのアイデアには、解決しなければならない重大な課題があった。最大のチャレンジは、半導体製造の露光とエッチングの工程で、チップとして配線を生成できる面積が800平方mmちょっとと制約されていることだ。言い換えれば、Voltaの815平方mm以上のサイズのチップは、通常の半導体製造工程では作ることができない。
通常、ウェハ上では、フォトマスクによる角形の露光ショットパターン(最大でVolta GV100のサイズ)ごとにダイ(半導体本体)が分割して生成される。ダイのパターンの間には境界「スクライブライン(scribe line)」が生成されており、スクライブラインを越えた配線は、通常はできない。
しかし、Cerebras WSEを実現するには、スクライブラインを越えた配線が必要となる。つまり、通常の半導体製造工程ではできないこことを、実現する必要がある。どうやって不可能を可能にしたのか。ここがCerebrasのテクノロジの肝の部分だ。
Cerebras WSEでは、個々のユニットの間を、広帯域で低レイテンシなダイ間インターコネクトで接続している。ネットワークは2Dメッシュネットワークとなっている。つまり、2Dメッシュで、ダイ間を接続する特殊なインターコネクト技術をCerebrasは開発した。
Cerebrasは、まだ公式に、このダイ間インターコネクト技術の詳細を発表していない。しかし、特許は申請されている。同社の特許申請「United States Patent Application 20190074262」によると、下の図のような手法でダイ間インターコネクトは生成される。
Cerebras WSEの巨大な215mm角のチップは、よく見ると、12×7のトータル86個の長方形のダイに分割されている。各ダイは29.7×16.94mmで、ダイの間にスクライブラインが生成されている。言い換えれば、Cerebras WSEの各ダイは、29.7×16.94mmのフォトマスクで露光されている。
Cerebrasの技術では、ダイ間インターコネクトのレイヤの工程で、露光マスクのパターンを縦横とも50%ずらす。ダイ間インターコネクトのマスクは、ちょうど各ダイの上をカバーするように露光する。通常は、すべてのレイヤが同じポジションで露光するのを、ダイ間インターコネクトレイヤだけダイをまたぐように露光させる。こうすると、各ダイはそのままで、ダイの間のインターコネクトが可能になる。Cerebrasはこの技術を、TSMCとのパートナーシップで開発したという。
特殊なパッケージを機器からカスタム開発
ウェハスケールチップには、このほかさまざまな課題がある。ダイ歩留まり、排熱、パッケージング、電力供給などだ。Cerebrasはこれらの課題も解決したという。まず、ウェハ上の不良による欠陥ダイについては、メッシュネットワークで回避する。
巨大チップのパッケージングは特殊になるので、新たにカスタムパッケージング機器を開発。通常のチップへの電力は通常は基板経由で行なうが、ウェハサイズとなると難しい。そこで、電力は3Dの配線で基板下から送り、排熱は液冷で行なうことにしたという。
こうして諸問題を解決したCerebras WSEは、すでに稼働しており、製品としての姿が見える日も近いという。
ちなみに、Cerebrasは、Armアーキテクチャの高密度スモールコアサーバーメーカーSeaMicroのメンバが中核となって設立された。SeaMicroはAMDに買収され、AMDのArmサーバー部門となっていた。しかし、Armサーバーの先行きが不鮮明になった段階で、AMDのArm路線は縮小していた。CerebrasのCEOであるAndrew Feldman氏は、SeaMicroの元CEOで、AMDのArmサーバービジネスのリーダーだった。