GPUとは | CPUとの違い・ディープラーニングとの関係

このエントリーをはてなブックマークに追加


近年さまざまな場面で活用が進むディープラーニングですが、ディープラーニングは莫大な計算量を必要とします。そこでGPU(Graphics Processing Unit)が注目を集めています。GPUはディープラーニングと関わりが深く、ディープラーニングの発展は、GPUの計算能力向上によるものと言っても過言ではありません。

本稿ではそもそもGPUとは何か、GPUで何ができるのか、どのような性質があるのか、また、CPUと何が違うかを解説していきます。

GPUとは

GPUとは、コンピューターの3Dグラフィック処理を行うために使われる半導体チップ(プロセッサー)です。3Dグラフィックは、二次元的に広がっているスクリーンに奥行きを与えて三次元的に見えるよう画像描画する技術であり、座標位置の計算と、ピクセルデータの計算が必要です。この計算を行っているのがGPUです。


【PR】
sponsored by 株式会社 TACT

CPUとは

CPU(Central Processing Unit、中央演算処理装置)とはコンピューターのあらゆる処理を担うパーツです。マウス、キーボード、ハードディスク、メモリー、周辺機器などからデータを受け取り、その動きを制御しています。どのコンピューターにも必ずひとつは搭載されています。

GPUとCPUでは何が違うのか

GPUもCPUもコンピューターが機能するために必要な「演算」を行うプロセッサーであることには変わりありませんが、どの計算処理を行うかという点において異なります。

たとえば、3Dゲームで綺麗な映像が滑らかに表示されるのはGPUが大量の演算処理をしているからですが、映像を表示するだけではゲームが成り立ちません。ユーザーの入力を処理したり、ゲームデータをハードディスクから受け取ったり、その他さまざまな処理をCPUが行っています。つまり、CPUはコンピューター全体の頭脳であるのに対し、GPUは画像描画のための頭脳と言えます。

Ledge.ai編集部で作成

プロセッサーの性能を左右する「コア」という部品があります。コンピューターの動作に必要な計算はそのコアで行われており、コアの個数によってパソコンの性能を評価できます。CPUのコアは数個程度ですが、GPUには数1,000個搭載されており、ゆえに高速演算処理を可能にしています。

Ledge.ai編集部で作成

Ledge.ai編集部で作成

CPUは、少数の高性能なコアが搭載されているため、ハードディスクからデータを読み取り、実行するなどの複雑な処理に向いています。一方、GPUは単純(並列)な大量の演算処理に向いています。コンピューターの司令塔であるCPUに対して、GPUは単純な作業を「大量に」行う工場のようなイメージです。

GPUが搭載されているグラフィックボードとは?

Photo by Christian Wiediger on Unsplash

GPUはグラフィックボードと呼ばれるパーツに搭載されています。グラフィックボードとはパソコン上で映像を綺麗で滑らかに表示するための部品で、ゲーム業界ではよく「グラボ」と称されています。また、グラフィックボードのことを「ビデオカード」と呼ぶこともあります。

グラフィックデザインに凝ったゲームをプレイする際には、グラフィックボードが必ずと言っていいほど利用されています。GPUは演算処理をしてグラフィックボードを制御し、「グラフィックボードの脳」の役割を担っています。

Ledge.ai編集部で作成

グラフィックボードを利用することで鮮明なグラフィックを表示できる一方、消費電力が上がったり、パソコンのコストが上がってしまうデメリットもあります。そのため、必ずしもすべてのパソコンに搭載されているわけではありません。

グラフィックボードとマザーボード

GPUは、グラフィックボードでなく、マザーボードに搭載される場合もあります。マザーボードは、電子機器で使用される最も重要な電気回路基板のことで、コンピューターの頭脳であるCPU、メモリ、バッテリーなどを搭載しています。

Ledge.ai編集部で作成

グラフィックボードは必ずしもすべてのパソコンに搭載されているわけではないと述べましたが、マザーボードのチップセットにGPUが搭載されている場合は「内蔵GPU」といい、グラフィックボードがなくても映像を描画することができます。しかし、描画性能はグラフィックボードの方が圧倒的に良いので、3Dグラフィックを利用する場合はグラフィックボードの搭載が推奨されます。内蔵GPUと区別をはっきりさせるため、先述のGPUを「単体GPU」「ディスクリートGPU」と分けて使うことがあります。

メーカー

ここでメーカーについて触れておきます。単体GPUを製造しているメーカーはNVIDIAAMDの2社に限られていると言えます。2019年第2半期においては、NVIDIAは約68%、AMDは約32%と、単体GPUの市場を独占しています。そもそもGPUという言葉を使用し始めたのはNVIDIAで歴史的にもGPUと密接な関係にあるといえます(内臓GPUはIntelのシェアが最も大きいです)。なお、2020年よりIntelも約10年ぶりにGPUの販売を再開しました。2社が占めているGPU市場にIntelはどれだけ食い込めるのでしょうか。

* Global GPU shipments market share from 3rd quarter 2013 to 4th quarter 2019, by producer(外部リンク)

* AMD Gains Significant GPU Market Share from NVIDIA(外部リンク)

なお、グラフィックボードを販売している会社やメーカーは多く、ASUS、MSI、GIGABYTE、ZOTAC、ELSA、玄人志向など様々ありますが、いずれもNVIDIA(Geforceシリーズなど)もしくはAMD(Radeonシリーズなど)のGPUを搭載しています。

なぜGPUが注目されているのか

GPUが大量の演算処理をできることを活かし、近年ではCPUの代わりにGPUを搭載し、その高い演算性能を活用するGPUサーバーが登場しました。映像描画以外の目的で利用されるGPUをGPGPU(General-Purpose computing on Graphics Processing Units)といい、AI・ディープラーニングの分野において活躍しています。


Photo by Seanbatty on pixabay

近年さまざまな場面で耳にするディープラーニングは、AIに必須な技術として注目を集めています。ディープラーニングとはコンピューターが大量のデータを学習し、自動的にデータの特徴を見つける技術のことです。以下にGPUを使ったディープラーニングの例を挙げます。

画像認識

画像認識とは、画像に何が写っているかを認識する技術です。画像から色や形といった特徴を読み取り、その特徴をさまざまな学習器に入れて新たな画像を認識できるようにしたパターン認識技術のひとつです。大量のデータを扱うこの技術において、GPUが活用されています。例えば、画像認識の認識率を競うImageNet Large Scale Visual Recognition Challenge(ILSVRC)の2012年大会においてGPUを搭載したAlexNetが優勝しました。

音声認識

音声認識とは、コンピューターにより音声データをテキストデータにする技術です。人間は脳で言葉をそのまま理解しますが、コンピューターは音響モデルや言語モデルを用いて音声を解析します。その際に、データの照らし合わせが行われ大量の演算をしています。マイクロソフトの研究チームが開発したディープラーニング*が、自動音声認識における過去最低エラー率である5.9%を達成しました。これはマイクロソフトが1 カ月前に達成した記録から 6% も向上しています。そして、同チームのディープラーニング技術にはGPUが利用されました。

* 歴史的成果:マイクロソフトの研究者が対話型音声認識において人間と同等の成績を達成(外部リンク)

他にも自然言語処理などディープラーニングが活用されている場面が増え、その中核を担うGPUは注目されています。

GPUの利用はAIの浸透によって加速する

ディープラーニングでは大量の計算が必要なので、性能の高いGPUを使うのが望ましいです。しかし高性能なGPUを使うには膨大な費用がかかるため、利用時間に応じて価格を払うクラウドベースのGPUも展開されています。このように、GPUは大衆化に向かっています。ディープラーニングに欠かせないGPUですが、ディープラーニングの浸透によってさらに活躍するでしょう。

また、近年GAFAは自社製品に搭載するAIチップの開発を積極的に行っています。ディープラーニングの発展を支えてきたGPUはAIチップの台頭によってどのような道を進むのか、注目していきたいです。