オススメ機能
Twitter
お気に入り
記事履歴
ランキング
お気に入りタイトル/ワード

タイトル/ワード名(記事数)

最近記事を読んだタイトル/ワード

タイトル/ワード名(記事数)

LINEで4Gamerアカウントを登録
David Kirk氏,「3ステップで取り組むGPGPU」を提唱
特集記事一覧
注目のレビュー
注目のムービー

メディアパートナー

印刷2010/07/19 18:17

ニュース

David Kirk氏,「3ステップで取り組むGPGPU」を提唱

会場の様子
CUDA
 2010年7月16日,NVIDIAは,東京都内のラフォーレミュージアム六本木にて,同社のGPGPU技術にフォーカスしたカンファレンス「GPUコンピューティング2010」(以下,GPUC2010)を開催した。
 GPGPUとはGeneral Purpose GPUの略で,簡単にいえば,「GPUの演算性能を3Dグラフィックスだけではなく汎用目的に流用する技術」のこと。そしてGPUコンピューティングは,最近のNVIDIAが好んで使うキーワードで,実質的には「GPUコンピューティング=GPGPU」という理解でOKだ。本稿ではとくに意識せず,同義的に両キーワードを用いる。
 ――余談ながらに続けると,NVIDIAはかつて,ワークステーション用GPUであるQuadroシリーズにフォーカスした“グラフィックス寄り”のGPGPUソリューションを「ビジュアル・コンピューティング」と呼んでいたが,最近ではあまり用いなくなった。

 NVIDIAは,2006年にG80コアの「GeForce 8800 GTX」を発表したとき,それとほぼ同時に,独自のGPGPUプラットフォーム「CUDA」(Compute Unified Device Architecture)を発表しており,以降,このCUDAは,同社が手がけるGPU関連マーケティングにおいて,非常に大きな存在へと昇格した。
 NVIDIAは,G80以降,ほぼすべてのGPUにおいてCUDAをサポートし,GPUの世代を新しくするごとに,後方互換性を維持しながらCUDAのユーザビリティや機能も改善させてきた。その努力が報われた形で,今日(こんにち)では,GPGPUプラットフォームの業界でのデファクトスタンダード的な位置を得るまで漕ぎ着けている。

David B.Kirk氏(NVIDIA Fellow,NVIDIA)
 2009年10月にNVIDIAが,米サンノゼ市にて,CUDA技術者向けのカンファレンスである「GPU Technology Conference」(GTC)を開催し,ここでFermiアーキテクチャの発表を行ったのは記憶に新しいと思うが,いまやGPGPUは,NVIDIAが手がけるビジネスの中核的な存在となったと述べても過言ではない。
 さて,今回のGPUC2010は“日本版GTC”ともいうべきカンファレンスで,その基調講演には「GeForceの父」とも呼ばれるDavid B.Kirk(デビッド・カーク)氏が登壇した。


進むスパコンのGPGPU化〜GPGPUベースのスパコンが

世界第2位の高性能スパコンに認定


Steve Furney-Howe氏(Vice President PSG Sales Asia Pacific and Japan, NVIDIA)。「これまでGPGPU技術に投資してきた皆さん,ついに今こそが刈り入れ時です」
 GPU2010の開会宣言を行ったのは,NVIDIAの日本チームを統括するSteve Furney-Howe(スティーブ・ファーニー-ハウ)氏。「このGC2010を通して,みなさんは,GPUコンピューティングが今後ますます進化する分野であること,そして,GPUコンピューティング技術を利用したソフトウェアは多くのユーザーにとって価値があるものであることを確信するでしょう」と挨拶した。

 NVIDIAは,GPGPU専用用途のGPUハードウェアとしてTeslaブランドを展開し,2007年より製品をリリースしている。大局的かつ大規模な演算を行うHPC(High Performance Computing)分野において,CPUベースのHPCハードウェアに対し,GPUベースのTeslaは破格に安価だったこともあり,「スーパーコンピュータの価格破壊」「デスクトップ・スーパーコンピュータ」などともてはやされ,とくに,あまり予算を大きく取れない大学の研究室が積極的に導入を行ってきた経緯がある。
 以降,大学など研究機関での高い評価に後押しされる格好で企業への導入も進み,現在はさまざまな業務用アプリケーションが開発/提供されるようになった。Furney-Howe氏も,このわずか4年間でのNVIDIAのGPGPU技術の浸透には確かな手応えを感じているのだろう。

NVIDIAの研究開発費の推移。CUDA発表の1年前である2005年から金額が大きく跳ね上がっている
CUDA
 さて,基調講演に登壇したKirk氏は,まず,GPGPUの進化の背景について解説を行った。
 リアルタイム3Dグラフィックスの黎明期は,そのレンダリングを本物っぽく見せるため,「自然現象を演算負荷の低い疑似モデルに置き換えること」に明け暮れていた。しかしリアルタイム3Dグラフィックスは,そうした“いんちき”ではななく,まともなシミュレーションベースの,“リアルな”メソッドを実装していくために,その演算パワーを増大していく。
 その進化の過程で,その超並列演算パワーをHPC用途にも応用していこうという,前述のようなムーブメントが起こったわけだ。

CUDA
世界第2位の性能を叩き出す中国のスーパーコンピュータ「星雲」はGPGPUベース
CUDA
世界各国各地でGPGPUベースのスーパーコンピュータが誕生しつつあるとKirk氏
 NVIDIAの研究開発投資額の推移を見ると,CUDA発表前年の2005年から,増加ペースが上がっている。このあたりから,グラフィックス用途だけではなく,GPGPU用途への研究開発費が上乗せされたということなのだろう。
 かくしてGPGPUはその価値が世界で認められるに至り,HPCハードウェアの革命児的な位置づけとなった。結果,世界の名だたる研究機関に新規導入されるスーパーコンピュータのうちいくつかは,GPGPUベースのものになっているとKirk氏は説明する。

 その直近の事例として挙げられたのは,中国の国立スーパーコンピュータセンターに構築された「星雲」(Nebulae,ネビュラ)だ。星雲は,世界で2番目に高性能と認定されたスーパーコンピュータであり,その内部は4640基のTeslaで構成されている。実効性能では世界第2位となっているものの,2.98PFLOPS(ペタフロップス)をマークした理論スペックは世界最高値というのがウリだ。

 Kirk氏は「今やCUDAは,300を超える大学において,並列プログラミングの授業で採用されています」と述べ,

NVIDIAのGPGPUをベースとしたHPCハードウェアが増える→GPGPU技術者の教育にCUDAが用いられる→(以下繰り返し)

というプラスのスパイラルに入っているという見通しを示した。PCゲーム市場は決してなくなっていないが,市場の成長度合いで見れば,今やHPC市場のほうが大きい。直近の2世代で,NVIDIAのGPUコアがGPGPUソリューション向けに傾倒したことも納得のいくところではある。

CUDA中心のGPGPU環境が実現されつつある
CUDA
 「OpenCLの登場でCUDAの役割は終わる」という指摘もあったが,NVIDIAは,CUDAがHPC業界でデファクトスタンダード化したことに自信を見せており,むしろ「OpenCLをCUDAのエコシステムの一部に取り込む」という勢いで周辺のソフトウェア環境整備を進めている。CUDAからOpenCLへのコンバージョン・プリプロセッサ「Swan」が登場したことなどは,まさにそうした流れの象徴的な動きといえるだろう。
 「NVIDIAが明日この世からなくなったとしても,CUDAがこの世からなくなることはもうないでしょうね(笑)」(Kirk氏)。


CPUとGPUの適材適所を訴えるKirk氏


「GPUベースのスーパーコンピュータは性能が高いだけでなく,導入費用,運用費用,消費電力の観点から見ても優れたソリューションなのです」
 続けてKirk氏は,GPUとCPUが持つ消費電力あたりの性能値比較事例を紹介する。氏の示した資料によれば,前出のスーパーコンピュータ,星雲と,CPUベースで世界第1位の座にある米オークリッジ国立研究所の「Jaguar」(ジャガー)とで比較すると,1W(1ワット)あたりの性能値「GFLOPS」(ギガフロップス)では星雲のほうが2倍も高効率なのだという。
 また,スーパーコンピュータは,それ自体を冷却するための冷房費なども高く付くが,GPGPUベースだと全体の体積が小さいため,37TFLOPSのシステム同士での冷却費用は,GPGPUベースのほうが4.5倍も安く上がるとKirk氏は指摘する。

CUDA
1WあたりのGFLOPS値をGPUベースとCPUベースとで比較
CUDA
同一性能でCPUベースのスーパーコンピュータと冷却費用を比較

CPUとGPUは協調関係にある
CUDA
 GPGPUにまつわる話題では,GPUのピーク演算性能の高さにばかりにスポットが当たるため,しばしば一般のユーザーからは「GPUはCPUに置き換わるのか」という質問が出る。しかし,NVIDIAは一貫して「GPUはCPUを排除するものではないし,将来的にもそうならない。協調関係にある」と返答している。
 Kirk氏も,基調講演のなかで,「CPUはシリアルタスクの実行を得意としているため,複雑な制御系処理を任せる。これに対してGPUはパラレルタスクを得意としていますから,ある処理系を同時多発的に行うことを任せます。CPUとGPUは互いを補い合う関係にあります」という表現を使っていた。

 これはCPUとGPUの「適材適所」をアピールしているわけだが,ただ一方で,NVIDIAはCPUを擁護していたり,CPUに気を遣っていたりするわけでもない。むしろNVIDIAの言い分は攻撃的であり,語弊を覚悟で言えば,Kirk氏,そしてNVIDIAは「GPUが得意とするべき分野から,CPUには早く出ていってもらいたい」というメッセージを込めているのである。

HPCベンチマークソフトの結果。1ドルあたりの性能値,消費電力あたりの性能値,同一処理内容のプログラムをCPUからGPUに移植したときの性能向上比の比較など
CUDA CUDA CUDA


GPGPUが命を救う?


 「計算の高速化は,結果が早く得られるという直接的な恩恵だけでなく,しばしば,科学技術の在り方を根本的に変えてしまう可能性もあるのです」(Kirk氏)。

 GPGPUソリューションは「CPUのX倍処理が速くなる」というのが,直接的かつ短期的に得られる恩恵だが,それ以外にも,「できることは分かっているのに,現実的ではない」とされてきたソリューションが,演算能力の向上で実用化に踏み切れるようになったという事例が,最先端の科学の現場,とくに医学と薬学の現場で生じているという。

CUDA
 身近な例としてKirk氏が示したのは,MRI(Magnetic Resonance Imaging system,磁気共鳴画像装置)の映像化精度についてだった。
 これまで,MRIスキャンで得られた生データは,高速フーリエ変換(FFT)で処理しやすいように,グリッドデータに前処理として近似する手法(※格子状に揃える,一種の量子化に相当する処理)が採用されていた。これは確かに高速にはなるのだが,精度とのトレードオフがある手段だった。

 ただ,GPGPUによる超並列計算が高速かつ安価に行える見通しが立つようになってからは,MRIスキャンを行った生データのすべてに対し,FFTを用いず,最小二乗法を直接適用して高精度な結果を得る手法の実用化が可能になったという。これはある意味,GPGPUがもたらした超並列演算の高速化が医学に貢献した好例だといえよう。

これまで現実的でないとされてきたMRIシステムの高精度運用が,GPGPUの進化によって可能になったという
CUDA CUDA
CUDA CUDA

 薬学シミュレーションの世界でも同じようなことが起きていると,Kirk氏は説明する。
 高分子規模の分子シミュレーションをインタラクティブに行うという,これまで困難だったことが現実味を帯びてきたため,新薬の開発速度や,その副作用の予測スピードなどを加速させることができるようになっているという。
 極めて近い将来,我々の命が,GPUによって救われている瞬間があるかもしれない。

新薬開発がGPGPUによって高効率化。まさにGPGPUが命を救う!?
CUDA CUDA
CUDA CUDA


GPGPUへの取り組み方,3ステップ


 講演の最後にKirk氏は,GPGPUソリューションへの取り組み方を3ステップにまとめてみせた。

Kirk氏が訴える「GPGPUへの取り組み方」3ステップ
CUDA

 「第一段階では,既存のソフトウェアをアクセラレーションすることを考えてみてください」
 既存のプログラムを大幅に変えずとも,例えば一部の関数の並列化に取り組んでみたり,あるいは普段何気なく使用しているFFTを,CUDAライブラリ版に変更してみたりするだけでもいい,とKirk氏。まずはここから始まるというわけだ。

 「第二段階では,GPGPUに配慮して既存のソフトウェアを再開発したり,新規ソフトウェアを開発したりしてください」
 既存のソフトウェアを並列化したり,あるいはこれからソフトウェアを新規に開発したりするときは,実装段階から並列化を念頭において設計していくイメージだ。ゲーム開発シーンも含めて,現在,多くの開発者がこのフェーズにいると思われる。

 「第三段階では,既存の概念にとらわれない,超高速な並列計算だからこそできる新しいアルゴリズムの開拓に挑戦してみてください」
 これが最も難しいが,逆に最も革新的なテーマであり,GPGPU技術を盛り上げることにも貢献することになる。

 Kirk氏はこの第三段階こそが,GPUC2010の参加者達が挑戦すべきテーマであると結び,講演を終えた。


会場で見かけたブース展示


 なお,会場にはいくつか気になる展示があったので,写真を中心に紹介してみたい。

NVIDIAブースでは,CUDAベースのプログラマブルレイトレーシングエンジン「Optix」が立体視に対応したとして,そのデモが行われていた。デモに使われていたのは,Cooler Master製PCケース「HAF X」のNVIDIAエディション。グラフィックスカードを支える補強板を搭載するのが特徴だ
CUDA CUDA

こちらもNVIDIAブースから,開発コードネーム「Nexus」として開発されてきた世界初のビジュアルGPUデバッガ「Parallel Nsight」。Microsoftの「Visual Studio 2008」に統合して利用できるため,CPUプログラムのトレースからGPUプログラムのトレースまでをシームレスに行える
CUDA CUDA

エルザジャパンの一押しはPCI Expressの仮想化を行う技術「NextIO」。TeslaベースのGPUコンピューティングボックスを,複数のHPCホストから共有できるのがウリだ。接続先のGPUコンピューティングボックスはNextIO技術により仮想化されているため,それぞれのHPCホストからみると“自分専用のGPUコンピューティングボックス”を使っているように利用できる。もちろんシステムの最大性能は,GPUコンピューティングボックスの最大性能と等価だ。左下の写真が,NextIO技術を盛り込んだ「NextIO vCORE」になる
CUDA CUDA
CUDA CUDA

クレイジャパンは,GPUベースのデスクトップ・スーパーコンピュータ「CRAY CX1」を展示していた。FermiベースのTesla 20-Seriesを搭載可能だ
CUDA CUDA

デルはGPUベースHPCソリューションの最新ラインナップを展示。写真右のブレードプラットフォーム「M610x」はFermiベースのTesla 20-Seriesを搭載可能だ
CUDA CUDA

東杜シーテックは,2台のカメラから取得したステレオ顔面映像から立体データを取得する技術のデモを披露
CUDA CUDA CUDA

日本IBMは,Fermiベースの「Tesla M2050」を最大2基搭載可能なHPCシステム「IBM System x iDataPlex dx360 M3」を展示
CUDA CUDA

日本ヒューレット・パッカードのブースにあった,HPC用途にも対応可能なGPUベースのワークステーション「HP Z800」。Xeon 5600系シリーズを2基搭載し,GPUはQuadro/Teslaを搭載できる。デモ機ではFermiベースの「Tesla C2050」を2基搭載していた。なお,メモリスロットはECC対応DDR3スロットが12基。16GBモジュール×12基で192GBのメモリを搭載可能
CUDA CUDA

日立情報通信エンジニアリングは,GPUベースのHPCハードウェア構築や周辺ソフトウェアのセットアップまでを含めたシステム構築を行うサービス事例を紹介。日本ではまだ少ない,Fermiベースとなる「Tesla S2050」の実機も展示していた
CUDA CUDA
  • 関連タイトル:

    CUDA

  • この記事のURL:
4Gamer.net最新情報
プラットフォーム別新着記事
総合新着記事
企画記事
トピックス
スペシャルコンテンツ
注目記事ランキング
集計:06月16日〜06月17日