次のネストされたforループがあります。最初のループを並列化したいのですが、2番目のループを並列化してはいけません。したがって、各スレッドが2番目のループをそれ自体で実行するようにします。つまり、2番目のループは各スレッド(コード内の各「i」)に対して特別である必要があります。
どうやってやるの?
#pragma omp parallel for
for (i=k+1;i<row;i++){
for (n=0;n<k;n++){
// #pragma omp atomic
dummy += L[i][n]*L[k][n];
L[i][k] = (A[i][k] - dummy)/L[k][k];
}
dummy = 0;
}