【发布时间】:2014-12-05 15:46:25
【问题描述】:
运行程序
$ OMP_NUM_THREADS=4 ./a.out
将活动 OpenMP 线程的数量限制为 4 个,htop 就是证明。但是,如果不是在Bash 中绑定OMP_NUM_THREADS 环境变量,我调用
setenv("OMP_NUM_THREADS", "4", 1);
来自main 在调用任何启用 OpenMP 的函数之前,这似乎没有任何效果。
为什么会这样?如果可能的话,如何在程序中设置 OpenMP 线程的数量?
【问题讨论】:
标签: c++ c linux multithreading openmp