Home > Archives > 2007年10月17日

2007年10月17日

gcc4.2 で OpenMP 使ってみた

今更ながらだけど gcc4.2 で OpenMP 使えるのを試してみた.使うにはふつうに OpenMP のディレクティブ書いて -fopenmp つけてコンパイルするだけ.あとは OMP_NUM_THREADS 環境変数にスレッド数をぶち込んで動かす.

で,parallel for とか reduction(+:r) とかで並列実行されるのを確認.ただ,reduction で本来の計算以外に結構時間取られてるっぽいので要調査かな.

あと,OpenMP 2.5 の仕様をみると reduction のオペレータはオーバーロード禁止かついわゆる C or C++ の演算子しか使えないとあるのでgccでもそうなのか試してみよう.オーバーロードくらい許してくれないと何にも出来ん.

Home > Archives > 2007年10月17日

Search
Feeds

Page Top