さて、第3弾が、2018年3月に中国で発表された「Mali-G52」である。Mali-G52というのは、同社にとって第3世代である「Bifrost」というアーキテクチャを持つGPUのミドルレンジにあたる製品であるが、Bifrostそのものが第2世代に進化し、
といった拡張がなされた(図5)。
実はBifrostアーキテクチャの最大の特徴がSIMDからの決別で、それまでの「Midgard」アーキテクチャ(Mali-Tシリーズに採用)はSIMD的に処理を行っていたが、Bifrostアーキテクチャでは処理そのものはSISDで、ただし同時に複数のThreadを並列動作させられる仕組みを取り込んでいた。なので第2世代Bifrostはちょっと先祖がえりした印象を受ける。
もともと第1世代では、かたくなに「ML向けの機能拡張は(Bifrostに)取り込まない」としていたのに、ここにきて方針変更した理由については「プレミアムモバイルであれば、ML向けのアクセラレータを余分に追加するためのSilicon Budgetがある。なのでこうしたハイエンド向け(Mali-G71など)では、別にML向けの機能は要らない。しかし(Mali-G52のターゲットとなる)メインストリーム向けでは、コストに対する要求が非常に厳しいので、アクセラレータ追加によるSilicon Area増加が容認されない。そのために、われわれはGPUにML向けの機能拡張を盛り込んだ」という返事であった。
ちょっとここで翻って、Arm ML Processorの性能を見直してみたい。例えば最大で4.6TOPs/secという数字が出ているが、これは実はあまり大きな値ではない。2018年1月にvideantisが発表した「v-MP6000UDX」というAIプロセッサ、簡単なレビューはこちらにもあるが、1コアに64のMACユニットが搭載され、これが最大256コアまでスケールできるので、最大16384MACs/cycleの性能である。これが例えば1GHzで駆動されれば、16.4TOPs/secという事になるわけで、これに比べるとやや4.6TOPs/secはやや控えめといっても良い。
さらにいうならば、推論用としてはそこそこに使える数字だと思うが、学習用には明らかに足りない。例えばNVIDIAの「Tesla V100」は通常の数値演算だと単精度14TFlops、倍精度で7TFlopsという性能だが、AI向けに搭載されたTensor Coreを利用すると112TFlopsの性能を発揮するとされている。実際にはデータセンターに、このTesla V100が数千個並んでいることを考えると、いかにIPなのでスケーラブルに数を増やせるとはいっても、せめて一桁性能を上げないとちょっと足りないことになる。
では効率は? というと、そのTesla V100は112TFlops/250Wなので0.448TFlops/Wとなって、3TOPs/Wには遠く及ばないが、これはデータセンター向けだからある意味当然でもある。こちらに関してはちょうど手頃な競合製品の数字が見当たらない(AI向けIPベンダーはいずれも消費電力の数字を出していない)が、例えばCEVAの「NeuPro」というAI向けプロセッサの元になった「CEVA-XM6 DSP」については、TSMCの20nmプロセスで製造した690MHz駆動のコアを利用した場合で、NVIDIAの「Jetson TX1」より25倍効率が良い、としている。
Jetson TX1は最大15W、通常は10W前後の消費電力で1TFlopsの演算性能を持つGPUなので、つまりCEVA-XM6で1.7〜2.5TFlops/Wと推定できる。恐らくTSMCの16FF+とかを使うと、ほぼ3TFlops/W程度まで引き上げるのは難しくないだろうし、そう見るとそれほど効率も抜きん出て高い訳ではない事が分かる。
ちなみにMali-G52を使うとどうか。ARMの説明によればTSMCの16nmプロセスを利用した場合、最大850MHz駆動が可能という話である。構成的には1つのMali-G52コアに3つのExecution Engineが実装可能で、これが4コアだから最大12 Execution Engineである。これをフルに利用すると326.4GOps/sec程度で、ML Processorのピーク性能よりもさらに一桁落ちることになる。
Copyright © ITmedia, Inc. All Rights Reserved.