可以在以下形式的循环中使用“#pragma omp parallel for”:
For (i=0;i<...;.i+=1)
{ #pragma omp parallel for
for(j=0;j<...;j+=1)
{ Some code.....}
感谢advence!
答案 0 :(得分:2)
是的,它可以这样使用。但是编译器指令必须在他们自己的行上
for( ... )
{
#pragma omp parallel for
for( ...
//..
答案 1 :(得分:0)
它可以像你说的那样使用但如果我是你并且想要避免每次迭代的fork / join我不会有好处,我会这样做:
#pragma omp parallel for
for(j loop)
{
for(i loop)
{
//Modify your code if necessary.
}
}
在上面的代码片段中,如果您的最大线程数为10且您的j长度为100,那么将有10个线程,每个线程将运行10次迭代j。