欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

OpenMP简单常用代码

程序员文章站 2022-07-12 19:54:55
...

      在VS中启用OpenMP很简单,很多主流的编译环境都内置了OpenMP。在项目上右键->属性->配置属性->C/C++->语言->OpenMP支持,选择“是”即可。

1、parallel

#include<iostream>
#include"omp.h"
 
using namespace std;
 
void main()
{
//#pragma omp parallel num_threads(4)  //默认是4个线程
#pragma omp parallel
	{
		cout << "Test" << endl;
	}
	system("pause");
}



输出: Test   Test   Test   Test

2、parallel for

#include<iostream>
#include"omp.h"
 
using namespace std;
 
void main()
{
#pragma omp parallel for num_threads(6)   
	for (int i = 0; i < 12; i++)
	{
		printf("OpenMP Test, 线程编号为: %d\n", omp_get_thread_num());
	}
	system("pause");
}

输出:

OpenMP Test, 线程编号为: 0 

OpenMP Test, 线程编号为: 2

OpenMP Test, 线程编号为: 5

...

6个线程共执行循环12次,也就是每个线程执行分配2次。

相关标签: openmp