ニュース
Imagination、“エッジAI”向け最高性能アクセラレータ「PowerVR 2NX」
2017年9月21日 16:00
英Imagination Technologiesは、ニューラルネットワーク(NN)に特化したアクセラレータ(NNA: Neural Network Accelerator)「PowerVR 2NX」を発表した。
学習用ではなく、推論処理の専用アクセラレータで、SoC(System-on-a-chip)内に組み込むといった利用を想定した製品。
同社では、モバイル端末の写真撮影アシストや文章予測強化、AR/VRヘッドセットでの特徴検出および視線追跡、自動車での歩行者検出や運転者の行動監視、監視カメラでの顔認識や群集行動分析、UX予測、音声認識、バーチャルアシスタント、ドローンの衝突回避や物体追跡といったアプリケーションにNNAを利用できるとしている。
新製品は、新規に開発された新アーキテクチャのIPコアであり、推論処理あたりで業界最小の消費電力と最小の実装面積、最小のメモリバンド幅、最高クラスの推論性能を実現。DSP比で8倍の性能密度を謳う。
大きな特徴は、専用ハードウェアソリューションとして初という演算精度を自由に設定できる点で、4~16bitまで柔軟に対応する。
Deep Neural Network(DNN)を用いた深層学習(ディープラーニング)では、多数の層(レイヤー)を通して推論処理を行なうが、この場合にレイヤー単位で演算精度を変えることで、より高速に推論処理を実行できる。
スタンドアロンでの推論実行のほか、CPUやGPUといったそのほかのプロセッサと組み合わせ動作させることもできる。
ハードウェアIPだけでなくソフトウェアやツールも提供される。「Tensorflow/Tensorflow Lite」や、「Caffe/Caffe2/Caffe2go」、「PyTorch」といったフレームワークに対応しており、同社の提供する開発ツールを通じて学習モデルの変換/最適化を行なうことで、PowerVR 2NXで高速に推論処理を実行できるようになる。
製品の説明を行なった同社 商品技術マーケティングシニアディレクターのChris Longstaff氏は、PowerVR 2NXは、名前の通り「PowerVR」ファミリーの製品だが、GPUではなくVision/AIセグメントのものであると説明。
同氏は、AIはもはや現実に動作しているものだが、電力、バンド幅、性能、セキュリティ、信頼性、応答性といった理由から、スマートフォンなど末端機器でAIを動かす“エッジAI”にシフトすると述べ、SoC内のCPU/GPU/ビデオコーデックなどのように、ハードウェアソリューションが必要とされるとした。
エッジAIについては、Huaweiが同社のSoC「Kirin 970」でNPU(Neural network Processing Unit)の内蔵を大きくアピールしていたほか、Appleの「iPhone X」がSoCに「Neural Engine」を搭載しており、AndroidではAndroid Neural Network APIとして、推論処理でハードウェアアクセラレーションを利用する仕組みも実装が進み、スマートフォン業界で実際に動きがある。
性能については、1,000枚の写真に対して何かを検出させる推論処理を実行した場合、プレミアムGPUで60秒かかるところ、PowerVR NNAでは2秒で終わるとアピール。
写真のソート処理では、バッテリ1%相当の電力でGPUが2,400枚に対しPowerVR NNAなら42万8千枚をソートできるとした。ビデオの分析でも、同じくバッテリ1%あたりプレミアムGPUが1分20秒しか分析できないのに対して、237分を処理できるという。
PowerVR NNAとPowerVR GPUを組み合わせれば、競合GPUと同じ実装面積で200倍のNN性能を実現するとした。
PowerVR 2NXは、NN演算ユニットとバッファ、出力変換機、バスインターフェイスで構成される。
アーキテクチャはスケーラブルで、コアあたり2,048 MACs/クロック(クロックあたりの積和演算性能)以上の性能を発揮。競合製品の2倍近い性能を謳う。
前述の通り、幅広い演算精度に対応しており、4/5/6/8/10/12/16bitをサポートする。自動車運転者など高精度の結果が要求される場合には16bitを、それほどの演算精度が要求されない場合には低精度で演算を行なえるため、最小の消費電力で最大の性能を実現する。
ISPやCPU、GPUなどとのデータの双方向の読み書きをサポート。NNEF(Neural Network Exchange Format)といったフォーマットに対応するという。
また、メモリアクセスを最小に抑えるように設計されており、画像処理であれば、従来は畳み込み、アクティベーション、正規化といったフローのたびにメモリアクセスが発生していたが、PowerVR 2NXであれば内部のバッファによりシングルパスで実行できる。これにより電力消費や処理のボトルネックとなることを回避できるという。
オプションでメモリ管理ユニット(MMU)も用意し、これによってAndroidなどに対応できるという。
同社によれば、NNの推論処理において、実際にはレイヤー単位で必要な演算精度が異なるのだという。
従来のハードウェアソリューションでは演算精度がフレキシブルでないため現実的ではないが、PowerVR 2NXであれば、高い精度を必要とするレイヤーだけを高精度に、そうでないレイヤーには必要なだけの精度に調整してやることで、より低いバンド幅と消費電力で高い性能を実現できるという。
ただし、前述の開発ツールで学習モデルを変換/最適化する際、自動でレイヤー単位の精度調整が行なわれるわけではないため、手動で調整をしていく必要があるとのことだった。
フレームワークの対応については、TensorflowやCaffe以外のものについても、対応することは可能としていた。