欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

OMP 设置线程的 3 种方法

最编程 2024-07-06 14:40:13
...

设置线程的3种方法

1. 在子语句 data clause 中设置 :

num_threads( )

#pragma omp parallel for default(none) shared(x) private (i) num_threads(3) 
  for(i=0; i<10; i++){
    x[i]=i;
  }
2. 在 run time 函数库中设置 :

omp_set_num_threads( )

omp_set_num_threads(2) 
#pragma omp parallel for default(none) shared(x) private (i) 
  for(i=0; i<10; i++){
    x[i]=i;
  }
3. 在环境变量中设置environment variables

在命令窗口中配置 : export OMP_NUM_THREADS = 3

module load intel  //call intel module
icc -0 -qopenmp myOMP.c -o myOMP.exe  //compile
export OMP_NUM_THREADS=3 ./myOMP.exe   //run
Summary:

1、2、3 优先级依次降低的,也就是前面的设置可以覆盖后面的设置,当然也是相对而言,num_threads子句只会影响当前的并行区域,而omp_set_num_threads对OMP_NUM_THREADS环境变量的覆盖是在整个程序运行期间全局的。

推荐阅读