我想使用OpenMP并行化以下算法。 A和C是输入数据,B是输出。 A是向量,元素A [i]表示数组C的第i行中的元素数。 并行化是否可行;
bno=0;
for (j=0; j<A[0]; j++)
B[bno++] = C[0][j];
for (i=1; i<L; i++)
for (j=0; j<A[i]; j++)
for (k=0; k<A[i-1]; k++)
if ( f(C[i][j], C[i-1][k]) == 1)
B[bno++]=C[i][j];
答案 0 :(得分:0)
我在C中重写了一个最小,完整且可验证的串行代码版本。 关于变量:表A [N] [M]的整数输入到我的代码中,输出整数的向量B []并输出整数bno并存储在向量B []中复制的整数数。 这个串行串行代码可以并行化吗?我使用OpenMP。
"^(?=[^A-Za-z0-9]*[A-Za-z0-9])[A-Za-z0-9\\/@.,# _-]*$"
例如,对于以下输入:
A [4] [3] = [
7,8,9,
1,2,8,10,5,6,6,5,5] >
输出应为:B = [8,6,6,5],bno = 4。