ニュース

Meteor Lakeの内蔵NPU、AI処理の電力効率はCPUの7.8倍

Meteor Lakeに内蔵されているNPU、CPUに比べて性能では倍、電力効率では7.8倍でAI推論が可能に

 Intelは、9月19日(現地時間)よりアメリカ合衆国カリフォルニア州サンノゼ市にあるサンノゼ・コンベンションセンターで、同社の年次イベント「Intel Innovation 2023」を開催する。Intelはその開幕に先立って報道発表を行ない、同社が年内に発表を予定している次世代クライアントPC向けプロセッサ「Meteor Lake」の技術概要を明らかにした。

 この中でIntelは、Meteor Lakeを利用したハードウェアベースのAI推論(画像認識や、生成AIの画像生成、音声認識などの処理)に関する説明を行ない、Meteor Lakeで内蔵させたNPU(Neural Processing Unit)の詳細を説明。このNPUは、同社が買収したMovidiusが開発してきたVPUがベースになっており、低消費電力でAI推論が可能になるなどの特徴を備えている。

CPUに比べてAI推論性能は倍以上になり、電力は4分の1に

内部に2つのエンジンを持つMeteor LakeのNPU

 Intelは昨年(2022年)の8月にイスラエルで開催したイベントで、今年(2023年)にリリースする予定と説明していたMeteor Lakeで、NPUをCPUに統合することを明らかにしていた。

 そして、本年の5月末に台湾で行なわれたCOMPUTEX 2023では、実際にMeteor Lakeを搭載したノートPCを利用して、そのデモを行なっていた。

 今回IntelはそうしたMeteor Lakeに統合されたNPU、そしてCPU、GPUも含めたMeteor Lakeのハードウェアを利用したAI推論環境に関しての説明を行なった。

 Meteor Lakeに統合されているNPUは、Intelが2016年に買収を発表したAI半導体スタートアップ「Movidius」のIP資産がベースになっている。Movidiusは(後に買収したIntelも)VPU(Visual Processing Unit)と呼んでいた、画像認識を低消費電力で高速に行なうSoCを提供しており、買収後もMovidius VPUのブランドで、USBスティックやチップ単体で提供してきた。

 しかし、近年のVPUは「Keem Bay」という開発コードネームの製品が一部のノートPCにNPUとして採用されるようになるなど、IoT向けからPC向けのNPUへと徐々に路線変更がされてきた。

 今回Meteor Lakeに内蔵されたのは、アーキテクチャ的にはそのKeem Bayの発展版となるもので、やはり低消費電力でAI推論が可能になるように設計されている。Keem BayまではVPUと呼ばれてきたが、このMeteor Lakeに内蔵されたものからはNPUと呼ばれることになるため、以下NPUとする。

CPUやGPUのEUに相当する行列演算器のMAC Array、FP16とINT8の精度において1クロックで2,048回の処理が可能
Scratchpad RAMにデータを置いて処理が可能に

 Meteor LakeのNPUは、SoCタイルに内蔵されており、2つのNeural Compute Engineという演算器を持ち、それを活用して、低消費電力にマシンラーニングやディープラーニングの処理を行なうことが可能になっている。

 Neural Compute EngineはFP16とINT8の精度を利用して行列演算できるMAC Arrayと呼ばれる行列演算器を備え、1つのエンジンあたり1クロックサイクルで2,048の処理が可能になっている。また、NPUの内部に「Scratchpad RAM」というローカルメモリ(SRAM)を備えており、そのローカルメモリを利用して演算することが可能になり、SoCタイルにあるメモリコントローラへ頻繁にアクセスしなくても演算が可能な点が特徴だ。

 外部メモリにアクセスしなくていいのがMovidius VPUの特徴で低消費電力である理由の1つだったが、Meteor LakeのNPUもその特徴を引き継いでいるということだ。

Stable Diffusion v1.5、CPUに比べて時間は半分以下で、消費電力は1/4、電力効率は7.8倍になる

 なお、Intelが公開した資料によれば、Stable Diffusion v1.5を利用したベンチマークで、すべてをCPUで処理すると43.3秒だった画像生成の処理が、GPUを利用すると14.5秒、すべてをNPUで処理すると20.7秒になる。ただし、消費電力はCPUが40W、GPUが37W、NPUが10Wとなり、CPUに比較すると性能は倍以上になりながら、消費電力は4分の1になる。電力効率に直すと7.8倍だとIntelは説明している。

OpenVINOやDirectMLを利用して、CPU/GPU/NPUをフルに活用したAI推論アプリの構築をISVに推奨

Intelプロセッサ向けのAIソフトウェアスタック

 Meteor LakeのNPUでは「MCDM KMD」というWindows 11用のデバイスドライバが用意されており、Windowsのタスクマネージャーから演算器として認識される仕組みになっている。

 MCDMとは「Microsoft Compute Driver Model」の略称で、MicrosoftがWindowsのCPUを制御するために用意しているドライバモデルになる。そのモデルの1つとしてNPUが定義されており、Meteor LakeのNPUもWindowsから演算器として認識されているということだ。

MCDM KMDというWindowsのドライバーモデルに対応したデバイスドライバーが用意されており、Windowsのタスクマネージャから負荷などを確認できる
MicrosoftのWindowsでのAIソフトウェア環境に対応、DirectMLなどWindowsのAPIにも対応

 このMCDM KMDを利用して演算するには、IntelがAI推論の開発キットOpenVINO向けのミドルウェアとして用意されている「OpenVINO Interface Engine」がWindowsアプリケーションからのAPIとしての受け口になり、NPU、CPU、GPUの最適な演算器を選択してAI推論演算を行なわせることができる。

 また、同時にIntelはOpenVINO-EPという仕組みを用意しており、これを利用すると、アプリケーションがDirectMLを経由して、GPUないしはNPUでAI推論を行なうが可能になっている。

 DirectMLを利用するよりも、OpenVINOを利用してCPU/GPU/NPUを使う方が性能は高くチューニングできるが、Windows標準の仕組みではないため、開発者は改めてOpenVINOを勉強する必要があるし、ほかのベンダーのNPUやCPUを利用するには別の開発キットを利用する必要がある。

 それに対してDirectMLはWindows標準のAPIであり、DirectMLに対応したアプリケーションを作れば、Intelだけでなく、NVIDIAやAMDなどのGPUやNPU、CPUにも対応することが可能になる。

 ゲーム開発者がゲームを開発する時に、GPUのハードウェアをネイティブに叩いた方が性能は上がるが、それだと開発が複雑になるし、複数のベンダーのGPUに対応するのが面倒なので、みんながDirect3Dを利用している、そうした構図と同じようなものだと考えれば良いだろう。

TeamsはOpenVINO Interface Engineを経由してGPU/NPUを利用して演算
AdobeアプリケーションはDirectML経由でGPUを利用して演算

 Intelによれば、たとえばMicrosoft TeamsはOpenVINO Interface Engineは直接NPUにアクセスする仕組みを採用しているが、AdobeはDirectML経由でGPUを利用してAI推論を行なっているという。今後こうしたアプリケーションは徐々に増えていくと思われ、IntelはISV(独立系ソフトウェアベンダ)に対して、OpenVINOやDirectMLを利用したAI推論アプリケーションの構築を積極的に呼びかけている。

 今回のInnovation 2023で、IntelはOpenVINOの最新版「OpenVINO 2023.1」を発表するなどしており、ハードウェアを活用したAI推論は今回のイベントでの大きなトピックになっていきそうだ。

OpenVINO 2023.1