OpenMP之双重for循环并行计算改进

这篇文章是基于OpenMP对Github项目schneider_et_al_2016_animaldiversity进行计算速度改进,关于该项目请参考博客:
Windows10+VS2017下GSL1.8_x86和sundials2.5.0配置及GITHUB项目schneider_et_al_2016_animaldiversity编译运行

项目设置

  • 设置项目支持OpenMP,右键项目(pdef_dynamics)==>属性==>C/C++==>语言==>OpenMP支持==>是
  • 添加头文件#include <omp.h>

代码改进

该项目工程中,主函数main中主要有2个for循环,可取的思路是:

  • 由于内层循环与执行顺序无关,因此可采用并行计算,外层循环正常采用主线程执行,内层循环采用多线程并行计算
#include <omp.h> // 添加头文件
.

猜你喜欢

转载自blog.csdn.net/wlwdecs_dn/article/details/111084789