OpenMP как параллельный инкрементный цикл - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть два массива:

  double arrayA[N+2];
  double arrayB[N+2];

Как я могу сделать это параллельно, используя OpenMP?

 for(i=0; i<N; i++){
    arrayA[i] += arrayA[i+2] + sin(arrayB[i]);
  }

1 Ответ

0 голосов
/ 06 декабря 2018

Я предполагаю, что массив A предварительно заполнен значимыми значениями, верно?Если да, сохраните копию массива A во временный массив tmp и реализуйте простой openmp для прагмы.

#pragma omp parallel for
for(i=0; i<N; i++){
   arrayA[i] = arrayA[i] + tmp[i+2] + sin(arrayB[i]);
}
...