Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
NPU わからん すごい広島575 with IT初心者の会 86 LTDD 2024-5 #3 @tsuda_ahr
Slide 2
Slide 2 text
お題 • NPU さっぱりわからん、って話をします。 • 知っている人だれか教えてください(汗
Slide 3
Slide 3 text
最近 AI PC が云々という話がありました https://forest.watch.impress.co.jp/docs/news/1593182.html
Slide 4
Slide 4 text
AI (=人工知能/Artificial Intelligence) PC ってなんぞ? • NPU を搭載した PC らしい?
Slide 5
Slide 5 text
NPU って? • AI処理に特化したユニット? • Neural network (神経組織ネットワーク?) Processing Unit? • そもそも AI 処理って何よ? https://atmarkit.itmedia.co.jp/ait/articles/2405/20/news015.html
Slide 6
Slide 6 text
そして TOPS って何? • CPU や GPU では TOPS という指標はない。 • てら・オペレーション毎秒、らしい。 • 40TOPS = 40×1012 (40兆回) 演算/秒 • なんて読むの?(テラ・オーピーエス? それともトップス?テラ・オップス?) • 参考 • TFLOPS … てら・ふろっぷす • MIPS … みっぷす/みぷす
Slide 7
Slide 7 text
CPU とかでは FLOPS という指標がある。 CPU コア数 TFLOPS Core i9(Alder Lake) P8/E8 1.18 Xeon Phi (Knights Landing) 72 3.917 GeForce RTX 4090 16384 単精度:82.58 倍精度: 1.29 https://ja.wikipedia.org/wiki/FLOPS • FLOPS = 浮動小数点・オペレーション毎秒 • 1秒当たりの浮動小数点演算実行回数。 • TOPS とは違う。
Slide 8
Slide 8 text
結論 • よくわからん(汗
Slide 9
Slide 9 text
ところで唐突ですが、 • コプロセッサ?(らしきもの?)の歴史を話してみます
Slide 10
Slide 10 text
FPU (FPP) • 浮動小数点演算ユニット • 登場当初は CPU とは別のチップだった • 浮動小数点演算をハードウェアで行う。 (これがないと、当時の CPU は整数演算しかできなかった) CPU FPU https://commons.wikimedia.org/wiki/File:I386DX-25_IV_SX543_%2B_i387DX_16-33.jpg
Slide 11
Slide 11 text
SIMD (Single Instruction, Multiple Data streams) • 一つの命令で複数の演算を同時に実行する拡張 • MMX Pentium (P55C) から実装 • SSE 以降、浮動小数点演算に対応 (Pentium Ⅲ) • 現在は AVX-512 命令で最大 16 の単精度実数演算が可能。 ※これはコプロじゃないんじゃ?という批判はスルーします(汗 以下同様。
Slide 12
Slide 12 text
GPGPU (General Purpose computing on Graphics Processing Units) • グラフィック用のプロセッサを汎用演算でも使用できるようにした。 • CPU に比べて圧倒的なコア数を実装。 • こいつもよくわからん(汗
Slide 13
Slide 13 text
NPU • ニューラル(ネットワーク)プロセシングユニット。 • 名前が無駄にかっこいい。 • しかしできることは、低精度(FP8やINT4)の行列演算。 • ひとつの演算だけをみると、8bit CPU 以下の演算能力しかなさそう(汗
Slide 14
Slide 14 text
その他 • 以下については時間の都合で省略(汗 • FPGA • DSP • トランスピューター
Slide 15
Slide 15 text
CPU/GPU と NPU の違い • 省電力志向。 • CPU に統合。 • CPU に比べて、並列数が膨大? • GPU は高精度浮動小数点演算に対応しているが、NPU は低精度に注力?
Slide 16
Slide 16 text
ChatGPT に違いを聞いてみた • GPU • 学習に使用 • より高い精度の演算が必要 • FP32(単精度実数/有効桁7桁弱)あたりを使用らしい。 • NPU • 推論に使用 • 学習ほど高い精度は必要ない • INT8(8bit整数/-128~127?/C言語の char 型相当?)あたりを使用らしい。
Slide 17
Slide 17 text
なのかどうかは知らないが • NPU は GPU に比べて、10倍処理能力は高くなり、消費電力は1/5で済 むらしい。 https://pc.watch.impress.co.jp/docs/news/event/1504066.html
Slide 18
Slide 18 text
ということで、誰か NPU とは何かを教えてください(汗 • こちらからは以上です。