昨年、2024年はオンデバイスAIの年になるという考察をした。今回は、各社のNPUの性能について触れていく。
各社のAI戦略
AI PCを一番推進しているのはMicrosoftであり、注目されるのはIntelとAMDとQualcommのAI戦略である。基本的にMicrosoftの戦略と独自の戦略を組み合わせてプラットフォームの拡充を図っている。
MicrosoftはChatGPTを提供するOpenAIと提携し、GPTをベースとしたAI機能「Copilot」をWindowsやOffice、Edgeをはじめとした自社の製品に迅速に組み込んでいる。実際、Microsoftのこの動き方は非常に迅速であり、CopilotはMicrosoftとWindowsの重要な成長戦略にまで至っている。
IntelやQualcommは、以前からのAIソフトウェアの資産を基にAIの展開を急ぎ、AMDはソフトウェア面で出遅れているものの「Ryzen AI Software」の提供によって、開発支援を進める計画だ。
NPUの展開が一気に進む中で、WindowsとしてもAIの受け皿をしっかりと展開している。Windows 11はOSとしてAIのハードウェアアクセラレートをサポートしている。さらに、DirectMLやWindowsMLといったAPIを用意しており、ソフトウェアを横断してAIを活用できるような環境が整いつつある。そして、同社のこの1年の動きから分かる通り、おそらくMicrosoftはAIの展開に対して、クラウド・コンシューマーの両方で的確な動きを見せるだろう。そうなれば、Windows全体としてAIのプラットフォームが構成されていく。
では、Appleはどうだろうか。
Appleは、iOSで培ったAI機能をmacOSにも投入している。この点では、Windowsよりも遥かに以前からAI機能が導入されていると言える。更にプラットフォームとしても、ML Coreを始めとしたAI向けのAPIも成熟している上、そういったAPIを利用したアプリがWindowsと比べて多い。
ハードウェア面では、「iPhone X」「iPhone 8」に搭載された「Apple A11 Bionic」で初めて「Neural Engine」が導入された。Neural Engineは、他社でいうNPUにあたる機械学習のアクセラレータである。Apple A12 Bionic以降ではサードパーティ向けのアプリにも利用できるようにされ、そのままApple M1にも搭載された。
このNeural Engineが今回の本題である。
Neural Engine
Neural Engineは、基本的に世代が同じであれば規模も同じで投入されてきた。例えば、iPhoneに採用された「Apple A14 Bionic」と、Macに採用された「Apple M1」「Apple M1 Pro」「Apple M1 Max」に至るまで、基本的には11 TOPSという性能は変わらない。
同じく「Apple A15 Bionic」と世代を共有する「Apple M2」ラインナップも、15.8 TOPSで共通している。
一方で、「Apple M3」と「A17 Pro」だけはそういう訳では無い。
Apple M3はGPUの機能的に見ても、プロセスルール的にみてもA17 Proとアーキテクチャを共有していることに間違いないが、Neural Engineだけはなぜか性能に大きな差がある。しかもA17 Proのほうが高い。上のグラフはAppleのニュースリリースから引用しているが、もしA17 ProであればM2からは2倍以上の性能向上となるはずだ。
このグラフを見ていただければわかるだろうか。M1とA14が同世代、M2とA15が同世代、M3とA17が同世代であり、A16だけが独立した世代となっている。
再度確認しておくが、M3はAppleからの公式な言及は無いもののA17 Proをベースにしていると見られている。レイトレやメッシュシェーディングをサポートしたGPU、AV1デコーダをサポートしたMedia Engine、そもそも製造プロセスが同じなどの要因がそれを裏付けている。
ただ、Neural Engineの仕様のみを見るとApple A16とかなり似た性能となっている。なぜA17 Proと同等の性能をM3にも実装しなかったのだろうか。
TOPSとは、Tera-Operation Per Secondsであり、1秒あたりの演算実行数を示している。1 TOPSは1秒間に1兆回の演算を実行可能。
Apple M3
M3のAI性能が落とされている理由を考察する。
まず考えられる可能性としては歩留まり対策の可能性。Apple M3はTSMC 3nmを利用して製造されているが、先端のプロセスということもあり歩留まりがあまりよろしくない。となれば、ダイサイズを小型化することでどうにか歩留まりを良くするためにNeural Engineを削った可能性が高い。今回、GPUがかなり大きな面積を占めている可能性が高いため、Neural EngineをA17世代ではなくA16世代のものにしてダイサイズを抑えた可能性がある。
M3の進化の中心はGPUであり、AppleとしてはNeural EngineよりもGPUの進化を優先した可能性が高い。
影響は?
2024年は確実にオンデバイスAIが競争力に影響する。プロセッサを測る尺度には「CPU性能」「GPU性能」「電力効率」に加えて「NPU性能」あるいは「AI性能」も重視されることになるだろう。
Apple M3のNeural Engineの性能は単体で18 TOPSである。これは、AMDの「Ryzen AI」や「Intel AI Boost」と同じ程度のAI性能となる。実際にAIを利用するのであれば、CPU・GPU・NPUを組み合わせて利用することでより高い性能を発揮するのだが、この性能についてはAppleは明らかにしていない。なので、単純にNPU単体の性能で比較すると、次のグラフの様になる。
性能としてはIntelやAMDよりも性能が高く、Qualcommよりは性能が低いという事になっている。M3でもIntelやAMDと同程度の性能があることから、AI性能で見劣りすることはない。
では、これがどのように影響するかを考える。
まず、プロセッサにはNPU以外にCPUとGPUがあるため、NPUの性能だけが競合に影響するわけではない。特にApple Siliconの場合、Windows自体との競合もあるため、一概にApple SiliconのNPU性能が低いから今年はMacは劣勢とすることはできない。
特にAppleの場合、Neural EngineをIntelやAMDよりも遥かに早くから搭載していることもあり、Core MLをはじめとしたプラットフォームは成熟しており、Windowsに比べて機械学習を用いた機能を持つアプリケーションは比較的多い。この点では、Windows市場よりもAIの許容度が高いため大きな利点となる。
Appleは機械学習を長らく活用している一方で、生成AIを中心とした第3次AIブームに乗り切れていないのでこれは大きな課題である。ChatGPTが流行した際、MicrosoftはすぐにOpenAIとの提携を発表し、瞬く間に自社製品にAIを統合した。この動きは非常に高速であったため、Windowsが生成AIの活用で大きくリードした(定着したかどうかは別として)。Appleも生成AIの研究を勧めており、WWDC 23ではTransformerを活用した機能がmacOS・iOSにいくつか導入された。ただ、The「生成AI」を活用した技術はSiriにも導入されていない。そのため、AppleはNPUの性能よりも、AI関連機能を活用するのが重要となる。
今後の展望
Appleはやはり生成AI機能をOSで提供することが先決となる。特にAppleはすでにプラットフォームがかなりAIの許容度が高いと見られるため、それを維持できるかが課題だ。
そして、Apple M4には35 TOPS以上のNeural Engineを搭載し、そしてGPUの性能を高めることも重要だろう。