
ニューラル処理ユニット(NPU )は、 AIアクセラレータまたはディープラーニングプロセッサとも呼ばれ、人工知能や機械学習アプリケーション(人工ニューラルネットワークやコンピュータビジョンなど)を高速化するように設計された特殊なハードウェアアクセラレータ[ 1 ]またはコンピュータシステム[ 2 ] [ 3 ]の一種です。NPUはスタンドアロン、CPUの一部、またはGPUの一部となることができます。
それらの目的は、 LLM (推論)などの既に訓練されたAIモデルを効率的に実行すること、またはAIモデルを訓練することです。NPUは、速度または消費電力の点でより効率的になる可能性があります。[ 4 ]
NPUアプリケーションには、ロボット工学、モノのインターネット、データ集約型またはセンサー駆動型タスク向けのアルゴリズムが含まれます。 [ 5 ]これらは多くの場合、マルチコアまたは空間設計であり、低精度演算、斬新なデータフローアーキテクチャ、またはインメモリコンピューティング機能に重点を置いています。 2024年現在広く使用されているデータセンターグレードのAI集積回路チップであるNvidia H100 GPUには、数百億個のMOSFETが含まれています。[ 6 ]
AIアクセラレータは、 Appleシリコン、Qualcomm、Samsung、Huawei [ 7 ]、およびGoogle Tensorスマートフォンプロセッサ[ 8 ]で使用されています。グラフィックスレンダリング用のGPUの一部として使用される場合、GPUの従来の部分でシーンをはるかに低い解像度とフレームレート(たとえば、540p、30fps )でレンダリングし、NPU上の事前学習済みAIモデルを使用してその基本画像をリアルタイムでより滑らかで高解像度の出力(たとえば、2160p、240fps)に変換することで、リソース使用量を大幅に削減できます 。
ビジョン処理ユニットは、CNN(畳み込みニューラルネットワーク)やSIFT(スケール不変特徴変換)などのマシンビジョンアルゴリズムに特化したアクセラレータです。ARヘッドセットやドローンなど、物体を視覚的に追跡する必要のあるデバイスで使用されます。[ 9 ] [ 10 ] [ 11 ]
最近では(2017年頃)、Appleのプロセッサ[ 12 ]、そして(2022年頃)、Intel [ 13 ]とAMDのプロセッサ[ 14 ]にも搭載されています。Intel Meteor Lakeプロセッサのすべてのモデルには、コンピュータビジョンとディープラーニングの推論を高速化するための汎用プロセッサユニット(VPU)が内蔵されています。[ 15 ]
コンシューマー向けデバイスでは、NPUは小型で電力効率が高く、小規模モデルを実行する際に十分な速度を発揮するように設計されています。そのため、INT4、INT8、FP8、FP16などのデータ型を使用した低ビット幅演算をサポートするように設計されています。一般的な指標は、1秒あたりの演算回数(TOPS)です。TOPSは演算の種類を明示的に指定していませんが、通常はINT8の加算と乗算です。[ 16 ]

アクセラレータはクラウドコンピューティングサーバーで使用されています。たとえば、 Google Cloud Platformのテンソル処理ユニット(TPU) [ 17 ]やAmazon Web ServicesのTrainiumおよびInferentiaチップ[ 18 ]などです。このカテゴリのデバイスにはベンダー固有の用語が多数存在し、支配的な設計のない新興技術です。
2010年代後半以降、NvidiaやAMDなどの企業が設計したグラフィックス処理ユニットには、低精度行列乗算演算専用の機能ユニットという形で、AI専用のハードウェアが搭載されることが多くなっています。これらのGPUは、トレーニングと推論の両方において、AIアクセラレータとして一般的に使用されています。[ 19 ]
NPUは低精度(FP16、INT8など)の行列乗算演算に特化していますが、科学計算ではより高精度の行列乗算をエミュレートするために使用できます。最新のGPUはNPU部分の高速化に重点を置いているため、NPUでエミュレートされたFP64(Ozakiスキーム)を使用すると、ネイティブFP64を上回る可能性があります。これは、NVIDIA TITAN RTXでFP16エミュレートFP64を使用した場合と、NVIDIAコンシューマーGPUおよびA100 GPUでINT8エミュレートFP64を使用した場合に実証されています。コンシューマーGPUはFP64ハードウェア容量が限られているため特に恩恵を受け、6倍の高速化を示しました。[ 20 ] CUDA Toolkit 13.0 Update 2以降、cu BLASは、ネイティブよりも高速な場合は、同等の精度のINT8エミュレートFP64行列乗算を自動的に使用します。これは、バージョン12.9で導入されたFP16エミュレートFP32機能に加えてのものです。[ 21 ]
オペレーティングシステムや上位ライブラリは、TensorFlow with LiteRT Next(Android)、CoreML(iOS、macOS)、DirectML (Windows)などのアプリケーションプログラミングインターフェース(API )を提供する場合があります。学習済みニューラルネットワークの表現には、 ONNXなどのフォーマットが使用されます。
コンシューマー向けCPUに統合されたNPUは、ベンダー固有のAPIを介してアクセスできます。AMD(Ryzen AI)、Intel(OpenVINO)、Appleシリコン(CoreML)、[ a ]、Qualcomm(SNPE)はそれぞれ独自のAPIを持っており、上位レベルのライブラリでそれを基盤として構築できます。
GPUは一般的に、CUDAやOpenCLといった既存のGPGPUパイプラインを、低精度演算や特殊な行列乗算演算向けに最適化して利用している。Vulkanも使用されている。Google TPUのような独自開発システムは、プライベートインターフェースを使用している。
AI分野では、多数の個別の基盤となるアクセラレーションAPIとコンパイラ/ランタイムが使用されており、多くの組み合わせが関係するため、ソフトウェア開発の労力が大幅に増加しています。2025年現在、オープン標準化団体であるKhronos Groupは、必要な作業量を減らすために、AI関連のインターフェースの標準化に取り組んでいます。Khronosは、OpenCLとVulkanにおけるデータ型と固有操作の拡張、 SPIR-Vへの計算グラフの組み込み、ニューラルネットワークを記述するためのNNEF /SkriptNDファイル形式の3つの分野で活動しています。[ 22 ]
{{cite web}}: CS1 maint: url-status (リンク){{cite web}}: CS1 maint: url-status (リンク){{cite web}}: CS1 maint: url-status (リンク){{cite web}}: CS1 maint: url-status (リンク){{cite web}}: CS1 maint: url-status (リンク){{cite web}}: CS1 maint: url-status (リンク){{cite web}}: CS1 maint: url-status (リンク){{cite web}}: CS1 maint: url-status (リンク)