文章目录
MPI是目前最重要的并行编程工具,它具有移植性好,功能强大,效率高等多种优点,而且有多种不同的免费,高效,实用的实现版本,几乎所有的并行计算机厂商都提供对它的支持,这是其它所有的并行编程环境都无法比拟的。MPI于1994年产生,虽然产生时间相对较晚,由于它吸收了其它多种并行环境的优点,同时兼顾性能、功能、移植性等特点,在短短的几年内便迅速普及,成为消息传递并行编程模式的标准,这也从一个方面说明了MPI的生命力和优越性。
MPI其实就是一个-库,共有上百个函数调用接口,在FORTRAN 77和C语言中可以直接对这些函数进行调用,MPI提供的调用虽然很多,但最常使用的只有6个,只要会使用FORTRAN 77或者是C,就可以比较容易地掌握MPI的基本功能,只需通过使用这6个函数就可以完成几乎所有的通信功能。由于Fortran90 和C++的使用也十分广泛 MPI后来又进一步提供对Fortran 90和C++的调用接口,这更提高的MPI的适用性根据我们的经验,只要掌握了FORTRAN77和C的程序员,哪怕一开始对MPI并行程序设计一无所知,只要通过一定的培训和练习,是可以很快掌握MPI的基本功能并通过使用它来编制并行程序的。
但是要全面掌握MPI,必须通过大量的练习并需要更长的时间…
这个的话没有太多教程,就算有可能也不是特别好,因为我找了好久,特别是多机,都说得比较模糊,我在尝试成功之后就把我的过程记录下来,应该没有太大问题。
常规
后续为常规安装步骤,使用默认配置选项,建立nemesis communication device和Hydra process manager针对C、C++、Fortran-77和Fortran-90(如果有编译器的话),但是没有报错和调试功能?如果make的时候使用VPATH,建立的process会占据本地disk为了speed。
需要的文件有
- mpich源码
- C编译器
- C++或Fortran编译器(如果你需要使用这些语言)
安装
下载mipch
点击此处下载mpich源码,我选择的是mpich-3.3 (stable release)(MPICH平台)
新建目录
将下载好的mpich-3.3.tar.gz复制到一个文件夹下,解压
tar xfz mpich-3.3.tar.gz
新建安装目录,这我就直接在我的文件夹里新建了
mkdir mpich-install
然后选择一个build目录,build将会非常快如果它在文件系统被配置和执行,如果能和资源目录分开也很好的,这个目录在安装成功之后会有一个examples
文件夹,里面是MPICH的示例程序,最好复制出来以便测试,不然重启之后tmp就清空了。
mkdir /tmp/mpich-3.3
配置
配置MPICH,切换至路径
cd /tmp/mpich-3.3/
执行配置程序
/home/kang/Desktop/mydir/MPICH/mpich-3.3/configure -prefix=/home/kang/Desktop/mydir/MPICH/mpi-install |& tee c.txt
此步骤可能会报错,比如我报错找不到任何Fortran编译器,两个解决措施,安装一个,或者忽略这个,我选择安装。
安装gfortran
sudo apt-get install gfortran
安装完之后再次执行上面的配置命令,在经过一堆Check之后,如果成功,会如下图所示
使用tee命令可以同时将显示在屏幕的内容输出到文件中
编译
make进行编译
make |& tee m.txt
或者make 2>&1 | tee m.txt
如果make完成了应该能看到下面的图
安装MPICH
执行下列命令进行安装
make install |& tee mi.txt