各可 2021-06-08 13:50 采纳率: 0%
浏览 23

Openmp并行计算问题

#include "stdio.h"
#include "omp.h"
#define NUM_THREADS 4
int main()
{
    int i, k = 100;
    omp_set_num_threads(NUM_THREADS);
#pragma omp parallel for firstprivate(k)
    for (i = 0; i < 5; i++)
    {
        k++;
        printf("In for-loop k=%d\n", k);
    }
    printf("k=%d\n", k);
    return 0;
}

错误:正确:

为什么同样的代码vscode命令行直接生成exe运行结果不太对,正确的结果使用vs2019运行的

 

  • 写回答

3条回答 默认 最新

  • qfl_sdu 2021-06-08 14:16
    关注

    打印一下最大线程数看看

    #include "stdio.h"
    #include "omp.h"
    #define NUM_THREADS 4
    int main (int argc, const char * argv[])
    {
    	int i,k=100;
    	int nProcessors = omp_get_max_threads();
    	printf("max thread = %d\n",nProcessors);
    	omp_set_num_threads(nProcessors > NUM_THREADS ? NUM_THREADS:nProcessors);
    	
    
    #pragma omp parallel for firstprivate(k)
    	for(int i = 0; i < 5; i++)
    	{
    		k++;
    		printf("In for-loop k=%d\n", k);
    	}
    	printf("k=%d\n", k);
    	exit(0);
    }
    评论

报告相同问题?

悬赏问题

  • ¥15 利用cst反推材料电磁参数,推出想x,y,z方向的相对介电常数与磁导率
  • ¥15 求帮助!用赛灵思FPGA XC7A35T对一个频率50MHz的数字信号读取高低电平,只用HR bank普通单端io进行采样可以吗
  • ¥15 训练准确率100%,测试准确率只有50%
  • ¥15 grafana创建dashhabord提示no data sources of type Prometheus Alert
  • ¥15 python用arima时间序列法预测不出结果 急
  • ¥15 思科交换机如何恢复配置
  • ¥15 请问各位, tiktok 出现这个是什么问题呢?
  • ¥20 pyTMD库该如何使用
  • ¥20 怎么在comsol“磁场和电场”物理场里设置永磁体
  • ¥20 统计计算,抽样重要性重抽样