そんなCPUやGPU、NPU、TPUの違いをGoogleやクラウドストレージサービスを展開するBackblazeがまとめているのでご紹介したい。
◆CPUとは
CPUは「Central Processing Unit」の略称で、PCでの文書作成やロケットの進路計算、銀行の取引処理など多様な用途に用いられている。
CPUでも機械学習を行うことは可能だが、CPUには「計算の度にメモリにアクセスする」という特徴があり、機械学習に必要な大量の計算を実行する際はメモリ通信速度がボトルネックとなって処理速度が遅くなってしまう。
◆GPUとは
GPUは「Graphics Processing Unit」の略称で、GPUやメモリ、入出力機器などをセットにしたグラフィックスボードが市場に広く出回っている。
GPUには算術論理演算ユニット(ALU)が数千個搭載されており、「大量の計算を同時に行う」という処理を得意としていることから、CPUと比べて圧倒的に高速な機械学習が可能。
しかし、GPUはゲームやCG処理などにも活用できる汎用(はんよう)チップであるため、機械学習専用に設計されたチップと比べると効率が劣る。
◆NPUとは
NPU「Neural Processing Unit」や「Neural network Processing Unit」の略装で、GPUと同じく「大量の計算を同時に行う」という処理に特化している。
加えて、NPUは機械学習に専用設計されたチップであるため、GPUよりも効率的に処理を実行が可能。
一方でNPUは機械学習専用設計チップであるため、CPUやGPUのように多様な用途に用いることはできない。
近年登場しているスマートフォンにはNPUを搭載しているものも多く、iPhoneシリーズには「Neural Engine」という名称で搭載されている他、NPUを搭載したモデルが存在しているようだ。
◆TPUとは
TPUは「Tensor Processing Unit」の略称で、Googleが開発したNPUの一種。
Googleはクラウドコンピューティングサービス「Google Cloud」を介してユーザーにTPUの処理能力を提供しており、ユーザーは自身の手元にハードウェアを用意せずとも機械学習関連の処理を高効率で実行できる。
【このカテゴリーの最新記事】
-
no image