0
当没有指定schedule
子句时,使用什么调度算法? I.e .:OpenMP并行 - 什么是默认计划?
#pragma omp parallel for
for (int i = 0; i < n; ++i)
Foo(i);
当没有指定schedule
子句时,使用什么调度算法? I.e .:OpenMP并行 - 什么是默认计划?
#pragma omp parallel for
for (int i = 0; i < n; ++i)
Foo(i);
从您链接到的documentation开始。第2.7.1.1确定一个工作集循环的日程安排如下:
如果循环指令没有时间表条款则DEF-SCHED-VAR的当前值ICV确定时间表。
引用的一个之前的句子是指第2.3.1节,其读取:
- DEF-SCHED-VAR - 控制环区域实施定义的默认调度。每个设备有一个此ICV的副本。
节中的表2.3.2 ICV初始化指出的初始值DEF-SCHED-VAR是实现定义,并且没有环境变量影响该值。因此默认循环时间表是实现定义的。证明完毕
你可能想看看[这里](http://stackoverflow.com/help/how-to-ask)。特别是,你在发布这个问题之前做了哪些研究? – Massimiliano
使用特定于实现的默认计划。 –
@Massimiliano我已经阅读[documentation](http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf)和其他各种互联网上的资源,没有任何效果。 – Mixer