为什么嵌套OpenMP程序需要更多时间执行?
我的OpenMP的矩阵乘法程序包含for循环的嵌套,比并行程序的非嵌套版本花费更多的执行时间。 这是我使用嵌套并行处理的块。
杂注omp并行
omp_set_nested(1);
#pragma omp parallel for
for(i=0;i<N;i++) {
#pragma omp parallel for
for(j=0;j<N;j++) {
C[i][j]=0.; // set initial value of resulting matrix C = 0
#pragma omp parallel for
for(m=0;m<N;m++) {
C[i][j]=A[i][m]*B[m][j]+C[i][j];
}
printf("C:i=%d j=%d %f n",i,j,C[i][j]);
}
}
链接地址: http://www.djcxy.com/p/79243.html
上一篇: why is nested OpenMP program is taking more time in executing?