在Ubuntu上安装消息传递接口Open MPI库的教程
在Ubuntu上安装消息传递接口Open MPI库的教程
发布时间:2016-12-27 来源:查字典编辑
摘要:OpenMPI是一种高性能消息传递库,最初是作为融合的技术和资源从其他几个项目(FT-MPI,LA-MPI,LAM/MPI,以及PACX-M...

OpenMPI是一种高性能消息传递库,最初是作为融合的技术和资源从其他几个项目(FT- MPI, LA-MPI, LAM/MPI, 以及 PACX-MPI),它是MPI-2标准的一个开源实现,由一些科研机构和企业一起开发和维护。因此,OpenMPI能够从高性能社区中获得专业技术、工业技术和资源支持,来创建最好的MPI库。OpenMPI提供给系统和软件供应商、程序开发者和研究人员很多便利。易于使用,并运行本身在各种各样的操作系统,网络互连,以及一批/调度系统。

Open MPI并不是LAM/MPI, LA-MPI和FT-MPI的简单组合,而是一种全新的MPI实现,其完全实现了MPI-1.2和MPI-2规约,并且完全支持并发和多线程应用(也就是MPI_THREAD_MULTIPLE)。

为了有效有效支持大范围的并行机,开发了高性能驱动程序,其中包括TCP/IP, shared memory, Myrinet, Quadrics, and Infiniband,更多的机器支持可能会基于用户、市场和研究需要而增加。对于网络传输错误,Open MPI提供了一种可选的特性来检测数据的完整性。通过使用报文分段和拆分到多个网络设计,Open MPI不仅可以达到可用带宽的最大值,而且当节点使用多台网络设备的时候,可以动态处理网络设备的数据丢失。

Open MPI的运行时环境提供了启动和管理并行应用的基本服务。

Ubuntu 安装 OpenMPI

1. 下载OpenMPI

在官网(http://www.open-mpi.org/software/)上下载最新版本的安装包,如:openmpi-1.8.4.tar.gz

2. 解压并进行配置

tar -zxvf openmpi-1.8.4.tar.gz

cd openmpi-1.8.4

./configure --prefix="/usr/local/openmpi"

注意最后一行是将其安装到 /usr/local/openmpi目录下,可以指定为其他目录,如,用户目录下。

3. Build 并安装

make

sudo make install

可以在make后加参数-j8, 表示用8核编译

4. 添加环境变量

在.bashrc文件中添加下列几行

export PATH="$PATH:/usr/local/openmpi/bin"

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/openmpi/lib/"

保存后,执行

sudo ldconfig

打开新的终端,使环境变量生效。

5. 测试是否安装成功

mpirun

其他

Open MPI使用简单C语言面向对象系统实现,使用基于单一继承和引用计数的retain/release内存管理模型。一个object由一个结构体和单一实例化的class标识符组成。结构体的首个元素一个是指定父类结构体的指针。

宏指令会对C++类似的语义(如new, construct, destruct, delete)产生影响。因为C++项目的丰富经验和某些平台编译方面的问题,使得在开发Open MPI使用了面向对象方法,而不是直接使用C++。

一旦构造,对象引用计数被设置为1。当对象retain,计数递增,当对象release,计数递减。当计数到达0,会运行对象的析构器并释放内存。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Ubuntu/Debian学习
热门Ubuntu/Debian学习
操作系统子分类