Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 嵌套并行for循环:";“平行外循环”;在;“作为一个函数的并行内部for循环”;_C++_C_Multithreading_Parallel Processing_Openmp - Fatal编程技术网

C++ 嵌套并行for循环:";“平行外循环”;在;“作为一个函数的并行内部for循环”;

C++ 嵌套并行for循环:";“平行外循环”;在;“作为一个函数的并行内部for循环”;,c++,c,multithreading,parallel-processing,openmp,C++,C,Multithreading,Parallel Processing,Openmp,我想在一个并行的外部循环中运行一个包含for循环(应该并行运行)的函数。因此,它看起来如下所示: void myfunction(){ ... #pragma omp parallel for for (int i=0;i<10;i++){ do something... } } int main(){ #pragma omp parallel for for(int i=0;i<5;i++){ my

我想在一个并行的外部循环中运行一个包含for循环(应该并行运行)的函数。因此,它看起来如下所示:

void myfunction(){
    ...
    #pragma omp parallel for
    for (int i=0;i<10;i++){
        do something...
    }
}


int main(){
    #pragma omp parallel for
    for(int i=0;i<5;i++){
        myfunction();
    }
}
void myfunction(){
...
#pragma-omp并行
对于(int i=0;i您需要:

void myfunction(){
#pragma-omp并行
对于(int i=0;i
void myfunction(){

    #pragma omp parallel for
    for (int i=0;i<10;i++){
        ...
    }
}


int main(){

    omp_set_nested(1);       // Enable nested parallelism    
    omp_set_num_threads(5); // Use 5 threads for all parallel regions

    #pragma omp parallel for
    for(int i=0;i<5;i++)
    {

        myfunction();
    }
}