OpenMP编程->并行循环

两种形式如下:

//for循环并行化声明形式1
  #pragma  omp parallel for
  for (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;
	  }  
  }  

OpenMP编程->并行循环_第1张图片

输出两个线程,因为我的电脑是双核,没有做线程初始化,默认为双线程,如果电脑是N核的,默认的就是N线程,跟环境变量设置有关。



你可能感兴趣的:(OpenMP编程->并行循环)