Micro and Nano Mechanics Group

LAMMPS compilation on cluster

Yanming Wang

June, 2014




This page discusses how to compile LAMMPS on the clusters at Stanford. An executable file can be created for running MD simulation with MEAM potential following this instruction. Before we start to compile LAMMPS, we assume the LAMMPS package was downloaded from our svn server and was unzipped into the directory Codes/LAMMPS.svn/.


Contents

LAMMPS on mc2

The following command can be used to checkout a specific reversion of LAMMPS from our svn server.

svn checkout -r 23 http://micro.stanford.edu/svn/LAMMPS ~/Codes/LAMMPS.svn/

1. Copy Makefile.mc2 into Codes/LAMMPS.svn/src/MAKE/ directory using the following commands

cd ~/Codes/LAMMPS.svn
wget http://micro.stanford.edu/mediawiki/images/f/fb/Makefile.mc2.txt -O ./src/MAKE/Makefile.mc2 


2. In any directory, type the following command

Export TARGET=mc2

3. In your home directory, make a folder named usr

mkdir ~/usr 

4. Download the fftw library and unzip it using the following commands

cd ~/usr
wget http://micro.stanford.edu/mediawiki/images/9/9e/Fftw.tar -O fftw.tar
tar –zxvf fftw.tar

5. Make sure you have the modules for using icc and mpi complier, you can load the modules by adding the below two lines to your bash_profile file.

vi ~/.bash_profile (You can use whatever text editor to open the file and add the following lines)
module load intel/intel-11
module load mvapich/1.2rc1-intel-11-dell-gen2 

Save the file and log out. Next time when you log in, the compilers should work for you.

To confirm the compiler is ready, you can inquiry the location of the compiler by typing

which icc
which mpicc

This will tell you where are the compilers.

6. Go to LAMMPS.svn directory

cd ~/Codes/LAMMPS.svn
make clean
make

This will make the executable file lmp_mc2 in LAMMPS.svn/src directory.

LAMMPS on WCR

The system of WCR was rebuilt in June 2014 and the new Intel 14 compiler and MVAPICH2 wrappers were introduced onto the cluster. After this update, the old version LAMMPS on our svn server (before revision 24) cannot compile anymore. Accordingly, we updated a new version svn LAMMPS based on the Feb1-2014 package from the official LAMMPS website. The following command can be used to download this LAMMPS package to your current directory.

svn checkout -r 24 https://micro.stanford.edu/svn/LAMMPS ./

The compilation can be accomplished by the following steps.

1. Revise the ~/.bashrc file to add the needed modules for Intel 14 and MVAPICH2 compiler by adding the following words at the end of your ~/.bashrc file. You need to logout and re-login for the changes to take effect.

module load null intel/14 mvapich2/2.0rc1-intel-14

2. Install the FFTW library. First, in your home directory, make a folder named usr

mkdir ~/usr 

Then download the fftw library and unzip it using the following commands

cd ~/usr
wget http://micro.stanford.edu/mediawiki/images/9/9e/Fftw.tar -O fftw.tar
tar –zxvf fftw.tar

3. If you only want to build LAMMPS with basic packages, you can do the followings.

cd ~/Codes/LAMMPS.svn/src/
make wcr

This will make the executable lmp_wcr in LAMMPS.svn/src directory. To speed up the compilation, you can use the "-j" switch with the make command.

4. If you want to build LAMMPS with optional packages, e.g., MEAM, see the below section. First, type the following command. This will build the needed library for MEAM.

cd ~/Codes/LAMMPS.svn/lib/meam/
make -f Makefile.ifort

Then, go to the /src folder and install the meam package.

cd ~/Codes/LAMMPS.svn/src/
make yes-meam

Finally, do the compilation.

cd ~/Codes/LAMMPS.svn/src/
make -j wcr

You should get the executable lmp_wcr when the build is complete.

LAMMPS compilation on WCR before June 2014

1. Open Codes/LAMMPS.svn/Makefile file, add the following line below SYS = $(TARGET)

libFC.wcr = ifort

2. Copy Makefile.wcr into Codes/LAMMPS.svn/src/MAKE/ directory using the following commands/

cd ~/Codes/LAMMPS.svn
wget http://micro.stanford.edu/mediawiki/images/8/80/Makefile.wcr.txt -O ./src/MAKE/Makefile.wcr

3. In any directory, type the following command

Export TARGET=wcr

4. In your home directory, make a folder named usr

mkdir ~/usr

5. Download the fftw library and unzip it using the following commands

cd ~/usr
wget http://micro.stanford.edu/mediawiki/images/9/9e/Fftw.tar -O fftw.tar
tar –zxvf fftw.tar

6. Choose the modules for the compliers. The following command can list the available modules on the cluster.

module avail

And the below command can give you the names of the modules you are currently using

module list

By default, one module is intel/intel-9, and we need to change it to intel/intel-11, which can be done by typing the commands.

module rm intel/intel-9
module load intel/intel-11

Still, you can make changes to your bash_profile to let the system load the modules automatically for you. So the following lines could be added to your ~/.bash_profile file.

module rm intel/intel-9
module load intel/intel-11
module load mvapich/1.2RC1-intel-11-gen2  

7. Go to LAMMPS.svn directory

cd ~/Codes/LAMMPS.svn
make clean
make

This will make lmp_wcr in LAMMPS.svn/src directory.

References

The below webpages would be useful when you are new to using the clusters.

https://www.stanford.edu/group/hpcc/cgi-bin/mediawiki/index.php/Main_Page

https://www.stanford.edu/group/hpcc/cgi-bin/mediawiki/index.php/I%27m_new_%26_don%27t_know_what_to_do

https://www.stanford.edu/group/hpcc/cgi-bin/mediawiki/index.php/New_to_Cluster_Computing