2024年05月05日

一日一項目 OpenMPってものがあるんですよ なあぁにぃぃみつけちまったな

https://www.r-ccs.riken.jp/wp/wp-content/uploads/2020/09/katagiri190425.pdfimageimage

読んだ。概要はわかった。うむ。しかしワタクシのDELL OPTIPLEX 7010SFF Win 11 23H2(非推奨PC)でアーーソブってかね、4コア4スレッドなのでね。ま~例題を動かして高速になるのはわかったし。
例の調和関数 ∑(1/n) n = 1 ~ 10兆 とかね。DELLでOpenMP無しで10時間がOpenMP有りで5時間ぐらいに短縮したからさ~。効果はあり。時間はだいたいね。
で、途中の経過を知るために、ここまでの和、ここまでの時間 とかを表示するようにしたら出力が混ざってしまった。これは混ざらないようにする呪文が必要だ。コマンドとも言う。知らんけど。
そして、結果の数字が微妙に違うのだ。OpenMP無しのが正しいのだろなあ。ま~小数点以下6桁ぐらいで差が出た。ワタクシのDELLでは。
そういうものらしい。
for loopを高速化するってのは出来たぞ!!   つーか、例題を動かしただけなのね(笑)例題はCopilot先生に訊いたら出てきたっす。

ま~OpenMPはこのぐらいにして。。。。。って思ったもののもう少しトライしてみっか。
画像処理は2次元が多いので2重ループを使う。(x,y)の画素を周辺の画素と演算してどーたらこーたらするからね。その2重ループを高速化できるか。
C言語での画像処理の例題はある。それにOpenMPを適用して見たらどうかな。いや、できるかな。ある画素の周辺の画素の値も計算に使うとなると、それが更新されたかどうかはわからなくなるのではないか。OpenMPの場合には。うむうむ。ワケワカランのでとにかくやってみよう。

てかね。

posted by toinohni at 06:03| 東京 ☀| Comment(0) | ソフト系雑学 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください