循环与数据依赖

时间:2015-04-08 00:39:39

标签: c openmp

我正在学习如何使用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但我无法看到它。

如果有任何人可以帮助我,我会非常感激。

0 个答案:

没有答案