16個のスライスに分割した
巨大な32768bit幅のSIMD
各々のスライス構造を示したのが下の画像である。
Ncoreのワークフロー
(0) Bus Subsystem経由でD-RAM(Data RAM)とW-RAM(Weight RAM:ネットワークの重みを格納する領域)にデータが格納される(これは処理パイプラインの外)
(1) NDU(Neural Data Unit)が4096Bytes分のデータとWeightを読み込み、これの並べ替えや回転、Edge Swap、あるいは前サイクルで処理の終わった出力画像の取り込みといった処理を1サイクルで実行する。
(2) NPU(Neural Processing Unit)で処理する。処理はMAC(乗加算)と加減算、最大/最小、論理命令その他をサポート。9bit/16bit整数とBFloat16が取り扱える。9bit整数ならMACが1サイクル、BFloat16でも3サイクルで処理できる。ちなみにデータ型そのものは8/16bit整数とBFloat16で、8bit整数は内部で9bit化して処理される。ここでWeightのデータを基に、データをネットワーク構造にあわせて処理する。
(3) OUT-unitでは、NPUの結果の量子化やReLU(ランプ関数)/Tanh/シグモイド関数を利用した活性化、出力の正規化などが行なわれ、結果がD-RAMないしNDUに引き渡される。ほとんどの処理は1~3サイクルで完了するが、例えば8:1の重ね合わせなどは最悪値で10サイクルほど要する
ここで1回分のデータ(例えば映像処理なら1フレーム分の画像データ)が完了するまで(1)~(3)をパイプライン式に繰り返し、終わったら(0)に戻る、という形である。
一方制御命令であるが、128bit幅のもので、これを見ると限りなくVLIWに似ている。ただし詳細は未公開である。
このあたりは昔のVIA C3などで提供されてきた独自拡張命令に近い感じに見える。ただ必要なツールやスタックはCentaurから提供されるので、直接アプリケーションプログラマーがこれを触る必要はない、としている。
さてNcore、構造そのものはシンプルながら、なにしろ32Kbit幅のデータパスであるから、それなりに実装は困難だったらしい。
下の画像がNcoreのうちでロジック部のアップである。この部分だけで11mm2というのは、性能を考えるとかなり小さい方である。

この連載の記事
-
第852回
PC
Google最新TPU「Ironwood」は前世代比4.7倍の性能向上かつ160Wの低消費電力で圧倒的省エネを実現 -
第851回
PC
Instinct MI400/MI500登場でAI/HPC向けGPUはどう変わる? CoWoS-L採用の詳細も判明 AMD GPUロードマップ -
第850回
デジタル
Zen 6+Zen 6c、そしてZen 7へ! EPYCは256コアへ向かう AMD CPUロードマップ -
第849回
PC
d-MatrixのAIプロセッサーCorsairはNVIDIA GB200に匹敵する性能を600Wの消費電力で実現 -
第848回
PC
消えたTofinoの残響 Intel IPU E2200がつなぐイーサネットの未来 -
第847回
PC
国産プロセッサーのPEZY-SC4sが消費電力わずか212Wで高効率99.2%を記録! 次世代省電力チップの決定版に王手 -
第846回
PC
Eコア288基の次世代Xeon「Clearwater Forest」に見る効率設計の極意 インテル CPUロードマップ -
第845回
PC
最大256MB共有キャッシュ対応で大規模処理も快適! Cuzcoが実現する高性能・拡張自在なRISC-Vプロセッサーの秘密 -
第844回
PC
耐量子暗号対応でセキュリティ強化! IBMのPower11が叶えた高信頼性と高速AI推論 -
第843回
PC
NVIDIAとインテルの協業発表によりGB10のCPUをx86に置き換えた新世代AIチップが登場する? -
第842回
PC
双方向8Tbps伝送の次世代光インターコネクト! AyarLabsのTeraPHYがもたらす革新的光通信の詳細 - この連載の一覧へ















