GPGPU#3
■ このスレッドは過去ログ倉庫に格納されています
0445デフォルトの名無しさん
2009/09/15(火) 19:18:38>大データに対して同一の演算を行うもの
ここは少し誤解があるような。
CUDAはもっと柔軟性があるよ。
カーネルコードにスレッドIDに依存する処理を入れても遅くならない。
if文も遠慮なく使っていい。
粒度のアンバランスがあってもwarpSize=32がなんとかしてくれることが多いw
CUDAが使えないのは、スレッド間で依存関係があるとき
(あるスレッドが別のスレッドの結果を使うようなとき)
だけでそれ以外は何とかなる。
スレッド間でデータ独立でループが長く、
スレッド数=数百、グリッド数=数百以上とれれば性能を出すのは簡単。
さらに共有メモリー(スレッド間で共有する配列)が使えるアルゴリズムのときは
100倍超の爆速になる。
食わず嫌いの人は、ドキュメントとサンプルコードと格闘してくれ。そうすれば何とかなるよ。
■ このスレッドは過去ログ倉庫に格納されています