(1)openMP的配置(windows平台+vs2010)。在Visul Studio中配置openMP十分简单,只需打开“项目 - > 属性 - > C/C++ - > 语言”中将“OpenMPI支持”选为"是" 如下图所示:
这样你就可以开始OpenMP之旅了。
(2)下面开始我们最简单的OpenMPI语句,hello world!
#include "stdafx.h"
#include <omp.h>
#include <iostream>
using namespace std;
int main()
{
#pragma omp parallel num_threads(8)
cout<<"hello world! "<<"thread numbers: "<<omp_get_thread_num()<<endl;
}
其中#pragma omp parallel是一句编译指导语句,告诉编译器后面的语句需要并行处理.num_threads(8)给出线程数为8,可以不给出线程数,一般会有一个默认值,我的机子上是2.
(3)OpenMP的循环并行化
最基础和典型的并行部分应该就是循环,我们先从循环的并行开始