ニュース
ARM、「Cortex-A75」にFP16のNEON命令を追加。マシンラーニング時の演算性能を引き上げ
新しいCPUとGPUのIPデザインとなる「Cortex-A75/A55」「Mali-G72」発表
2017年6月13日 00:00
- 2017年5月30日~6月3日(現地時間)開催
半導体デザインを提供するARMは、5月30日~6月3日(現地時間)に開催された「COMPUTEX TAIPEI」の前日となる5月29日に記者会見を開催し、同社が開発してきた新しいCPUとGPUのIPデザインとなる「Cortex-A75/A55」「Mali-G72」の3製品を発表した。この中でARMは、新しいCPUとGPUが、ディープラーニングを含むマシンラーニング向けの演算に対応する新しい機能を追加していると説明し、今後登場するエッジAI向けのSoCで、CPUやGPUを利用したより効率のよい演算が可能になると説明した。
ARMによれば、Cortex-A75では同社が提供しているSIMD型の演算命令セットとなるNEON(ネオン)に新しくFP16(16ビットの浮動小数点演算)を利用した演算命令が追加されており、これを利用することで従来製品よりも効率よくディープラーニングを含むマシンラーニングを演算することが可能になっている。
新技術となるDynamIQに対応したCortex-A75/A55、非対称big.LITTLEや機能安全が実現可能に
ARMがCOMPUTEX TAIPEIで発表したのはCortex-A75、Cortex-A55というCPUと、Mali-G72と呼ばれるGPUで、今後それぞれのIPデザインを同社の顧客となる半導体メーカーにライセンス提供していく。
Cortex-A75は、2016年にARMが発表したハイエンド製品となるCortex-A73の後継となるハイエンドCPUとなり、Cortex-A55はbig.LITTLE(ARMのCPUコアを、big=高性能コア、LITTLE=低消費電力コアという2種類を切り換えて省電力を実現する機能)で省電力側のCPUとして提供されているCortex-A53の後継製品になる。
Mali-G72は、同じく2016年に発表されたMali-G71の改良版となる製品で、基本的なアーキテクチャはMali-G71のそれを引き継いでいるが、性能が引き上げられている。
新しいCPUとなるCortex-A75とCortex-A55の大きな特徴は2つある。1つは3月にARMが技術概要を発表したDynamIQ(ダイナミック)に対応していることで、もう1つがディープラーニングを含むマシンラーニングへの最適化が進められていることだ。
DynamIQはCPUやGPU、そしてアクセラレータなどの配置を最適化することで、レイテンシなどを削減し、SoC全体の性能やセキュリティを向上させる技術の総称だ。例えば、CPUの場合はクラスターと呼ばれるSoCの内部に配置するCPUコアのブロックが、2つや4つといったあらかじめ決まったルールに従ってデザインしなければいけなかったのだが、DynamIQに対応したCPUでは、1コアから8コアまでスケーラブルに1つのクラスターとして使うことができる。
これにより従来はbig=4コア、LITTLE=4コアのように柔軟性はあまりなかったのだが、DynamIQに対応したSoCではbig=1コア、LITTLE=7コアのような非対称なデザインも可能になる。
また、DynamIQによりセキュリティ性が向上するのがもう1つの特徴。DynamIQに対応したSoCはASIL DとSIL-3を実現可能で、機能安全の実現に大いに役立つ。Cortex-A75とCortex-A55を搭載した製品を、自動運転向けの半導体として販売する場合には、このことは大きな意味を持ってくる。
NEON命令でFP16に対応して、マシンラーニング時の演算性能を引き上げる
これらの新しいCPUのもう1つの大きな特徴が、マシンラーニングへの最適化が進められていることだ。ARM副社長 兼 コンピュート製品事業本部 事業本部長のナンダン・ナヤンパリー氏は、「Cortex-A75では固定機能のアクセラレータがなくともマシンラーニング時の性能を引き上げられるような工夫をしている。具体的にはNEONでマシンラーニングをサポートする機能を入れていたが、新製品ではそれに加えてNEONでFP16で演算できる仕組みを追加している」と説明する。
同社がSIMD型の演算命令として提供しているNEON(ネオン)命令における浮動小数点演算では、それまではFP32と呼ばれる32ビット幅のデータセットのみがサポートされてきた。しかし、マシンラーニングではそこまでの精度を必要としない場合が多く、半分のFP16(16ビットの浮動小数点演算)で演算した方が効率よく演算できることが多い。そこでNEON命令を拡張し、今回のCortex-A75からそれが提供されているとナヤンパリー氏は説明した。
ただし、それはARMがマシンラーニングやディープラーニングなどに特定のアクセラレータが必要ないということではないとナヤンパリー氏は説明する。「どのような構成にするかは我々の顧客次第だ。CPUやGPUだけで必要だと思うところもあるだろうし、そうではないところもあるだろう。今回の製品ではDynamIQに対応することで、CPUとアクセラレータのレイテンシを削減できており、トータルで性能を引き上げることが可能になるだろう」と述べ、ARMとしては特定のマシンラーニング向けアクセラレータというのを現時点では提供していないが、顧客がそれを実装することは歓迎すると説明し、そのためにDynamIQを導入したのだと説明した。
ナヤンパリー氏によれば、今回追加されたFP16への対応は、ARMが顧客や開発者向けに提供しているNEONの開発セットとなる“NEONライブラリ”でサポートされる予定で、既存のプログラムはそれを利用して修正することでFP16を利用した演算が可能になる。ただし、現時点ではCortex-A75などのFP16に対応したCPUがまだ市場には存在していないために、今後リリースされる将来のバージョンで利用可能になるということだった。
現在半導体メーカー各社は、自動運転車などのエッジAI(端末や自動車などにAIの機能を搭載すること)向けの半導体の開発を急いでおり、FP16のNEON命令に対応したCortex-A75はエッジAI向けのCPUとして注目の存在になりそうだ。