redream 发表于 2016-11-10 14:13:35

Ubuntu下LAMMPS的并行安装教程(最新版)

                                                                                                最近一直有些新人咨询如何在 Ubuntu下安装并行版的LAMMPS。尽管本人不推荐用ubuntu桌面版做并行计算(server版不错), 但还是想写一个帖子来回答这个问题。

网络上有很多教程教大家安装,但大多有点老旧了,跟不上LAMMPS版本的发展。官网上有ubuntu系统下的预编译版,但完全不推荐;因为LAMMPS包含的包很多,不需要所有的都安装上。全安装上,在一定程度上会影响到计算效率,这有点像你去旅游,背了很多根本用不到的沙袋走路。

在任何类Unix操作系统下安装软件,不外乎如下步骤:
1.检查依赖包 2. 安装没有的依赖包 3.按说明安装软件,并设置路径

下面就具体介绍安装步骤:

Ubuntu下安装LAMMPS并行版需要安装必要的依赖包,都包含哪些呢?你可以到你lammps源程序下的src/MAKE/MACHINES下找到Makefile.ubuntu文件; 用文本浏览软件打开它(命令行也行,比如less Makefile.ubuntu)。
你会看到前10行有依赖包的介绍。 2016版的如下(版本有变,可能依赖包会有变化,大家都可以找到这个文件打开看看):
----------------
# ubuntu = Ubuntu Linux box, g++, openmpi, FFTW3

# you have to install the packages g++, mpi-default-bin, mpi-default-dev,
# libfftw3-dev, libjpeg-dev and libpng12-dev to compile LAMMPS with this
# makefile
包含,g++编译器,如果你安装user发展的包,可能还要用到gfortran编译器; 并行包,mpi编译器,fftw库,图片打印输出库等。

1.      我们首先检查下依赖包:在命令行下 用 which命令进行检查是否存在。
执行: which gcc;which g++; which mpirun; which mpic++; which gfortran等。Fftw,jpeg,png等库要到/usr/include下查看有没有fftw3等相应的头文件。 有了就不需要再次安装,没有就需要先安装上。

2.      假定你上面的依赖包都没有(重复安装无所谓),请顺序执行下面命令: 【这些安装要su root下;LAMMPS安装不需要root权限】
a)      apt-get install gcc*
b)      apt-get install g++*
c)      apt-get install mpi-default-*
d)      apt-get install libfftw3*
e)      apt-get install libjpeg-*
f)      apt-get install libpng12-*
确保上面的库都安装上,安装过程中可以看到是否已经装上,没有的话,窗口会等待让你输入 yes

3.      上面包安装好后,进入到 lammps/src/MAKE下,把MACHINES下的 Makefile.ubuntu文件 复制到 MAKE下,这时,你看到MAKE下还有 .mpi, .serial两个Makefile文件。
4.      到src下执行make package-status查看有哪些包是yes态和no态;yes表示安装,no表示不安装。用make yes-包名或make no-包名, 加载/取消你安装的包。选择自己必要的包就行了。
5.      进入src下执行 make Ubuntu 命令,等待安装; 安装结束后,会生成一个lmp_ubuntu可执行程序,这个就是你要的了
6.      在你的家目录下(比如/home/zhangsan),执行mkdir bin见一个bin文件夹,并把lmp_ubuntu复制到此文件夹下; 然后 cd 到 家目录 vi .bashrc 文件。在此文件的最后一行 加入 export PATH=/home/zhangsan/bin:$PATH;保存并 source .bashrc。 最新执行 which lmp_ubuntu查看下是不是可以找到路径。可以的话,可结束安装了。


上面的步骤完成后,安装就结束了, 你可以cd 到 example下的例子中(比如 micelle下),执行 lmp_ubuntu < in.micelle 或者 mpirun -np 2 lmp_ubuntu < in.micelle 看看是否可以用。

Linux下软件的安装,根本在依赖包的安装和路径的设置,这些搞定,安装不会有障碍。


                  

xufund 发表于 2016-11-15 19:16:23

学习了。谢谢!
页: [1]
查看完整版本: Ubuntu下LAMMPS的并行安装教程(最新版)