1 背景(introduction):
安装lammps是为了跑一些分子动力学模拟,学校用的应该是曙光的服务器(ui界面比较像),然后安装软件参考的教程是曙光官方的教程,虽然很有参考意义,但是确实是过时了,安装时走了很多弯路,记录一下。(如果没有linux基础知识,建议先熟悉一下操作,不然会云里雾里)
tips: 请阅读者先熟悉 linux,vim相关操作
曙光官方教程:https://ac.sugon.com/doc/1.0.6/30000/general-handbook/compile/Lammps.html
2 编辑系统已有软件环境(使用module)
tips:如果不了解module可以先去了解一下(大概理解就行,无所谓,实在不明白就跟着一步一步做也没关系)
module list # 查看当前环境下的已有软件,如果刚开始,应该是空的,不是空的就输入“module purge”
module av # 查看可用的软件和编译配置
module load compiler/intel/2021.3.0 #加载Intel编译器
module load mpi/intelmpi/2021.3.0 #加载Intelmpi并行
module load mathlib/fftw/intelmpi/3.3.9_double #加载fftw数学库
module load compiler/cmake/3.20.1 #!!!这里需要注意一下,如果你没有cmake,直接自己安装一个,具体教程安装官网来就行。(版本号必须大于3.16)
module list # 查看当前环境下加载的包,注意尽量别有别的,尤其是GCC,它和intel编译器会冲突
我的module av长这样:
接下来需要更改默认编译器:
vim ~/.bashrc # 查看环境变量,如果之前安装过gcc,尽量先注释掉gcc的环境变量
在.bashrc文件中输入以下两句话:
export CC=icc
export CXX=icpc
回到命令行:
source ~/.bashrc # source一下,使环境变量生效,或者重启
# 接下来查看设置是否成功
echo $CC # 输出应该是 icc
echo $CXX # icpc
到这里,编译环境就算是这是完成了,开始安装吧!!
3 安装(install) lammps
tips:首先,建议查看官方文档,了解每条命令的作用,当然这个命令真的很难找(要死了呜呜┭┮﹏┭┮)(但是收获很大)
官方文档地址:https://docs.lammps.org/Install_tarball.html
3.1 下载lammps软件包
安装包网页地址:https://www.lammps.org/download.html
方式1 : 直接下载安装包,然后通过高性能平台的文件管理上传到服务器(或者有能力的也可以使用 putty+Filezilla)
方式2(小白推荐):
打开一个你不用的文件夹,然后输入:
wget https://download.lammps.org/tars/lammps-stable.tar.gz # 一般linux都预装了这个,如果没有就必应搜索安装一下
下载完解压一下安装包:
tar -xzvf lammps-stable.tar.gz -C "在这填目标目录" #写相对路径就可以
3.2 编译源代码
参考文档:https://docs.lammps.org/Build_cmake.html
我的安装目录是:~/soft/,之后我以这个路径为例
cd ~/soft/lammps-2Aug2023/ #进入安装的源代码目录
mkdir build # 建立编译目录,这个是编译源代码正常的环节
cd build
在这里我使用的编译器是intel,且服务器的GPU是nvidia A800,虽然安装的时候是没有GPU的,但是这并不妨碍我安装GPU版本,如果你想安装CPU版本,也可以:
# intel GPU版本,如果你的显卡不是A800,你还需要调一下我下面命令中的"sm_xx",可以参考这个网址:https://zhuanlan.zhihu.com/p/631850036,这个得多搜一搜,难蚌
cmake -C ../cmake/presets/intel.cmake -D BUILD_GPU=on -D GPU_API=cuda -D GPU_ARCH=sm_80 -D CMAKE_C_COMPILER=icc -D CMAKE_CXX_COMPILER=icpc ../cmake
#上述命令中的"../cmake/presets/intel.cmake"是关键,用于更改编译版本的编译器
#intel cpu版本
cmake -C ../cmake/presets/intel.cmake -D CMAKE_C_COMPILER=icc -D CMAKE_CXX_COMPILER=icpc ../cmake
#
cmake --build .
# 注意上边的命令最后有个点
make install
到这里就算结束了
4 检验与安装package
tips: package的中文是“包”,但是我感觉可能不太贴切,有点像c++中的头文件,库文件,python中的包,大概就是这个意思
4.1 检验
输入:
lmp -i
大概显示以下界面就成功了:
4.2 安装
进入 ~/soft/lammps-2Aug2023/src目录:
cd ~/soft/lammps-2Aug2023/src
make yes-all # 安装所有包(都不大)
make no-lib # 去掉需要其他依赖的库
make package #查看一些别的package之类的
具体的build package,看官方文档的3.6.3:https://docs.lammps.org/Build_package.html:
package的具体信息:https://docs.lammps.org/Packages_details.html
写在文末:
看到这里,就麻烦点个赞啦!(球球了)
如果你有任何安装问题,也欢迎发邮件到我的邮箱询问,我会在一周内回复。
邮箱地址:[email protected] (lfh后面的数字是qq)