【发布时间】:2021-04-12 04:56:15
【问题描述】:
我试过这个但我不知道它是否正确,并且计算执行时间有时它会给我 0 在代码中。
我首先创建了一个结构来存储要插值的点的所有坐标我有一个要插值的点表,所以我使用pragma parallel for 执行 for 部分来插值所有点。变量 R1、R2 和 P 是双精度变量,并且在线程之间共享。
#pragma omp parallel for
for(i=0;i<N ; i++)
{
R1 = BilinearInterpolation(Table[i].x1, Table[i].Q11,Table[i].x2, Table[i].Q21,Table[i].x);
R2 = BilinearInterpolation(Table[i].x1, Table[i].Q12, Table[i].x2, Table[i].Q22,Table[i].x);
P = BilinearInterpolation(Table[i].y1, R1, Table[i].y2, R2, Table[i].y);
TableInter[i] = P;
}
【问题讨论】:
标签: c++ c multithreading parallel-processing openmp