イベントレポート

Arm、物体検出アクセラレータと機械学習プロセッサを発表

Arm OD Processorのデモ

 Armは、2月13日に同社がProject Trilliumと呼んできた機械学習向けのプロセッサとアクセラレータを発表した。1つは物体検出アクセラレータ「Arm OD Processor」で、もう1つが機械学習の汎用プロセッサ「Arm ML Processor」。ArmはMWCの会場においてその概要を説明し、「Arm OD Processor」の実働デモを行なった。

 モバイルSoCでは、NPU(Neural Processing Unit)、APU(AI Processing Unit)といった、何らかの機械学習/深層学習の推論ができるようなアクセラレータや演算器を組み込むことがトレンドになっている。今回発表されたArm ML Processorにより、SoCメーカーはArmからIPライセンスの提供を受け、低コストに機械学習/深層学習向けの演算器を組み込むことが可能になる。

8bit整数演算が可能な演算器を備えるArm ML Processor、4.6TOPsの性能を実現

Arm ML担当 ジェム・デイビス氏

 Armのジェム・デイビス氏によれば、Arm ML Processorは、アクセラレータと機械学習の推論に特化した8bitの整数演算が可能な演算器から構成されており、理論値として4.6TOPs(Trillion Operations Per Second)の処理能力、1Wあたりの性能が3TOPsとなる電力効率を備えているという。

Arm ML ProcessorとArm OD Processorの2つのIPが追加される
Arm ML Processorの概要

 デイビス氏によれば「最初の世代はモバイル向けに特化し、何よりも電力効率を意識した設計になっている。その後それをスケールして、モバイルより小さなIoTデバイスや、逆により大きな性能を必要とする自動運転向けや、クラウドサーバーにおける機械学習向けとしても使えるようにする」と述べた。

 最初の世代はモバイル向け、つまりはスマートフォン向けだが、将来的にはモバイルだけでなく、サーバーやHPCにおける機械学習/深層学習の学習や推論などにも使えるようにしていきたいとした(もちろんその場合は16bitや32bitの浮動小数点演算などにも対応する必要があるだろう)。

この図のうち、まずはモバイルにフォーカスし、その後データセンターや自動運転などのハイエンド、そしてIoT機器などのローエンドへと広げていく計画

 現在半導体業界は、機械学習に特化した半導体、とくにデータセンターやHPCで機械学習/深層学習の学習に利用する半導体が大きな話題になっており、言ってみれば汎用の演算器であるGPUを利用したNVIDIAのソリューションに対抗した機械学習/深層学習専用製品の開発が進んでいる。

 Googleが自社の製品向けに開発しているTPU(Tensor Processing Unit)や、IntelのNervana NNP(開発コードネーム:Lake Crest)などがその一例だ。Armとしては将来的にそうしたデータセンターやHPCにおける機械学習の可能性を探ってはいるが、まずはArmの得意分野の1つであるモバイル向けのソリューションを優先したとデイビス氏は説明した。

 その理由の1つは、Armの主力の顧客であるSoCベンダーが続々と機械学習に対応した機能を自社のSoCに搭載しているからだ。Huawei Technologiesの子会社であるHiSiliconの「Kirin 970」、Appleの「A11 Bionic」などには、いずれもNPU(Neural Processing Unit)などと呼ばれている演算器が搭載されており、機械学習/深層学習の推論を高速にできるようになっている。

 また、Qualcommの最新製品であるSnapdragon 845はそうしたハードウェアこそ搭載していないものの、コンパイラがCPU/GPU/DSPから効率よくハードウェアを選択して演算する仕組みが用意されている。良くも悪くもAI(人工知能)がトレンドになっている今、スマートフォンメーカーとしては「AI対応」と言いたいニーズがあり、SoCベンダとしてもそれに応えなければいけないからだ。

 Arm ML Processorもそうしたニーズに応えるものだ。すでに述べたとおり、ピーク性能は4.6TOPsで、1Wあたりの性能は3TOPs(7nmプロセスルールで製造した場合の想定値)になるという。ほかの製品はI/O周りも含み、プロセスルールも違うので、直接の比較はあまり意味がないが、自動運転向けの製品であるMobileyeの「EyeQ5H」は25TOPs/10W、NVIDIAの「Xavier」は30TOPs/30Wとなっていることを考慮に入れれば、Arm ML Processorの電力あたりの性能は期待ができそうだ。

物体認識アクセラレータとなるArm OD Processorとソフトウェア開発環境も提供へ

 もう1つのArm OD Processorは、物体検出に特化したアクセラレータになる。こちらは汎用の演算器は搭載しておらず、物体検出だけに特化した特定のハードウェアが搭載されており、CPUやGPUを使う場合に比べて圧倒的に低消費電力で物体検出が可能になる。

 MWCの会場では来場者の動きをフルHD/60fpsでの解像度で人間の動きを検出してデータを切り出し、機械学習のソフトウェアにデータを渡して推論(それは誰とか、男女どちらなのかとか、年齢とか)を行なっていた。デイビス氏によれば、このArm OD ProcessorはArmが2016年に買収したApicalの製品がベースになっており、物体検出のアクセラレータとしては第2世代の製品となる。

Arm OD Processorの概要

 デイビス氏によれば、Armはこうしたハードウェア環境だけでなく、ソフトウェアの開発環境も同時に提供していく。この開発環境により、ソフトウェア開発者はArm ML Processor、Arm OD Processorだけでなく、CPU(Cortex)、GPU(Mali)、そのほかのDSPといった環境も含めて、ハードウェアを効率よく活用して機械学習/深層学習ができるようになる。それらの最適化はソフトウェアをコンパイルする段階で静的に行なわれる。

 このソフトウェア開発環境は、Android NNAPIといったOSレベル、そしてTensorFlow、Caffe/Caffe2といったフレームワークなどをサポートしており、ソフトウェア開発者はそうしたフレームワークをベースに開発した機械学習/深層学習のコードを活用してより効率よくスマートフォン上で実行したりすることができるようになる。

TensorFlowやCaffeなどに対応したソフトウェア開発環境を提供
MWCでの開発環境のデモ
すでにソフトウェアベンダーなどの対応も始まっており、ArcSoftがAndroid NNAPIを利用したAIカメラソフトを作成

 Arm OD ProcessorはすでにSoCベンダーへの提供を開始しており、Arm ML Processorに関しては今年(2018年)の半ば頃提供を予定しているという。これにより、スマートフォン向けのSoCを提供しているベンダは来年の製品あたりからArm OD Processorを自社製品に搭載して出荷できるようになる。自社で開発する必要がない分低コストで実装することが可能になるので、これまでよりもさらに機械学習/深層学習への対応が加速していくことになるだろう。