3.1.1 omp_set_num_threads功能

omp_set_num_threads 功能设置线程的默认周期数为未指定 num_threads 子句的后续并行区域使用。 格式如下所示:

#include <omp.h>
void omp_set_num_threads(int num_threads);

参数 num_threads 的 值必须是正整数。 其效果取决于线程数动态调整是否启用。 有关全面设置有关交互的规则线程的 omp_set_num_threads 功能和动态调整之间,请参见有关第 8. 页的第 2.3 节。

该函数具有中描述的效果顶部,在调用从 omp_in_parallel 函数返回零程序的一部分。 如果从 omp_in_parallel 函数返回非零值程序的一部分调用,此功能的行为未定义。

这称为在 OMP_NUM_THREADS 环境变量的优先级。 线程数默认值,才能建立通过调用 omp_set_num_threads 或通过设置 OMP_NUM_THREADS 环境变量,单一 并行 指令中显式重写通过指定 num_threads 子句。

交叉引用:

  • omp_set_dynamic 功能,请参见中的第 39 页的 第3.1.7部分

  • omp_get_dynamic 功能,请参见中的第 40 页的 第3.1.8部分

  • OMP_NUM_THREADS 环境变量,请参见中的第 48 页的有关第 8. 页的 第4.2部分 和第 2.3 部分。

  • num_threads 子句,请参见中的第 8 页的 第2.3部分