【簡単すぎ!】並列処理をしたい(数値計算)

c/c++

あ,どーも,こんにちは.

普通の理系大学院生をやっているのですが,数値計算の並列化をやってみたいなと思いまして,ちょっと調べてみようかと思います.

並列化とは

僕の中では計算を早くできる手法というイメージです.CPUを複数使って計算を早くしようっていうイメージかなと.

並列処理イメージ(出典:インテルコンパイラーOpenMP入門)

OpenMP

でね,この並列処理なるものをするときに例えばOpenMPのAPIを加えることでできるようになるらし・・!?

例えばVisualStudio C++では以下のようにするだけで並列処理されるらしい.

#include <omp.h> #pragma omp parallel for for (int i = 0; i < count; i++) { // ここは並列実行される }
Code language: C++ (cpp)

こんな簡単にできるの!?とちょっと驚き.

ただ,並列実行されていなくてもエラーは出ないみたいなので,確認は丁寧に.今後実験したら,ここに情報を加えていこうと思う.

参考文献

  • https://jp.xlsoft.com/documents/intel/compiler/525J-001.pdf
  • https://qiita.com/tatsubey/items/447a00ece637823e5f00
  • https://www.openmp.org/resources/openmp-compilers-tools/

コメント

タイトルとURLをコピーしました