我正在学习如何使用OpenMP在C中并行化代码,使用#pragma omp parallel for
和缩减。
如果没有数据依赖关系,那就太酷了,但我仍然坚持使用这段代码:
for (i = 1; i < n; i++) {
fx(Q, ffx, m, n, i);
for (j = 1; j < m; j++)
nFx[k][j] = 0.5 * ((ffx[k][j-1] + ffx[k][j]) - dx/dt * (Q(k, j, i) - Q(k, j-1, i)));
for (j = 1; j < m-1; j++)
Q(k, j, i) = Q(k, j, i) - dt/dx * ((nFx[k][j+1] - nFx[k][j]));
}
我需要更改第四行的表达式(在第七行中相同),因此没有数据依赖性并放置#pragma omp for
但我无法看到它。
如果有任何人可以帮助我,我会非常感激。