宇宙誕生の少し前から宇宙終焉の少し先までを数で表す論文

この宇宙を数で表すことは出来るのか。

第3−10節 GPUが得意・不得意な処理

GPUが得意・不得意な処理

GPUは万能な計算機ではありません。
その設計思想を理解すると、
得意な処理と不得意な処理
がはっきり分かれます。

GPUが得意な処理

GPUが最も力を発揮するのは、
同じ処理を大量のデータに適用する
場合です。

  • 画像・映像処理(フィルタ、変換)
  • 3Dグラフィックス描画
  • 行列演算・ベクトル演算
  • 機械学習(ニューラルネット)
  • 物理シミュレーション

これらはすべて、
高いデータ並列性
を持っています。

GPUが苦手な処理

一方、GPUは
制御が複雑な処理
を苦手とします。

  • 分岐が多い処理(if / switch)
  • データ依存の強い逐次処理
  • 小さなデータを少数回処理
  • 頻繁なメモリ確保・解放

ワープ内で分岐が発生すると、
実行が直列化
されてしまいます。

CPUとの役割分担

実際のシステムでは、
CPUとGPUは
役割分担
して使われます。

  • CPU:制御・分岐・管理
  • GPU:大量データの演算

CPUが司令塔となり、
GPUが演算部隊として動きます。

FPGAとの違い

FPGAは、
処理そのものを
専用回路として構成
できます。

そのため、

  • 低レイテンシ
  • 決定論的動作

が求められる用途では、
GPUよりFPGAが選ばれる場合もあります。

まとめ

GPUは
並列性の高い演算を高速に処理する装置
です。

CPU・GPU・FPGAを
適材適所で使い分けることが、
現代の計算機設計の基本です。