首页 > 请问OMP_NUM_THREADS 是什么?怎么设置?

请问OMP_NUM_THREADS 是什么?怎么设置?

在一个C++例子中,有一段代码是这样的。

 var = getenv("OMP_NUM_THREADS");
    if(var != NULL)
        sscanf( var, "%d", &num_procs );
    else {
        printf("Set environment OMP_NUM_THREADS to 1");
        exit(1);
    }

运行的时候问题提示Set environment OMP_NUM_THREADS to 1。

请问OMP_NUM_THREADS是不是线程数?怎么设置?我在环境变量(用户变量和系统变量都)新建了变量名OMP_NUM_THREADS,值为1.但是还是提示Set environment OMP_NUM_THREADS to 1。请大家帮帮忙,谢谢!


OMP_NUM_THREADS 是执行是可用的线程数。你的代码使用getenv,所以在环境变量设置。
新建了变量但是还是提示Set environment OMP_NUM_THREADS to 1是因为你的执行环境没有继承环境变量。
你需要export OMP_NUM_THREADS。

【热门文章】
【热门文章】