我有两个函数,第二个函数中有一个 for 循环。
fun1() {
...
}
fun2() {
for(...) {
}
}
Run Code Online (Sandbox Code Playgroud)
现在我想并行运行fun1(fun2即每个函数使用单个线程)。在里面fun2我希望我可以用来omp parallel for执行 for 循环。
我尝试像这样实现它。
fun1() {
}
fun2() {
#pragma omp for
for() {
}
}
int main() {
#pragma omp parallel
{
#pragma omp single
{
fun1();
}
fun2();
{
}
Run Code Online (Sandbox Code Playgroud)
但它会调用fun2多次。
那么有办法做到这一点吗?