NVIDIA、恒例となった高校生向けCUDAセミナーを開催

60名近い参加者を集めたCUDAサマーキャンプ2011の様子

8月26日 開催



 NVIDIAは8月26日、高校生を対象としたセミナー「CUDAサマーキャンプ2011」を開催した。このセミナーは、高校生を対象にCUDAプログラミングの基礎を学ぶ機会を設けることで、将来を担うGPUコンピューティングの土壌を育むことを目的に、2009年から毎年行なわれているもの。今年で3回目の開催となる。

 今年の参加者は58名で、遠くは福岡県から参加。うち数名が2回目の受講となったほか、開催3回目にして初めて女性も参加している。また、昨年まではフィックスターズのエンジニアが講師を務めてきたが、今年は東京工業大学の青木尊之教授と同大総合理工学研究科の下川辺隆史氏を講師に迎えた。

●GPUコンピューティングの最先端研究などを紹介

 セミナーの冒頭では、NVIDIA日本法人代表のスティーブ・ファーニー・ハウ氏と、テクニカルマーケティングのスティーブン・ザン氏による、NVIDIA製GPUやGPUコンピューティングのトレンドなどの紹介が行なわれた。この中でファーニー・ハウ氏は「GPUはゲームだけではなく、実は生活のさまざまなところで活用されています」と述べ、スティーブン氏は映画や医療などの身近な分野における、最近のGPUコンピューティング活用事例を紹介。すでに他のイベント等で紹介されたものも含まれるが、高校生向けに改めて説明した。

NVIDIAジャパン代表兼米本社バイスプレジデントのスティーブ・ファーニー・ハウ氏NVIDIAジャパン・テクニカルマーケティングエンジニアのスティーブン・ザン氏映画におけるQuadroやGPUコンピューティングの利用例。レンダリングが高速化したことで、再調整を繰り返しやすくなりクオリティを追い込みやすくなる
CTスキャンの画像処理の高速化で、患者が放射線に被曝する時間の短縮につなげている創薬の分野では、長時間に渡っていた分子の比較/選別を高速化。承認までの時間を短縮することができる工業デザインの分野では、レンダリングの高速化により設計/デザインのCGを高クオリティ化している
タッチパネルや仮想空間上でデジタルコンテンツをリアルタイム表示。インタラクティブなUIの提供につながっているスパコンの分野では、今年6月に発表されたTOP500のうち、NVIDIA製GPUを使ったものとして、中国のTianhe-1A、Nebulae、日本のTSUBAME2.0の3台が5位以内に入っている

 今回講師を務める青木氏、下川辺氏の両名は、講習の前に同大でCUDAを用いて行なっている最先端の研究例を紹介した。青木氏は気液二層流という気体と液体が混在する流体シミュレーションの研究例を紹介。気液二相流のシミュレーションは流体計算の中でも難しい問題とされている。

 この計算では従来、流体をパーティクル(粒子)として扱う手法も行なわれていたが、昨今ではこれを格子法とGPUの組み合わせによって高速化することが、学術研究者のみならず映像(CG)分野でもホットな話題になっているという。格子法のメリットとして、精度の高さや適用できるサイズが粒子法に比べて極めて大きいことが挙げられている。

 下川辺氏は気象庁の次世代数値予報モデルの「ASUCA」や金属材料の組織予測を行なうことで強度や特性の予測につながる樹脂状凝固成長の研究例を紹介した。

 前者は数値予想の歴史に触れつつ、気象庁が開発中のメソスケール気象予報モデルのコードをCUDAに置き換えた研究例を解説。同大のTSUBAME2.0上において145TFLOPSという結果を出し、500m間隔という極めて細かい格子上で日本全土を覆う台風の計算結果を示している。

 後者はTSUBAME1.2の世代でも研究が進められていたが、TSUBAME2.0による最新の研究結果を解説。768×1632×3,264格子という広大なサイズでの計算結果例や、データ通信を隠蔽するオーバーラップの手法の最新事情などを紹介した。また、この研究はゴードン・ベル賞の決勝に残っているとのことで、11月の結果発表に期待がかかっている。

東京工業大学学術国際情報センターの青木尊之教授複雑な計算が必要な流体計算において、現在は格子法を用いた高速化が主流となっているいわゆるミルククラウンのシミュレーション結果
こちらはダムが決壊した場合を想定したダムブレーク問題と呼ばれるもの。計算結果が正しいことを証明するプロセスなどの解説も行なわれた東京工業大学総合理工学研究科の下川辺隆史氏気象計算においては対象エリアの空間を格子状に分割し、流体などの力学計算や、そのほかの物理現象の計算を行なう
現在の気象庁では5km間隔に区切った721×577×50の格子を使用。計算速度は21.5TFLOPSとなっている気象計算における過去の大規模計算では、海洋研究開発機構の地球シミュレータによる26.58TFLOPS、米国立研究所のWRFをJafuar上で実行した50TFLOPSといったものが過去の高速な事例として挙げられたASUCAを東工大のTSUBAME2.0(GPUは3,990個を使用)上で実行した場合、単精度で145TFLOPSという性能を発揮
樹枝状凝固成長は金属素材の組織構造をシミュレートすることで、想定する強度や特性を持つ素材の開発につながるもの樹枝状凝固成長ではフェーズ・フィールド法という計算式が用いられるが、この過去の事例。TSUBAME1.2(60個のGPUを使用)では10TFLOPSという実績が持っていた複数の領域に分割して計算する場合、境界部分のデータ転送がボトルネックになることを防ぐために計算と通信をオーバーラップしてこれを隠蔽する。最近ではGPU上で計算している裏で、ほかの計算をCPU上でも実行するといった手法を取り入れている
CPU上での計算を含む隠蔽を取り入れた計算性能のベンチマークデータ。Y方向の境界部分のみをCPUで実行させた場合が良い結果につながっていることを見てとれる

●東工大の講義をベースに高校生向けに再編
講習では4~5名で1台のPCを用い、CUDAプログラミングのコーディングを体験した

 さて、実際の講習においては、まず青木氏がCUDAプログラミングの基礎を解説。並列処理の概念のほか、CUDAプログラムの初歩となるデバイスメモリの確保やスレッドの管理、GPUカーネルの実行、エラー処理などの内容を解説。

 さらに応用例として青木氏が拡散現象シミュレーション、下川辺氏が波動現象シミュレーションを紹介。拡散現象シミュレーションにおいては、CPUコードをベースにGPUコードを生成し、その計算性能がもっとも優れていたグループに賞品が授与されることになっていた。最終的に上位と下位のグループでは2倍程度の差が付く結果となったが、これは配列をどう区切るかによりメモリアクセス頻度が変わることで差が生まれる、という課題であることが結果発表後に解説された。

 一方の下川辺氏の波動現象シミュレーションは、スリットを加えたり、波長を変えるなどのコードを加えて計算結果がどう変わるかを実験する講習となった。

 ちなみに、今回の講師を務める両名が在籍する東京工業大学では、CUDAを用いた講義を行なっている。今回のCUDAサマーキャンプにおける内容は、実際に大学院の講義で行なわれている内容なども加えて高校生向けに再編したもの。数学的な要素も多分に含まれることから、CPUコードからGPUコードを生成する過程においても数学的な計算式の提示に戸惑う様子もあった。ただ、C言語の基礎が出来ている高校生が集まっていることもあり、CPUコードがほぼそのまま使える、というヒントを得てからは一気に作業が進んだように見受けられた。受講生にとっては、大学の講義にいち早く触れることが出来た場ともなっただろう。青木氏は「今回の講習の内容は、大学院の講義で使われていて、本格的なシミュレーションに使える妥協のないサンプル。それがこんなに速く計算できるということを覚えておいてほしい」と語った。

CUDAプログラムの概念をもとに、メモリ領域の確保と転送、デバイスコードの記述、スレッドの生成、カーネルの呼び出しなどの基礎を学習した応用例では拡散方程式によって導かれる、拡散現象のシミュレーションが題材とされたCPUコードを含むおおまかなコードはあらかじめ提供されており、GPUコードのみを記述するという内容
この拡散現象シミュレーションの実践は性能コンテストも兼ねており、もっともよい性能を出せるコードを書いたグループに、USBメモリ入りドッグタグがプレゼントされた波動現象である電磁波の伝搬をシミュレーションする応用例も体験。結果はOpenGLでリアルタイムに出力される途中に媒質の設定やスリットを加えるコードを追記し、計算結果がどのように変わるかをテストする講習内容
あるグループが2つのスリットを設けたコードを追記した場合のシミュレーション結果

 講習後にはマイクロソフトのアカデミック・エバンジェリストの馬田隆明氏による、同社の学生支援プログラム「DreamSpark」の紹介が行なわれた。DreamSparkは開発者を目指す学生向けに開発環境を無償提供するプログラムで、「恐れずイノベーションに挑戦し、できることがあれば相談して欲しい。マイクロソフトは若い開発者を全力で支援したいと思っている」と訴え、参加者全員にVisual Studio Professionalが配布された。

 また、エルザジャパンからGeForce GTX 550 Ti搭載製品が5名に、日本エイサーからはGeForce搭載ノートPCが10名、それぞれプレゼントとして用意され、抽選で参加者に贈呈された。

学生支援プログラムであるDreamSparkの紹介を行なったマイクロソフト アカデミック・エバンジェリストの馬田隆明氏馬田氏は学生が持つポテンシャルとイノベーション実現の可能性に多大な期待を寄せた
セミナーの最後にはエルザジャパン、日本エイサーからそれぞれプレゼントが用意され抽選会が催された

(2011年 8月 29日)

[Reported by 多和田 新也]