- 更新日: 2022年05月06日
- 公開日: 2021年04月01日
GPUとは?CPUとはどう違う?利用例についても解説
GPU(Graphics Processing Unit)とは画像処理に特化した演算装置で、グラフィックボードの主要な部品でもあります。
最近は画像処理以外の目的にも使われるため、ますます需要が増しているパーツです。
この記事ではGPUの役割と用途について、わかりやすく解説します。
仮想通貨のマイニングについても簡単に解説しますので、ぜひ最後まで読んでみてください!
CPUとGPUの違い
まずはCPU(中央演算処理装置)とGPU(画像演算処理装置)の違いから解説していきますね。
コンピューターの構成
コンピューターは5大装置から構成されています。
[5大装置の概要]
- 入力装置・・・キーボード、マウス
- 記憶装置・・・メモリー、SSD、ハードディスク
- 演算装置・・・CPU、GPU
- 出力装置・・・ディスプレイ、プリンター、スピーカー
- 制御装置・・・CPU
CPUとGPUはともに演算装置ですが、CPUは制御装置も兼ねており、コンピューターの司令塔にもたとえられます。
コンピューター内部での処理は、キーボードから入力された情報をメモリーに記憶し、演算した結果をディスプレイに出力するという流れです。
制御装置はメモリーからプログラムを読み込み、他の装置に命令を出してコンピューター全体の処理を管理します。
CPUとGPUは具体的にどう違う?
さらにCPUとGPUの違いについて掘り下げていきましょう。
CPUは演算装置と制御装置を兼ねており、さまざまな種類の演算を順番におこなうのに向いています。
たとえばファイルを開いて内容をメモリーに読み込む、保存してファイルを閉じるなど、他の装置を制御して順に処理するのがCPUの役目です。
それに比べGPUはCPUよりもコア数が多く、同じ計算を並行して一気におこなうのが得意です。
コアとはCPUやGPUのなかで、演算処理を実行する部分です。CPUのコア数は2個〜8個程度ですが、GPUのコア数は数千〜一万個となり桁が違います。
ただしCPUとGPUはそもそも役割が違うため、コア数だけで単純には比較できません。
GPUのコア数と画像処理
コア数の違いは、画像処理にどう生きるのでしょうか。
たとえば画像の色を変える処理では、1ピクセルごとに全部の色を変更します。
このとき1ピクセルずつ順番に処理すると長時間かかりますが、コア数の多いGPUで大量のピクセルを平行して処理すれば一瞬で終わるのです。
3DCGの場合も同様で、物体の面をあらわすポリゴン(三角形)の頂点ひとつひとつに対し、一気に並列処理をおこないます。
このようなピクセルや頂点の画像処理には、行列計算を使います。
GPUの利用例
行列計算に強いGPUは最近、画像処理以外にも利用されるようになりました。
画像処理以外の目的で用いるGPUを、GPGPU(General Purpose computing on GPU)と呼びます。
機械学習の処理
機械学習の処理には、大規模な行列計算が必須です。
人工知能の研究では従来、スーパーコンピューターが利用されていました。
しかし日本の研究者によってGPUと機械学習との相性がよいことが発見され、今日ではGPUが多く利用されています。
ただしGPUは画像処理に特化したつくりになっており、そのままでは他の用途に使えません。
そのためアメリカの半導体メーカーであるNVIDIAが、GPUをより汎用的に使うための統合開発環境"CUDA"を開発しました。
現在、機械学習に利用されるGPUのほとんどがNVIDIA製品です。
それに対抗してGoogleは、機械学習に特化した演算処理装置であるTPU(Tensor Processor Unit)を開発し、自社サービスに利用しています。
仮想通貨のマイニング
仮想通貨のマイニングにも、大量の並列演算が必要になります。
ビットコインなどほとんどの仮想通貨に共通するのが、ブロックチェーンと呼ばれるしくみです。
ブロックチェーンでは仮想通貨の取引が、チェーン状につながり管理されています。
この取引(チェーン)に間違いがないことを証明するために、大量の演算が必要なのです。
そのため演算をおこなった人には、報酬として仮想通貨がもらえます。これがマイニングです。
以上のようなしくみにより、仮想通貨のデータは中央にサーバーがなくても、取引をするコンピューター間で分散処理されます。
最近ビットコインが急激に値上がりし、マイニングのために高性能のGPUを搭載したグラフィックボードの需要が増加しています。
GPUの性能をチェックする方法
GPUはマザーボード(メインの基板)か、グラフィックボードに配置されているのが一般的です。
また場合によっては、GPUが搭載されていないコンピューターもあります。
GPUの性能を確認するには、以下のような方法があります。
- Windows・・・DirectX診断ツール、またはGPU-Z(フリーソフト)を使う
- Mac・・・左上のアップルメニューから"このMacについて"を選択する
出典:窓の杜
とくにWindowsの場合はGPU-Zを使えば、上図のように消費電力やGPU利用率、温度など他のツールでは取得できないデータを得ることが可能です。
\Webサイト担当者としてのスキルが身に付く/
まとめ
近年さまざまな用途で利用されている、GPUについて解説しました。
GPUをはじめコンピューターの構成要素を知ることは、プログラミングにおいても重要です。
コンピューター内でのデータの流れを考えてプログラミングすれば、より速く正確なプログラムが組めるようになります。
コンピューターのしくみを知り、プログラミングに興味がわいたらCodeCampで学んでみませんか?
オンラインの体験レッスンがありますので、お気軽にご相談ください。
- この記事を書いた人
- 鳥飼千愛