本文主要是介绍OpenMP编程-并行循环,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
两种形式如下:
//for循环并行化声明形式1#pragma omp parallel forfor (int i=0;i<10;i++){cout<<i<<" "<< omp_get_thread_num()<<endl;} //for循环并行化声明形式2
#pragma omp parallel {
#pragma omp for for (int i = 0; i < 10; ++i) { for (int j = 0; j < 10; ++j) { c[i][j] =i+j; cout<<omp_get_thread_num()<<" ";} cout<<endl;} }
输出两个线程,因为我的电脑是双核,没有做线程初始化,默认为双线程,如果电脑是N核的,默认的就是N线程,跟环境变量设置有关。
这篇关于OpenMP编程-并行循环的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!