openmp

    0

    1答えて

    用せず、私は、次のしたがって while(counter < MAX) { #pragma omp parallel reduction(+:counter) { // do monte carlo stuff // if a certain condition is met, counter is incremented } } ように見

    2

    1答えて

    Schwarzアルゴリズムを並列化する必要がありますが、前提条件を処理する方法と入れ子になったループがあることはわかりません。 OpenMPまたはMPIを使用する必要があります。 void ssor_forward_sweep(int n, int i1, int i2, int j1, int j2, int k1, int k2, double* restrict Ax, double w)

    0

    1答えて

    私はOpenMPを新しく使い、並列化しようとしているモンテカルロコードがいくつかあります。 私が持っている new_value()関数を呼び出し逐次実行する必要があり、forループ: void new_value() { #pragma omp parallel default(shared) { int thread_rank = omp_get_thread_num();

    2

    1答えて

    簡略化された例を考えてみましょう。私は、以下の機能を持っていることを言う: int foo(int x, int y, bool &flag) { if (x == y) flag = true; return x + y; } 、その後のOpenMPを使用して並列に実行される: bool flag = false; #pragma omp parallel

    -1

    2答えて

    私のクイックソートは正常に出力されますが、パラレル・バージョンは非パラレル・バージョンより速く実行されません。それをもっと速く動かすために他に何ができますか? void quickSort(int arr[], int low, int high) { int pi; if (low < high) { //pi is partitioning inde

    -2

    1答えて

    私は既存のビートソートを改善するために、その実行時間を短縮して、いくつかのケースでは動作しますが、すべてではありません。たとえば、20のようなサイズの小さな配列の場合、最適化された時間はより良いですが、10,000以上の大きさの配列の場合は、実行時間が半分になり、残りの半分が最適化されます。これは私が持っているものです: Nthreadsは、グローバルに宣言されました。4です。 void para

    0

    1答えて

    std::setオブジェクトを設定し、C++で並列スレッドを使用してブール値ベクトルを編集できますか? 私は並列計算に比較的新しく、OpenMPを使うことだけを学んでいます。読んでいる限り、スレッド間でデータ構造を共有してもいいと言う人がいると聞いてきました。 私の質問は、順序が重要でない限り、パラレルメソッドを使用していくつかのデータ構造を設定できますか?あるいは、あなたが一般的にそのようなこと

    0

    1答えて

    C++でopenMPを使い始めていますが、並列forループで問題があります削減と。以下の関数を実行すると、「* ./main.out」のエラー:ダブルフリーまたは破損(fasttop):0x00007fe2a00008c0 *」というエラーが表示されます。 ***更新:ご協力いただきありがとうございます。私はあなたの提案(下記参照)に基づいて機能を編集し、正しく動作します。しかし、私はまだスピード

    0

    2答えて

    #pragma omp parallel for for (int i = 0; i <500; i++) for (j=i; j < 102342; j++) { Output[j] += staticConstant[i] * data[j-i]; } } いくつかのベクトルの答えは同じで、いくつかは異なっています。これの理由は何でしょうか?

    0

    2答えて

    OpenMPで並列化されているソルバーと比較しようとしています。ソルバーはすべて、Fixed Form Fortran 77を使用してOpenMPIで並列実行されています。 mpif77では、オブジェクトファイルを-fopenmpスイッチとリンクさせることはできません。 Makeは実行可能ファイルを作成しません。私はOpenMPソースファイルをgfortranと別々にコンパイルしようとしてから、m