Parallel processing OpenMP并行-什么是默认计划?

Parallel processing OpenMP并行-什么是默认计划?,parallel-processing,openmp,Parallel Processing,Openmp,当未指定任何schedule子句时,使用什么调度算法?即: #pragma omp parallel for for (int i = 0; i < n; ++i) Foo(i); #pragma omp parallel for 对于(int i=0;i

当未指定任何
schedule
子句时,使用什么调度算法?即:

#pragma omp parallel for
for (int i = 0; i < n; ++i)
    Foo(i);
#pragma omp parallel for
对于(int i=0;i
从您链接到的开始。第2.7.1.1节确定工作共享环路的时间表如下:

如果loop指令没有调度子句,则def sched var ICV的当前值确定调度

引用的句子前面的句子指第2.3.1节,内容如下:

  • def sched var-控制实现定义的循环区域默认调度。每个设备都有一份此ICV的副本
第2.3.2节ICV初始化中的表格说明def sched var的初始值是实现定义的,没有影响该值的环境变量。因此,默认循环计划是由实现定义的。Q.E.D