OpenMP并行程序设计——Eclipse开发环境的搭建
2014-10-12 15:53
288 查看
转载请声明出处:/article/7618177.html
最近正在听一门叫并行程序设计的课程,课上介绍了程序并行化的分析以及OpenMP的使用,在C/C++代码中使用OpenMP可以将程序代码中比较耗时的操作(如循环体)并行化,感觉就是编译器在编译的时候对代码做了处理,开多个线程执行同一块代码段,至于能否并行处理需要分析代码语句间的依赖关系(主要就是流依赖和反依赖关系),在最新的gcc4.9.1编译器中已经支持OpenMP
v4.0标准了。
看起来挺好玩的,而且连gcc都支持了,果断捣鼓一下。关于OpenMP的相关知识可以自行google学习,官网在这里http://openmp.org/wp/。还有另一种用得比较多的并行编程技术MPI,搭建MPI开发环境也是挺麻烦的,下一篇文章将讲解在Eclipse上搭建MPI开发环境。本文将介绍如何在Eclipse上编写OpenMP的并行程序。
首先,下载这个版本的Eclipse:http://www.eclipse.org/downloads/packages/eclipse-parallel-application-developers/lunasr1
这个版本要求jdk1.7以上,所以可以到这里下载最新的jdk:http://www.oracle.com/technetwork/java/javase/downloads/index.html
安装完了jdk在cmd窗口输入javac命令看能不能识别,如果显示不是命令则需要配置JAVA_HOME,百度一下怎么配置吧。能识别javac命令并打印出来一堆东西的话就不用配置了。
jdk安装配置完了如果运行不了上面的Eclipse,把eclipse文件夹里的eclipse.ini里最后两个参数改小一点:
我这里是512和1024,可以都改成512试试。
eclipse准备完毕了,然后下载这个版本的gcc:http://tdm-gcc.tdragon.net/download
下载的时候看清楚32位和64位的。
下载完了点击安装,我的安装路径是C:\TDM-GCC-64:
这时候在cmd输入gcc回车如果提示没有输入文件就没有问题了,否则自己在环境变量里path添加路径。
接下来,最重要的一步:
下载http://tdm-gcc.tdragon.net/download网站里的这个包含OpenMP库的压缩包:
32位系统的下载这个:
64位系统下载这个:
下载完了后解压看到这些文件:
将这些文件全部选择,复制。在这里粘贴:
选择是,合并文件夹。
到这里就已经完成OpenMP开发环境的搭建了,接下来打开Eclipse新建一个OpenMP应用程序吧~~
选择OpenMP工程,在这里新建的是C语言的工程,编译用的gcc,后面会讲到怎么在C++工程里也是用OpenMP。
然后右键工程,Build Project:
接下来右键Run As:
看看输出结果吧~~
上面只是一个初步介绍,不知道有没有发现在新建工程时没有提供C++ OpenMP选项,如果要在C++工程中使用OpenMP怎么办呢?其实在新建项目的时候没有必要按照上面的要求来,可以新建一个任意的C或C++工程。只要设置编译和链接参数即可。接下来新建一个C++ HelloWorld程序并使用OpenMP。
在刚才新建项目的选项中选择Hello World C++ Project:
把源文件代码改成这样:
然后右键工程—>属性(Properties),在下面这里选择C++编译器,在g++后面加入编译参数
(注意"-fopenmp"和"g++"之间有个空格!)
同样,在C++链接器里也需要加入同样的参数:
OK之后就可以build项目然后运行了~~
最近正在听一门叫并行程序设计的课程,课上介绍了程序并行化的分析以及OpenMP的使用,在C/C++代码中使用OpenMP可以将程序代码中比较耗时的操作(如循环体)并行化,感觉就是编译器在编译的时候对代码做了处理,开多个线程执行同一块代码段,至于能否并行处理需要分析代码语句间的依赖关系(主要就是流依赖和反依赖关系),在最新的gcc4.9.1编译器中已经支持OpenMP
v4.0标准了。
看起来挺好玩的,而且连gcc都支持了,果断捣鼓一下。关于OpenMP的相关知识可以自行google学习,官网在这里http://openmp.org/wp/。还有另一种用得比较多的并行编程技术MPI,搭建MPI开发环境也是挺麻烦的,下一篇文章将讲解在Eclipse上搭建MPI开发环境。本文将介绍如何在Eclipse上编写OpenMP的并行程序。
首先,下载这个版本的Eclipse:http://www.eclipse.org/downloads/packages/eclipse-parallel-application-developers/lunasr1
这个版本要求jdk1.7以上,所以可以到这里下载最新的jdk:http://www.oracle.com/technetwork/java/javase/downloads/index.html
安装完了jdk在cmd窗口输入javac命令看能不能识别,如果显示不是命令则需要配置JAVA_HOME,百度一下怎么配置吧。能识别javac命令并打印出来一堆东西的话就不用配置了。
jdk安装配置完了如果运行不了上面的Eclipse,把eclipse文件夹里的eclipse.ini里最后两个参数改小一点:
我这里是512和1024,可以都改成512试试。
eclipse准备完毕了,然后下载这个版本的gcc:http://tdm-gcc.tdragon.net/download
下载的时候看清楚32位和64位的。
下载完了点击安装,我的安装路径是C:\TDM-GCC-64:
这时候在cmd输入gcc回车如果提示没有输入文件就没有问题了,否则自己在环境变量里path添加路径。
接下来,最重要的一步:
下载http://tdm-gcc.tdragon.net/download网站里的这个包含OpenMP库的压缩包:
32位系统的下载这个:
64位系统下载这个:
下载完了后解压看到这些文件:
将这些文件全部选择,复制。在这里粘贴:
选择是,合并文件夹。
到这里就已经完成OpenMP开发环境的搭建了,接下来打开Eclipse新建一个OpenMP应用程序吧~~
选择OpenMP工程,在这里新建的是C语言的工程,编译用的gcc,后面会讲到怎么在C++工程里也是用OpenMP。
然后右键工程,Build Project:
接下来右键Run As:
看看输出结果吧~~
上面只是一个初步介绍,不知道有没有发现在新建工程时没有提供C++ OpenMP选项,如果要在C++工程中使用OpenMP怎么办呢?其实在新建项目的时候没有必要按照上面的要求来,可以新建一个任意的C或C++工程。只要设置编译和链接参数即可。接下来新建一个C++ HelloWorld程序并使用OpenMP。
在刚才新建项目的选项中选择Hello World C++ Project:
把源文件代码改成这样:
#include <omp.h> #include <iostream> using namespace std; int main() { omp_set_num_threads(4); #pragma omp parallel cout << "!!!Hello World!!! from thread " << omp_get_thread_num() << endl; // prints !!!Hello World!!! return 0; }
然后右键工程—>属性(Properties),在下面这里选择C++编译器,在g++后面加入编译参数
(注意"-fopenmp"和"g++"之间有个空格!)
同样,在C++链接器里也需要加入同样的参数:
OK之后就可以build项目然后运行了~~
相关文章推荐
- MPI并行程序设计——Eclipse开发环境的搭建
- 并行程序开发之编译环境搭建(Ubuntu+Eclipse+CDT)
- 使用EclipseME+Eclipse3.0+J2METoolKit2.2 搭建 J2ME 开发环境
- 用Eclipse、Tomcat、Lomboz搭建jsp开发环境
- 用Eclipse3.2 + Myeclipse5.0GA + Tomcat5.5.17 + j2sdk1.5 搭建J2EE开发环境
- Eclipse j2ee开发环境的搭建
- 用Eclipse3.2 + Myeclipse5.0GA + Tomcat5.5.17 + j2sdk1.5 搭建J2EE开发环境
- Eclipse开发J2ME的环境搭建(文章链接收集)
- 搭建Eclipse+MyEclipse开发环境 摘自(soft.bokee.com/index.html)
- 使用Eclipse+RVDS 2.2搭建 ARM 开发环境
- 用Eclipse3.2 + Myeclipse5.0GA + Tomcat5.5.17 + j2sdk1.5 搭建J2EE开发环境
- 搭建Windows下基于Eclipse的PHP开发环境
- 搭建Eclipse C++开发环境
- 搭建Eclipse+MyEclipse开发环境
- 用Eclipse3.2 + Myeclipse5.0GA + Tomcat5.5.17 + j2sdk1.5 搭建J2EE开发环境
- Eclipse基本J2EE开发环境的搭建
- eclipse3.02+LomBoz+WebLogic7 搭建JSP开发环境!
- 搭建 Windows 下基于 Eclipse 的 PHP 开发环境
- 用Tomcat插件在Eclipse上搭建可跟踪调试的J2EE WEB开发环境
- Eclipse3.2中 Java Web 开发环境的搭建之LOMBOZ+TOMCA