Last modified: September 07 2020.
Contact: hpchelp [at] iitd.ac.in

LAMMPS

Description : Having LAMMPS CPM + all the packages except vtk , compiled with intel 2018, cuda 10.0


Binaries Available:

CPU :

lmp_mpi_cpu
Haswell GPU K40 :
lmp_mpi_gpu_k40
Skylake GPU V100 :
lmp_mpi_gpu_v100


Use Module:

module load apps/lammps/intel/7Aug19

Note:

Please read each comment carefully. Change project name,resources,input file name, queue, Input File Name etc. In case of GPU job the value after -pk gpu must be equal to ngpus value. Refer any of the below mentioned qsub statement as per the type of job you want to submit.

  1. Interactive Job Submission
  2. CPU Job
    qsub -I -P cc -q standard -N LAMMPS_7AUG19 -lselect=1:ncpus=10 -lwalltime=00:30:00 -lsoftware=LAMMPS

    After getting the resources:

    module load apps/lammps/intel/7Aug19
    mpirun  -np $PBS_NTASKS  lmp_mpi_cpu -in in.lj
    NVIDIA K40 GPU Job
    qsub -I -P cc -q standard -N LAMMPS_7AUG19 -lselect=1:ncpus=10:ngpus=1:centos=haswell -lwalltime=00:30:00 -lsoftware=LAMMPS

    After getting the resources:

    module load apps/lammps/intel/7Aug19
    mpirun -np $PBS_NTASKS lmp_mpi_gpu_k40 -sf gpu -pk gpu 1 -in in.lj
    NVIDIA V100 GPU Job
    qsub -I -P cc -q standard -N LAMMPS_7AUG19 -lselect=1:ncpus=10:ngpus=1:centos=skylake -lwalltime=00:30:00 -lsoftware=LAMMPS

    After getting the resources:

    module load apps/lammps/intel/7Aug19
    mpirun -np $PBS_NTASKS lmp_mpi_gpu_v100 -sf gpu -pk gpu 1 -in in.lj

  3. Batch Job Submission
  4. Copy sample batch job submission script i.e lammpsSubmit.sh from /home/apps/skeleton/lammpsSubmit.sh

    Submit job using :
    qsub lammpsSubmit.sh
    ------------- lammpsSubmit.sh -------------------------------------------
    #!/bin/sh
    #PBS -N LAMMPS_7AUG19
    ## Change Project Name,Queue,Resources,Walltime,Input File Name etc.
    #PBS -P cc
    #PBS -q standard
    #PBS -M $USER@iitd.ac.in
    #PBS -m bea
    #########################################
    ## Refer any of the below mentioned select statemnt
    ## as per the type of job you want to submit
    ## Keep single # before PBS to consider it as command ,
    ## more than one # before PBS considered as comment.
    ## any command/statement other than PBS starting with # is considered as comment.
    ## Please comment/uncomment the portion as per your requirement before submitting job
    
    
    ## CPU JOB
    #PBS -l select=1:ncpus=10
    
    ## K40 GPU JOB
    ##PBS -lselect=1:ncpus=10:ngpus=1:centos=haswell
    
    ## V100 GPU JOB
    ##PBS -lselect=1:ncpus=10:ngpus=1:centos=skylake
    
    #PBS -l walltime=00:30:00
    #PBS -l software=LAMMPS
    
    export OMP_NUM_THREADS=1
    
    ## Environment
    echo "==============================="
    echo $PBS_JOBID
    cat $PBS_NODEFILE
    echo "==============================="
    cd $PBS_O_WORKDIR
    
    module purge
    module load apps/lammps/intel/7Aug19
    
    ## CPU JOB
    mpirun -np $PBS_NTASKS lmp_mpi_cpu -in in.lj
    
    ## K40 GPU JOB
    #mpirun -np $PBS_NTASKS lmp_mpi_gpu_k40 -sf gpu -pk gpu 1 -in in.lj
    

    Explanation :

    -np  		         	#number of MPI processes
    -in input_file_name			#input file name