AIの出現により、新しいタイプのコンピューターチップがますます使われるようになるだろう。CPU、GPU、そして最近ではNPUという言葉を聞いたことがあるだろう。これらの異なるコンピューティング・ユニットの違いと、その最適な使い方を紐解いてみよう。その前に、歴史のお勉強を。
(クレジット:インテル)
1960年代に初めて登場したCPU(中央演算処理装置)は、すべてのコンピュータの心臓部であり、すべての基本的な操作を実行する役割を担っている。汎用性が高く、さまざまな命令や操作を処理できるように設計されているため、オペレーティング・システムや生産性ソフトウェア、その他多くの汎用アプリケーションを実行するのに理想的です。しかし、最初の3Dビデオゲームや高度なグラフィックス・アプリケーションの出現により、CPUの限界が明らかになりました。汎用コンピューティング用に設計されたCPUのアーキテクチャは、グラフィックスを多用するアプリケーションや科学シミュレーションで必要とされる大規模な並列処理には最適化されていなかったのだ。
しかし、グラフィックスを多用するアプリケーションや科学シミュレーションで必要とされる大規模な並列処理の需要が高まるにつれ、CPUや演算コプロセッサの限界が明らかになった。このため、1990年代にグラフィックス・プロセッシング・ユニット(GPU)が開発され、瞬く間に大量のデータの並列処理に特化した不可欠な存在となった。GPU(統合型グラフィックス・チップまたはスタンドアローン・グラフィックス・カードとして利用可能)は、複数の演算を同時に実行できる数百から数千の小型の専用コア(ALU:Arithmetic Logic Units)で構成されており、グラフィックスのレンダリングや、最近ではディープラーニング・モデルの学習と展開に理想的なものとなっている。
ここ数年、ニューラル・プロセッシング・ユニット(NPU)と呼ばれる新しいカテゴリーが登場した。演算コプロセッサやGPUが浮動小数点演算や大量データの並列処理を高速化してきたのに対し、NPUは画像認識、自然言語処理、機械学習などの人工知能(AI)や機械学習(ML)のワークロードに不可欠な行列の乗算や加算を効率的に処理するように設計されている。
実際には、CPU、GPU、NPUはすべて最新のコンピュータの動作に不可欠なものだが、それぞれが異なるタイプの計算やレンダリングに最適化されている。それを分解してみよう。
あらゆるコンピューティング・デバイスの中心にあるのがプロセッサであり、しばしばシステムの「頭脳」と呼ばれる。複雑な意思決定を必要とするアプリケーションやタスクを管理するために設計されたアーキテクチャのおかげで、その多用途性と汎用コンピューティング能力で知られています。
強み
弱点
もともとはビデオゲームのグラフィックスをレンダリングするために設計されたGPUは、ディープラーニングや画像処理など、他の追随を許さない並列処理能力でAIのゲームを変えた。
CPUとは異なり、GPUは何千もの計算タスクを同時に並列処理することに優れており、複雑なニューラルネットワークの訓練や運用に不可欠だ。
強み
弱点
(出典:インテル)
AIイノベーションの探求において、NPU(ニューラル・プロセッシング・ユニット)という新たなプレーヤーが登場した。ニューラルネットワークの計算を高速化するためにゼロから設計されたNPUは、ディープラーニングやAIワークロードの需要に対応するように設計されています。NPUは、ハードウェアとソフトウェアの最適化により、比類ないパフォーマンスと電力効率を実現します。
強み
弱点