首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

新手 openmp编程求解解决办法

2012-02-09 
新手 openmp编程求解 - 专题开发/技术/项目 / 多核软件开发#include omp.h#include stdio.hint main(i

新手 openmp编程求解 - 专题开发/技术/项目 / 多核软件开发
#include <omp.h>
#include <stdio.h>
int main(int argc ,char *argv[])
{
printf("hello the serial");
  int i,j;
  //开始并行执行
  for(i=0;i<2;i++)
#pragma omp parallel 
for(j=6;j<10;j++)
  printf("i=%d,j=%d\n",i,j);
printf("Hello from serial again.\n");
return(0);
}
以上是源程序,
运行结果 
i=0,j=6
i=0,j=6
i=0,j=7
i=0,j=8
i=0,j=9
i=1,j=6
i=1,j=6
i=1,j=7
i=1,j=8
i=1,j=9
Hello from serial again.
为什么 j=6 连续打印两次
求解释,很迷茫。。。


[解决办法]
说明你的机器有两个处理器/核,因此自动生成两个OMP线程完成并行

你把 #pragma omp parallel 改成 #pragma omp parallel for 再试试就知道差别了

[解决办法]
说明你的机器有两个处理器/核,因此自动生成两个OMP线程完成并行

热点排行