「Hot Chips 30 - アナログ演算で高効率なMythicのAIチップ(前編)」はコチラ

タイルと呼ぶMythicのFlashトランジスタアレイには、次の図に示すように、SRAM、RISC-Vプロセサ、SIMD演算器、ルータなどが付いている。積和演算はFlashトランジスタアレイで実行できるが、PoolingやReLUなどの処理はFlashトランジスタアレイでは実行できないので、SIMD演算器を使ってデジタルに計算している。

そしてMythicのチップは単独でも使えるが、より大規模なモデルを扱う場合は、複数のチップをPCI Expressで接続して大きなモデルを扱うことができるようになっている。

  • Mythicのタイルの構成

    タイルはFlashトラジスタアレイの両側にDA変換、AD変換を付けたマトリクス乗算部と、RISC-Vコントローラ、SRAM、SIMD演算器とタイル間をつなぐためのルータを含んでいる (出典:このレポートのすべての図は、Hot Chips 30におけるMythicのDave Fick CTOの発表スライドのコピーである)

次の図の中の左の図はシングルタイルであるが、右の図は多数のタイルを並べたIPU(Intelligence Processor Unit)の図である。

1つのチップのタイルグリッドを分割して、シーンのセグメント分割、オブジェクトの追跡、カメラ画像のエンハンスなど、異なる処理を行わせることもできる。

  • タイルの基本構成

    FlashトランジスタアレイとDA、AD変換器からなるMAC演算器とSRAM、RISC-Vコントローラ、SIMD演算器、ルータなどで基本構成単位であるタイルを作る。多数のタイルを2次元メッシュで接続してタイルグリッドを作る。右の図のように、タイルグリッドを分割して、別の処理を行うこともできる

Mythicの最初のIPUは、50M個の重みを格納するFlashアレイを持ち、それにPCIe2.1のx4ポートと基本的なコントロールプロセサが付いている。しかし、これは製品というよりはプロトタイプという位置づけなのか、次の世代がGen1と書かれている。このGen1は250M個の重みを格納でき、16レーンのPCIe2.1ポート、USB3.0/2.0、オーディオ/ビデオインタフェース、エンハンスされたコントロールプロセサを搭載するという。

50Mセルの場合は、2枚目のスライドに掲げた大きなサイズのDNNの重みすべてを格納することはできないが、250Mセルあれば、144M個の重みのVGG-19でも、すべての重みをFlashトランジスタアレイに収めることができる。

  • 最初の製品の概要

    最初のプロダクトは50Mセルで、4レーンのPCIe2.1とベーシックなコントローラ。Gen1と書かれた製品では、250Mセルになり、PCIe2.1も16レーンとなり、オーディオ/ビデオインタフェースやUSBが付く。コントローラも強力にする意向である

システムの構成であるが、ホストとなるSoCとPCI Expressで接続して、MythicのIPUをAI処理のアクセラレータとして使う。この図では1個のIPUの接続であるが複数のIPUを接続する構成も可能である。

  • MythicのIPUの接続方法

    MythicのIPUはAI処理のアクセラレータとして、ホストSoCとPCI Expressで接続して使う

次の図の円グラフは、例えばResNet-50などの標準的な処理をするときの1個の積和演算に必要なエネルギーとその内訳を示すものである。Mythic IPUの消費エネルギーは0.5pJ/MACで、その半分がアナログの積和計算器のエネルギーで、残りはデジタルのストレージ(SRAM)が0.1pJ、コントロールロジックが0.05pJ、PCIeポートが0.1pJとなっている。

  • 1回のMAC演算あたりのエネルギー

    MythicのIPUはホストSoCと接続するPCIeポートの消費電力なども含めて、1回のMAC演算あたり0.5pJのエネルギーで動作する

次の図はハイエンドGPU、高性能SoCとMythicの3種のエンジンを使って、ResNet-50で画像認識を行った場合のフレームレートと、消費電力を示す棒グラフである。入力イメージは224×224ピクセルで、GPUとSoCの性能、電力はMythic社での実測である。IPUチップのシリコンは出来ているとのことであるが、ここに書かれたMythicの値は実測ではなく、推定値である。

この比較によると、フレームレートはGPUが892、Mythicが900とほぼ同等で、SoCは7.6と1/100以下の性能である。一方、電力ではGPUは167Wに対して、SoCは0.5WでMythicは2Wとなっている。MythicはGPUと同等のフレームレートをおおよそ1/100の電力で実現しており、非常にエネルギー効率が高い。

  • Mythic IPUの電力対性能比

    224×224の画像をResNet-50で認識した場合の高性能GPU、高性能SoC、Mythicのフレームレートと消費電力。Mythic IPUはGPU並みの性能をSoCに近い電力で実現している

次の図はOpenPoseという、画像の中に写っている人間のポーズ(姿勢)を認識するAIの場合で、656×368ピクセルの画像を処理した場合、フレームレートはハイエンドGPUが68.5に対して、Mythicが105、電力は、GPUが167Wに対してMythicは5Wとなっている。こちらも前のResNet-50と近い感じの結果になっている。

  • GPUとMythicの電力対性能比

    OpenPoseで画像の中の人間のポーズを認識する。GPUのフレームレートは68.5に対して、Mythicは105と性能が高い。一方、電力は、GPUが167Wに対してMythicは5Wである

今後のMythicのスケジュールであるが、ソフトウェアツールやプロファイラのアルファ版のリリースが2018年の遅い時期。1個、あるいは4個のIPUを搭載した開発ボードのサンプル提供が2019年中、量産出荷は2019年の遅い時期とのことである。

量産時には、IPUの単体と最大16IPUを載せたPCIeボードを販売する予定であるという。

  • Mythicの製品化スケジュール

    2018年の遅い時期にソフトウェアツールをリリースし、2019年中頃に開発ボードのサンプル配布、2019年の遅い時期に量産出荷を予定している

まとめであるが、Mythic IPUは、画像認識などの処理のレーテンシーが短く、バッチサイズが1の場合は通常、1フレームの遅延で結果を出力する。そして、数10TMAC/s(毎秒のMAC演算回数)と高性能で、0.5pJ/MACと高いエネルギー効率を実現する。

そして、超低電力から高性能まで、非常に広いスケーラビリティーを持ち、CNNだけでなくDNN/RNNなども扱えるトポロジ非依存であり使い易いという特徴を持っている。

  • Mythicのまとめ

    Mythic IPUはバッチサイズ=1でも高い性能を発揮し、レイテンシも短い。演算性能はハイエンドGPU並みの高性能で、低電力である。超低電力から高性能まで広いスケーラビリティを持ち、ネットワークのトポロジに依存性がなく、使い易い

Flashトランジスタアレイで積和演算を行うのは非常にうまいやり方である。しかし、Flashトランジスタアレイに書き込む重み情報はどこかに記憶して置く必要があり、毎日起動時に、書き込みに1分間程度かかるとなると、産業用機器ではあまり問題にならないかも知れないが、コンシューマ向けのモバイルデバイスではかなり不便である。

また、アナログ処理であるので、パラメタの経年変化や温度依存性などがあり、どの程度の計算精度が得られ、その精度で使い物になるのかも経験の蓄積が必要になりそうである。

とは言え、高い性能と低い消費電力は大きな魅力で、注目に値する技術、製品である。