openmp

    5

    1答えて

    私は、セクションごとに複数のスレッドを使用して、コードのセクションを並列に実行する方法を探しています。たとえば、私は16のスレッドと2つのタスクを持っている場合、私は8つのスレッドがそれぞれ同時に2つのタスクを実行したい。 OpenMPは一般的なコードを並列に実行するいくつかの構造体(section、task)を持っていますが、それらはシングルスレッドです。私のシナリオでは、sectionまたはt

    10

    1答えて

    compute()私はOpenMP #pragma omp parallel for を使用して、その内部で行列乗算を並列化した関数compute()を持っています。この関数はループで何度も呼び出されます。 他の並列コード内で並列コードを実行する際に問題はありますか? これはUbuntuでコンパイルされたC++です。

    11

    1答えて

    私はOpenMPを使ってプログラムの効率を改善しています。 最近、私は小さなループでこのライブラリの使用がパフォーマンスを低下させ、通常の方法を使用する方が良いことを発見しました。条件が満たされた場合にのみ 実際には、私は、OpenMPを使用したいのですが、私のコードは #pragma omp parallel for for (unsigned i = 0; i < size; ++i)

    0

    2答えて

    私はいくつかのopenMPプログラムを実行しています。プログラムの実行中にスレッドの数を変更することは可能ですか?たとえば、デフォルトのスレッド数を使用してプログラムを実行するのに70秒かかる場合、30秒後にその数を変更できますか?

    3

    1答えて

    私のアルゴリズム(ポアソンの方程式を解く)は完全に並列化可能です。各繰り返しの最後にすべてのスレッドが同期する必要があります。 Function f, fNext; init(f); #pragma omp parallel for(int step=0; step<maxITER; step++) { #pragma omp for for(int i=0; i<N; i++)

    0

    1答えて

    オブジェクトを別のスレッドのベクトルにpush_backしたいとします。いいえ。スレッドの数はマシンによって異なります。 #pragma omp parallel shared(Spaces, LookUpTable) private(LutDistribution, tid) { tid = omp_get_thread_num(); BestCoreSpaces.pus

    6

    3答えて

    OpenMPによって並列化されたループがありますが、タスクの性質上、4つのcritical節があります。 スピードアップをプロファイリングして、ループの中でクリティカル句(またはクリティカルではない(!))の中で最も時間がかかる部分を見つけるにはどうすればよいでしょうか? IはGとのUbuntu 10.04使用 ++ 4.4.3

    3

    1答えて

    私は自分のプログラムでピクセル(GL_POINTS)で3Dキューブを埋めるループを持っているので、少しスピードアップするためにOpenMPを使用してマルチコアプロセッサ。 問題は、私はここで、ループプログラムセグメンテーション違反でのOpenMPを使用して任意の時間は、ループのコードであることである: glBegin(GL_POINTS); #pragma omp parallel for f

    1

    3答えて

    私は/ MTスイッチ(またはVisual Studioスタジオの設定では "C++:コード生成:ランタイムライブラリ:マルチスレッド"と同じ)を使ってopenmpプロジェクトをコンパイルします。 Visual Studioではまだ出力が必要であると報告していますlibiomp5mt.dll(マルチスレッドDLL)私は上記の設定は、静的リンクを求めていたと思った。 はどこかに私が逃した? を代わりに

    2

    4答えて

    私はOpenMPとインテルTBBを使用してイメージ畳み込みとlu分解を並列化しました。私は1〜8のコアでそれをテストしています。しかし、OPENMPとTBBの1つのコアで、set_num_threads(1)とtask_scheduler_init InitTBB(1)を使って1つのスレッドを指定すると、 TBBのパフォーマンスは、TBBのオーバーヘッドによりシーケンシャルコードに比べていくらか小