ではArmは、一体どういうAI戦略を考えているのだろうか。基本的なストーリーラインは以下のようになるだろう。
これらのうち1.は比較的分かりやすい。TechFactoryの連載記事でNVIDIAによるMellanox買収に絡んでちょっと説明したが、実は学習のプラットフォーム市場そのものは今後それほど大きくなるとは予測されていない。NVIDIAの予測では毎年学習向けのプラットフォームへの要求性能が上がっていくとしているが、その一方で毎年学習向けのプラットフォームそのものも性能が上がっているから、市場規模(TAM)という意味ではBarclays Researchの予測に示すように金額的に頭打ちになると思われる。ここを狙っても仕方がないというわけだ。
2.についても分かりやすい。図2は、Ethos-N37/N57の発表会におけるスライドであるが、推論においてはメモリアクセス性能が大きく影響してくる。データとウェイト、どちらにおいてもそれなりにメモリアクセスが激しく発生しており、これを外部のDRAM上に置くと、ボトルネックになる&消費電力が減らない原因となる。大容量のキャッシュが搭載されていればこれは緩和されるが、今度はダイサイズが肥大化する=製造原価が上がる原因ともなる。
こうした状況では、ローカルにSRAMを(キャッシュではなく、スクラッチパッドメモリのような形で)実装するのが性能と消費電力、コストのバランスを取る一番良いアーキテクチャだというのがArmの考えだ。このため、絶対性能はともかくとして性能/消費電力比や性能/価格比ではCPUやGPU、FPGAなどに比べてずっと向上するNPUを最終的に使うようになる、というのがArmの見立てである。
この推論向けのNPUのマーケットは、既に先行する競合が多数存在するが、最終的にはArmのNPUがシェアを獲得できると考えているようだ。もちろんそのために必要な手はきちんと打っている。GPU IPの市場は、当初Imagination Technologiesの「PowerVR」が圧倒的なシェアを獲得していたが、現在はArmのMali GPUが他を圧倒している。これを指揮したDavies氏がMachine Learning Groupを率いているというのは、1つにはGPUをNPU的に使うニーズが多かったからということもあるだろう。しかしどちらかといえば、NPUのマーケットでMali GPUと同様にEthosをトップシェアに押し上げることを期待されているように思われる。
ただし、GPUとNPUで異なるのがソフトウェアのフレームワークである。GPUの場合はOpenGLという標準APIが存在しており、PowerVRでもMaliでもアプリケーションに違いがなかった。ところがNPUの場合はまだこうした標準APIが存在していない。主要なネットワークと、これに対応したフレームワーク(例えばTensorFlowとかCaffeとか)は共通でも、それをNPUで実行させるためのAPIは各社各様である。これが理由で、例えばあるメーカーがこれまで独自NPUを提供してきたものをEthosに切り替えた場合、従来のアプリケーションは全部書き直す必要が出てくる。この非互換性こそが、NPUを乗り換える際の最大の障壁となる。
この障壁を引き下げるための方策こそ、CPU、GPU、NPUで共通に利用できるArmNNというフレームワークということになる。ArmNNに準拠していれば、ArmのCPUでもGPUでもNPUでもそのまま実行できるというのは、ことCPU市場で圧倒的なシェアを持つArmならではのシナリオである。これは特に、次第にAIを利用するものが増えてきたサードパーティーのアプリケーションに対して効果的だ(図3)。
問題は、こうしたサードパーティーのアプリケーションの場合、ほとんどがCPUで実装されていることにある(図4)。加えて言えば、先述した通りそれぞれのスマートフォンに搭載されるNPUは各SoCメーカー独自のものなので、例えばQualcommのNPUに最適化しても、MediaTekやHiSiliconのSoCではそもそも動作しないというわけだ。そうなると最大公約数はCPUでそのまま実行するということになる。
ところが、Arm v8.2-A以上に準拠したCPUであればArmNNが利用できる。最低でもSIMDエンジンの「NEON」を利用しての高速化が可能だし、運が良ければMali GPUを使ってさらなる高速化も可能になる。そしてEthosが搭載されていればさらに性能が向上するというわけで、ArmNNの利用に向けた障壁は相対的に低くなっている。まずはArmNNを普及させ、後追いでEthosを導入させる、というのが現在のArmのAI戦略というわけだ。
Copyright © ITmedia, Inc. All Rights Reserved.