« ネットブック用光学ドライブ付ドッキングスタンド | トップページ | 連休中のパソコン増強 »

2009年4月29日 (水)

CUDAプログラムツールキット(サンプルプログラム付)

先日、我が家のメインPCに取り付けたGeForce 9400GT。

Dsc01332

CUDAという、GPUを演算用に使うための統合環境に対応しております。

グラフィックボードというと3Dゲームなどを動かすため、というイメージがありますが、そんなに四六時中ゲームばかりしているわけではないので、結構グラフィックボードっていうのは遊んじゃっています。

でも、グラフィックボードについているGPUというのはCPUと比べて機能が特化しているものの、浮動小数点演算などの能力で見るとかなりすごいので、これをCPUの代わりに使ってしまおうというのがCUDAの生まれた背景みたいです。

まだあまり対応ソフトを聞きませんが、せっかくそんな機能があるので使ってみたいと思うのが人の性。

とりあえず、CUDAのプログラミングツールキットというのがあります。

CUDAプログラミングツールキットのダウンロード

ここから、「CUDAドライバ」、「CUDAツールキット」、「CUDA SDKコードサンプル」がそれぞれダウンロードできます。

CPU以外にGPUまでばりばり使えたら、うちのPCだって相当すごい計算能力を発揮できるはず。そんな漢心をくすぐる(?)このツールキット、早速ダウンロードして使ってみました。

ダウンロードは、上のサイトでOSのバージョンを選ぶといろいろなバージョンのCUDAが出てきます。ここは最新版の2.1を選択。

で、インストール&再起動をやった後にデスクトップを見ると、「NVIDIA CUDA SDK Browser」というアイコンが。

ダブルクリックすると、ブラウザが立ち上がってきました。

Cuda_01

ずらっとサンプルプログラムが並んでいます。よく見ると各項目の右側に「Files」と「Run」があります。

Filesをクリックすると、どこをクリックしても同じ画面が出ます。

Cuda_03

要するに、「ここにソースコードがあるぞ」といいたいみたいです。

見ての通り、かなり多くのサンプルプログラムがあります。

ただ、大半は一体これは何のプログラムなのかがよくわかりません。英語と専門用語のオンパレードです。解析プログラムなどを手がけている方だと何のことかわかるかもしれませんが・・・

「Monte Carlo ~」・・・モンテカルロ法の何か?ですかね。「FFT ~」・・・高速フーリエ変換の何か? などなどといった感じです。

実行しても、多くはこんな感じ。

Cuda_02_2

コマンドプロンプトウィンドウが出てきて、なにやら結果らしきものを出してくれます。

しかし「ガッチャマンが使うコンピュータの吐き出す穴あきテープ(笑)」のようで、わかる人にしかわからないですね・・・

ただ、たまに視覚的にわかりやすいものも出てきます。こんな感じ。

Cuda_04

とはいえ、これはこれでさっぱりわかりません。なにやらテレビの試験電波のような映像がでてきています。

いろいろ試した結果、視覚的にわかりやすく、いかにも「計算しているぞ!」と主張しているプログラムは以下の二つ見つけただけです。

■ FFT Ocean Simulation

Cuda_05

名前の通り、海の波みたいな画像です。マウスの左ボタンを押しながらドラッグすると回転、真ん中ボタンを押してドラッグで平行移動します。

■ Mandelbrot

Cuda_06

フラクタル図形の中でもわりと有名な「マンデルブロー」。画面上で「a」のキーを押すと、カラーアニメーションになります。

ウィンドウバーに描画速度が出ています。このプログラムはCUDA用グラフィックチップの性能を測るためのベンチマークもかねているんでしょうか。

まあ、こんな感じで使えるんだか使えないんだかわからないプログラムが盛りだくさんです。

パソコン一台に数枚のGeForceを挿し、マルチGPUとして使ってしまうとそれなりにすごい計算機として使えるそうで、百何十CPUで数千万円のPCクラスタと同等の計算能力を持つコンピュータを、より安価に作ることが出来るかもしれません。

いずれにせよ、ソフトが出るかどうかですね。我こそはと思われる方、このSDKで開発してみてください。

このCUDA、GeForce 8100など、8000番台より後のGeForceでつかえるようです。このタイプのグラフィックボードを持っておられる方はお試しあれ。

このCUDAを実際に使ったアプリケーションとして、ビデオ関係だと「TMPEGEnc 4.0 Xpress」と、下の「PowerDirector 7」があります。TMPEGEncはフィルター機能だけだそうなのであまり速度向上は見られませんが、このPowerDirector 7はH.264形式のビデオエンコードに使っているそうで、CPU単体に比べてかなり高速化されているとか。

« ネットブック用光学ドライブ付ドッキングスタンド | トップページ | 連休中のパソコン増強 »

パソコン系」カテゴリの記事

コメント

nVidiaはGPGPUに積極的で良いですね。GPGPUだけでなく統合チップセットにも熱心です。熱心なだけに熱くて電気食いなチップが多いですけれども。

 ATi Radeonを買って見て思ったのは「安くて速くても互換性が悪ければ意味がない」ということでした。熱くて高価で遅くても、やはりGeForceの互換性というものは強いです。
あと、何処かで既に書いたかもしれませんが、親会社がCPUメーカーですから、GPGPUには消極的な感じがしました。

 また、仰るとおり、WinXPで普段使いですと、全くGPUは遊んでしまっています。これならVistaのAeroにでも活用してもらった方が良かったと思っています。
GPGPUが普及して、ファイルの圧縮・解凍や動画/音声のエンコード・デコード、そして画像データのフィルタ処理等に応用されることを願っています。 

 Intelのx86とモトローラ/IBMの68k(PowerPC)ではx86が勝ち残ったのと同じように、GeforceとRadeonのどちらが生き残るか、ちょっと興味あります。このままだとAMDがGeforceのライセンスで負け商売をする予感がありますが・・・ CPUとGPUの「二頭を追う物は一頭も獲ず」で。

こんにちは、Akiraさん。
ちょうどいいタイミングにCyberLinkがGPGPUが使える動画変換ソフトを発表しましたね。
http://pc.watch.impress.co.jp/docs/news/20090430_167890.html
またそのうち記事に書きますが、CUDAとATI Stream両方に対応しているので、Radeonでも使えるというのがいいですね。お値段3,980円だとか。体験版も出るので、一度試してみたいですね。

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: CUDAプログラムツールキット(サンプルプログラム付):

« ネットブック用光学ドライブ付ドッキングスタンド | トップページ | 連休中のパソコン増強 »

無料ブログはココログ

スポンサード リンク

ブログ村