linux默认编译多核,[转载]【原创】Linux下安装单机多核并行lammps(附meam包)

总结:Linux下安装单机并行lammps

○.机器配置:

1.处理器:Intel XEON × 2

2.主板:Intel S5500BC

3.内存:金士顿4G × 6

4.操作系统:Redhat Enterprise 5.3 x86_64

一.下载需要的源文件

fftw-2.1.5.tar.gz

mpich2-1.0.2p1.tar.gz

lammps-1Dec10.tar.gz

并以root身份(以下均在root下)拷贝到

/usr/local/src目录下

二.安装FFTW

# tar

xvzf fftw-2.1.5.tar.gz

# cd

fftw-2.1.5

#

./configure --prefix=/opt/mathlib/fftw215-gnu

--enable-float

#

make

# make

install

三.安装MPICH2

# tar

xvzf mpich2-1.0.2p1.tar.gz

# cd

mpich2-1.0.2p1

#

./configure --prefix=

/opt/mpich2-gnu

#

make

# make

install

如果不出错,应该就是安装成功了。接下来的工作时进行配置。

MPI应用一个管理器来管理运行MPI程序,这个管理器就是mpd,但是在正式开始运行mpd前还需要一个基于安全考虑的配置文件.mpd.conf,这个文件是要放在运行程序的用户的home目录下,本例子中就是/home/mpi/.mpd.conf,而且这个文件只能由这个用户读写,创建文件的命令是,

# cd $HOME

# touch .mpd.conf

# chmod 600 .mpd.conf

什么意思,我暂时也不太清楚,但是就这么做就可以了。

四.安装lammps,附带meam包

# tar

xvzf lammps-1Dec10.tar.gz

# cd lammps-1Dec10/cd lib/meam/

# make -f Makefile.gfortran(intall meam, you

can also choose other versions)

# cd ../src/MAKE

# vim Makefile.g++  (edit the Makefile)

***********************************Makefile.g++

beginn**********************************

(说明:红色字表示改动或添加的部分)

# g++ = RedHat Linux box, g++4, gfortran, MPICH2, FFTW

SHELL = /bin/sh

#

---------------------------------------------------------------------

# compiler/linker settings

# specify flags and libraries needed for your compiler

CC =  g++

CCFLAGS =  -g -O -DFFT_FFTW

-DLAMMPS_GZIP -DMPICH_IGNORE_CXX_SEEK

-I/opt/mathlib/fftw215-gnu/include

-I/opt/mpich2-gnu/include

-I../../lib/meam

DEPFLAGS =  -M

LINK =  g++

LINKFLAGS =  -g -O

-L/opt/mathlib/fftw215-gnu/lib

-L/opt/mpich2-gnu/lib

-L../../lib/meam

LIB =

ARCHIVE =  ar

ARFLAGS =  -rc

SIZE =  size

#

---------------------------------------------------------------------

# LAMMPS-specific settings

# specify settings for LAMMPS features you will use

# LAMMPS ifdef options, see doc/Section_start.html

LMP_INC =  -DLAMMPS_GZIP

# MPI library, can be src/STUBS dummy lib

# INC = path for mpi.h, MPI compiler settings

# PATH = path for MPI library

# LIB = name of MPI library

MPI_INC =  -DMPICH_SKIP_MPICXX

MPI_PATH =

MPI_LIB =  -lmpich -lpthread

# FFT library, can be -DFFT_NONE if not using PPPM from KSPACE

package

# INC = -DFFT_FFTW, -DFFT_INTEL, -DFFT_NONE, etc, FFT compiler

settings

# PATH = path for FFT library

# LIB = name of FFT library

FFT_INC =  -DFFT_FFTW

FFT_PATH =  -I/opt/mathlib/fftw215-gnu/include

FFT_LIB =  -lfftw

# additional system libraries needed by LAMMPS package

libraries

# these settings are IGNORED if the corresponding LAMMPS

package

#  (e.g. gpu, meam) is NOT included in the

LAMMPS build

# SYSLIB = names of libraries

# SYSPATH = paths of libraries

gpu_SYSLIB =  -lcudart

meam_SYSLIB =  -lgfortran -lmeam

-lpthread

reax_SYSLIB =  -lgfortran

user-atc_SYSLIB =  -lblas -llapack

gpu_SYSPATH =  -L/usr/local/cuda/lib64

meam_SYSPATH =  -L../../lib/meam

reax_SYSPATH =

user-atc_SYSPATH =

……以下省略……

***********************************Makefile.g++

end**********************************

# make

clean-all (清除临时文件,如果你之前已经编译过lammps,需要执行此操作)

# make

yes-MEAM (告诉lammps要编译meam

package)

# make

g++

经过数十秒的字符流闪屏,如果没有出现意外,应该会在当前目录(src)下生成lmp_g++文件。

恭喜你!你已经成功安装lammps!

使用make

package-status可以查询meam是否正确安装。

Installed  NO: package ASPHERE

Installed  NO: package CLASS2

Installed  NO: package COLLOID

Installed  NO: package DIPOLE

Installed  NO: package DSMC

Installed  NO: package GPU

Installed  NO: package GRANULAR

Installed YES: package KSPACE

Installed YES: package MANYBODY

Installed YES: package MEAM

Installed YES: package MOLECULE

Installed  NO: package OPT

Installed  NO: package PERI

Installed  NO: package POEMS

Installed  NO: package REAX

Installed  NO: package REPLICA

Installed  NO: package SHOCK

Installed  NO: package SRD

Installed  NO: package XTC

Installed  NO: package USER-ACKLAND

Installed  NO: package USER-ATC

Installed  NO: package USER-CD-EAM

Installed  NO: package USER-CG-CMM

Installed  NO: package USER-EFF

Installed  NO: package USER-EWALDN

Installed  NO: package USER-IMD

Installed  NO: package USER-REAXC

Installed  NO: package USER-SMD

五. 运行lammps

为了方便运行lammps,将lammps添加到路径中。这里我通过添加ln命令实现。

# cd /usr/local/bin (这里,我默认已经将该目录添加到路径了。)

# ln -s

/usr/local/src/lammps-1Dec10/lmp_g++

然后就可以尝试运行一个例子:

cd到example/meam目录下

# lmp_g++

如果是要并行运行,可以输入:

# mpd &(开机只输入一次就行了)

# mpirun -np 4 lmp_g++

参考:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值