Chinaunix首页 | 论坛 | 博客
  • 博客访问: 63680
  • 博文数量: 19
  • 博客积分: 800
  • 博客等级: 准尉
  • 技术积分: 196
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-18 10:42
文章分类

全部博文(19)

文章存档

2011年(1)

2009年(8)

2008年(10)

我的朋友

分类: C/C++

2009-05-08 16:41:30

    最近研究多核与多线程的过程中,接触了OPenMp, 感觉其简单易用,在原有的代码基础上,稍微改动就可得到很大的加速比, 这里简单叙述一下其编译器的支持配置。
 
在linux 系统中我使用了 GCC编译器, 在4.2以上的版本中默认支持OPenMp, 安装相应版本,在编译选项中添加 -fopenmp 即可编译。在编译之前记着执行 export OMP_NUM_THREAD=8, 即配置环境变量,设置线程的数量。
 
在windows 系统中我使用VS2005,只要打开VS2005中的编译选项/openmp,设置一下环境变量
OMP_NUM_THREADS
就可以了.一般是新建一个c++项目,以次选择项目->(*)属性->配置属性->c"c++->语言,打开OpenMP支持;设置环境变量,我的电脑->属性->高级->环境变量,新建一个OMP_NUM_THREADS变量,值设为2,即为程序执行的线程数
 
 
可以采用以下列子进行测试:
#include
#include
int main()
{
#pragma omp parallel
 printf("[%d] hello!\n",omp_get_thread_num());
 return 0;
}
阅读(1532) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~