計測器・測定器・パソコン等IT機器のレンタル、
リース、中古機器販売、校正受託ならお任せください

玉手箱

【GPGPU:その1】GPGPUとは? いったい何ができるのか?

 ご存知の方も多いでしょうが、コンピューターのデスクトップ画面の描画処理(2Dグラフィックス)および3Dゲームや3D CAD、3D CGなどの3Dグラフィックス処理を行うユニットをGPU(Graphics Processing Unit:グラフィックス・プロセシング・ユニット)と呼びます。

 さまざまな処理を行うCPU(Central Processing Unit:セントラル・プロセシング・ユニット、中央演算処理装置)とは異なり、GPUはグラフィックスに関連する処理だけを行う専用のユニットです。それまでCPUが行っていたグラフィックス処理をGPUにまかせることで、CPUは別の処理をより多く行うことができるようになります。

 GPUをリリースしているメーカーとして代表的なのがNVIDIAやAMDです。インテルもCPU内蔵用のGPUを取り扱っていますが、GPU単体での販売はしていないためここでは除きます。また、ここではNVIDIAのGPUを中心に解説します。

グラフィックス処理の性能を追求してきたGPU

 GPUは、コンピューターで扱う画像処理(2Dや3D)をスムーズに行うことをひたすら追及してきました。その結果、パソコンに表示される画面は、静止画面から、不安定な動画、そして動きがスムーズで高精細な動画へと変わりました。
 パソコンのデスクトップ上の画面は、基本的に2D(二次元)表示の画面です。これに対し、ゲームは早くから3D(三次元)の画面へと移行しており、パソコンで遊ぶゲームも当然3Dへと変わって行きます。この3Dの性能も2Dと同じように性能が向上してきました。

 3Dの動きも、滑らかになっていき、3D画像も、線で書かれただけの3D 画像に面が加わり、角が取れて丸くなり、色が付き、さらに光による陰影などの効果などが加わって、品質を高めてきた結果、現在は実写と見分けがつかない品質になりました。
 2Dおよび3Dのグラフィックスのクオリティが十分な品質に到達した現在、GPUの3Dグラフィックスの進化は、次の方向としてVR(Virtual Reality)へとシフトしてきています。

性能向上の結果、GPUは有り余るパワーを持つことに

 ひたすら性能を上げてくることを追及してきたGPUですが、その結果、GPUは有り余るほどのパワーを持つまでになりました。

 例えば、一般的なコンピューターの使い方では3Dグラフィックスの処理が必要なケースはほとんどありません。そして表計算やビジネス文書の作成、プレゼン資料の作成、データベース処理などは、2Dグラフィックスの処理だけで済みます。この処理は、現在のGPUでは持っているパワーの数%も使っていないのです。

 こうした2D表示だけの作業を行っている間、GPUは、何もせずに休んでいるのです。持っているパワーをほぼ使っていないのです。せっかく高度な計算ができるのに、もったいないですよね。

NVIDIA TAITAN X

 そこで「何もさせないでいるのはもったいない。それならGPUをグラフィックス以外の処理に利用することはできないか?」という発想が生まれました。

 そこで実際にグラフィックス処理以外の演算を行わせるようにしたのが“GPGPU”です。GPGPUに対応しているNVIDIA製のGPUとしては、NVIDIA GeForce(ジーフォース)シリーズ、NVIDIA Quadro(クアドロ)シリーズ、そしてGPGPU専用のNVIDIA Tesla(テスラ)シリーズがあります。
 GPUの用途としては、NVIDIA GeForceシリーズは、3Dグラフィックスや動画編集向け、NVIDIA Quadroシリーズは、デザインや3D CGやCAD、医療用グラフィックス向けとなっています。

 NVIDIA Teslaシリーズは、最初からGPGPU向けに作られており、科学・学術計算、スーパーコンピューターで行うHPC(High-Performance Computing)、ビジネスに直結する株式市況・外為相場分析などの用途向けとなっています。

NVIDIA TESLA P100

 例えばNVIDIA Teslaをいくつも接続して構築されたGPGPUシステムは、ゼロから設計されたスーパーコンピューターよりはるかに安価に作ることができます。
 しかも性能は、多くのスーパーコンピューターの多くと同レベルか、それ以上の性能となっています。何千万~何億円もするスーパーコンピューターを何百~何千万円で構築できることから、学術利用だけでなくビジネス利用でも注目されているのです。

環境にも配慮されたGPGPUシステム

 環境保護やエコが叫ばれる時代に、「高性能ということは電気を大量に消費するのでは?」と気になる人もいるかもしれません。

 そこでこうしたシステムにおいて「ある計算を行わせるのにどのくらいの電力を消費するか?」を調べて順位を付けている「Green 500」というランク付けサイトがあります。2016年の6月時点では、NVIDIA Teslaを搭載するシステムが、上位10台のうちの6台(5位から10位)を占めています。

 例えば自動車では1リッター当たり何キロ走ることができるのか?といった 燃費によるランキングがあります。ガソリン1リットルで走る距離が長いほど長距離を走るコストが安くなりますよね。同じように、多くの計算をこなすのに電気を少ししか使わないのであれば、電気代を気にせずにGPGPUシステムを使うことができます。

 つまり、Green 500の上位に入っているNVIDIAのTeslaを使って構築したGPGPUのシステムは、省エネなシステムなので、複雑な計算をするのに電気を大量に消費するシステムを導入するよりも、ランニングコストはずっと安くなるというわけです。

Green 500のトップ10内にNVIDIA Tesla搭載システムが6台ランクイン

NVIDIAのGPUで汎用計算を行わせる環境「CUDA」

 GPUは、本来グラフィックス処理を行うものなので、コンピューターにGPUを接続しただけでは、当然GPUはグラフィックス処理の仕事しかしてくれません。

 例えばGPUに「1個100円のリンゴを5個、1個80円のみかんを10個買うと全部でいくらになるか計算しろ」と命令しても「ちょっと何を言っているのかわかりません」という返事が戻ってきます。なぜなら「果物の買い物をしたときの総額を計算すること」はグラフィックス処理ではないからです。
 GPUはグラフィックス処理しかできないのですから、「総額を計算する」ということをグラフィックス処理に置き換えてGPUに伝えてあげる必要があります。

 このようにGPUが理解できる言葉に変換して命令を伝えることでこれまでGPUではできなかった計算が行えるというわけです。こうした命令を変換してGPUに汎用計算を行わせるための総合環境の一つにNVIDIAの「CUDA」(クーダ)があります。

 今回紹介しているのはNVIDIAのGPUなのでGPGPUを行うためには「CUDA」環境が必要になります。
ちなみに「CUDA」は「Compute Unified Device Architecture」の略でCUDAの環境は、Windows、Linux、MacOSで構築できます。

 これ以上の詳しい説明はプログラミングの知識が必要になるため省きますが、NVIDIAのGPUを使ってGPGPUを行うには、CUDA環境が必要になるという点が重要です。

CUDA導入済みのGPGPU環境でできることは?

 インテルのCore iシリーズやXeonといったCPUは汎用計算で使うように最初から設計されています。こうしたCPUとは異なり、グラフィックス処理を目的に作られているGPUは、どのようなジャンルでも高速に計算できるというわけにはいきません。実用的な汎用計算をさせようとしても、GPGPUには得手・不得手が存在しており、何から何まで処理できるというわけではないのです(もちろんCPUにも得手・不得手がある)。

 GPGPUがCPUを使った処理よりも高速に処理できる分野として、まず「シミュレーション」(物理シミュレーション、流体計算・気候シミュレーション、天体シミュレーション)があります。

 次いで、GPGPUの並列処理で威力を発するのが「暗号解読」、日本語から英語またはその逆といったリアルタイム機械翻訳といった「音声処理」。そのほか「データベース処理」といったものに加えAIやディープラーニングといった「機械学習」があります。
 GPGPUによるAIやディープラーニングに関しては、医療向けに画像をチェックして瞬時に病巣を発見する機械検査、AIからの質問に答えるだけで問診が完了するAI診断などが製品化前の開発段階にまで来ていると言えます。

 さて、これまで解説してきたことで「GPGPUとは何か?」、「GPGPUでは、どういったことが行えるのか?」がご理解いただけたと思います。

 次回は、GPGPUにおけるAIの現状と将来の展望について紹介しましょう。

今後の掲載予定

【第2回】GPGPUを使ったAIの現状と将来の展望
【第3回】GPGPUによるディープラーニング、その先は?
【第4回】ゲームの世界だけじゃないGPGPUとVR

レンタル商品のご紹介

表示されている金額以外に別途費用がかかる場合がございます。詳しくはお問い合わせください。

IT機器 レンタル

NVIDIA QUADRO M6000 24GB (HP)

レンタル料(1カ月)

130,900円(税別)

IT機器 レンタル

NVIDIA GEFORCE GTX1080

レンタル料(1カ月)

36,000円(税別)

IT機器 レンタル

NVIDIA TESLA K40(HP)

レンタル料(1カ月)

145,900円(税別)

ページトップへ