GPUとGPGPUとは?CPUとの違いとAI・並列処理での使われ方

結論:GPGPUは、GPUを画像表示だけでなく、画像以外の大量計算にも使う考え方です。GPUは演算を担うプロセッサ、GPGPUはそのGPUを汎用計算へ活用する使い方であり、部品名と利用方法を区別することが重要です。

目次

GPGPUとは何か

GPGPUはGeneral-Purpose computing on GPUの略で、GPUの並列計算能力を、科学技術計算、機械学習、シミュレーションなどに利用します。画素の色を計算するように、同じ形の演算を多くのデータへ繰り返す処理では、複数の演算器を同時に使いやすくなります。GPUとGPGPUを問う設問では、GPUそのものか、GPUを画像以外の計算に使うかを読み分けます。

GPU・GPGPU・CPUの役割を比較する

用語 何を指すか 得意な場面
GPU 多数の演算を並行して処理するプロセッサ 画像・映像の描画など
GPGPU GPUを汎用計算に使う考え方 行列計算、AI、シミュレーションなど
CPU 処理全体の制御を担う汎用プロセッサ 条件分岐、順序のある処理、入出力の制御

GPGPUはCPUを不要にする技術ではありません。CPUが処理の流れ、データの受け渡し、分岐の判断を担い、並列に分けやすい計算をGPUへ渡す分担を考えます。前の結果を待たなければ次へ進めない処理や、条件分岐が多い処理は、GPUへ移すだけで速くなるとは限りません。

ITパスポート試験での見分け方

「画像を描く装置」「多数の画素を処理する装置」であればGPUが中心です。「画像以外の数値計算やAIの学習にGPUを利用する」であればGPGPUを選びます。CPUとの違いは、CPUが何でも高速という意味ではなく、処理の制御や複雑な判断に対応する役割を持つ点です。用語の略称ではなく、対象と目的から判断しましょう。

仕事での具体例

物流会社が配送量の予測モデルを更新するとき、同じ計算を多くのデータ行に繰り返す部分をGPUで処理する設計を検討します。担当者は「GPUを使うか」だけで決めず、学習データの量、並列に分けられる計算か、CPU側で必要な前処理は何かを確認します。ここでのGPGPUは、画像処理専用と思われがちなGPUを予測計算へ使う判断です。

日常生活での具体例

写真編集アプリのAIノイズ除去では、多数の画素へ似た計算を繰り返す処理が使われます。表示用の描画だけでなく、画像を改善する計算へGPUの演算能力を使う場合は、GPGPUの考え方で理解できます。利用者は部品を意識しませんが、「画面を表示するGPU」と「画像以外の計算にGPUを使うGPGPU」を区別する練習になります。

確認問題

問題:GPUを、気象シミュレーションの大量計算に利用する考え方は何ですか。

答え:GPGPUです。GPUという装置を、画像表示以外の汎用計算へ利用しているためです。

問題:複雑な条件分岐や処理順の制御を主に担うプロセッサは何ですか。

答え:CPUです。GPUとGPGPUは、並列に分けやすい計算をどう処理するかという観点で区別します。

次に読む関連記事

まとめ

GPGPUはGPUそのものの別名ではなく、GPUを汎用の並列計算へ使う考え方です。装置、利用目的、CPUとの役割分担を分けて覚えると、設問の表現が変わっても判断できます。

目次