1. OpenMP线程数设置
通常我们希望并行线程数可以随着机器改变自适应的调整,网上介绍OpenMP的文章很多,但是很少提到该怎么分配线程数,一般来说线程数最大可以开到2*核心数,但是这样电脑计算资源就会被占用的过多,其他程序基本上会卡的不要不要的,所以我一般就设置线程为2*核心数-1。
(1) 查看核心数:

上面是我电脑的CPU,在CPU使用记录中有四个框,说明这台电脑有四个核心。
(2) OpenMP获取CPU核心数:
omp_get_num_procs() 函数会返回机器的核心数
(3)OpenMP设置线程数:
#pragma omp parallel for num_threads(2*numProcs-1)
2. VS开启OpenMP支持

开启成功以后运行多线程程序,你会发现: 
本文介绍了如何通过OpenMP进行线程数目的合理配置来优化程序性能,包括确定最佳线程数的方法、如何利用OpenMP API获取及设置CPU核心数等关键步骤。
1808

被折叠的 条评论
为什么被折叠?



