LAMMPS 29Aug2024
Webpage
Version
29Aug2024
Build Environment
- GCC 13.1.1 (gcc-toolset-13)
- Intel MPI 2021.13
- GSL 2.8
Files Required
- lammps-stable_29Aug2024.tar.gz
- MDI_Library-1.4.29.tar.gz
- n2p2-2.2.0.tar.gz
- (some of files will be downloaded in the procedure below)
Build Procedure
N2P2 2.2.0 (simplified)
$ module -s purge
$ module -s load gcc-toolset/13
$ module -s load intelmpi/2021.13
$ module -s load gsl/2.8
$ cd /apl/lammps/2024-Aug29
$ tar zxvf n2p2-2.2.0.tar.gz
$ cd n2p2-2.2.0/src
$ make INTERFACES=LAMMPS COMP=gnu PROJECT_CC=g++ PROJECT_MPICC=mpicxx PROJECT_CFLAGS="-O3 -march=native -std=c++11 -fPIC" APP_CORE=nnp-convert APP_TRAIN=nnp-train APP=nnp-convert -j8
- (automatic build by LAMMPS does not work well)
- -fPIC seems to be necessary
- installing only "include" and "lib" directories does not work. The n2p2 tarball was expanded to the lammps directory.
MDI 1.4.29 (simplified)
$ tar xf MDI_Library-1.4.29.tar.gz
$ cd MDI_Library-1.4.29
$ mkdir build && cd build
$ cmake .. -DCMAKE_INSTALL_PREFIX=/apl/lammps/2024-Aug29/mdi-1.4.29 -DPython_EXECUTABLE=/usr/bin/python3.6m -DPython_INCLUDE_DIR=/usr/include/python3.6m
$ make -j8
$ make install
- (There was a problem in Python specification in case of autobuild by lammps. Python_EXECUTABLE etc. won't be passed to cmake of MDI?)
LAMMPS
#!/bin/sh
VERSION=2024-Aug29
NAME=lammps-stable_29Aug2024
INSTALL_PREFIX=/apl/lammps/${VERSION}BASEDIR=/home/users/${USER}/Software/LAMMPS/${VERSION}
LAMMPS_TARBALL=${BASEDIR}/${NAME}.tar.gzWORKDIR=/gwork/users/${USER}
LAMMPS_WORKDIR=${WORKDIR}/${NAME}FFMPEG_BIN=/apl/ffmpeg/6.1/bin/ffmpeg
VMD_MOLFILE_INC=/home/users/${USER}/Software/VMD/1.9.4/vmd-1.9.4a57/plugins/include
GSL_ROOT=/apl/gsl/2.8
MDI_ROOT=/apl/lammps/2024-Aug29/mdi-1.4.29
N2P2_ROOT=/apl/lammps/2024-Aug29/n2p2-2.2.0
PARALLEL=12#------------------------------------------------------------------
umask 0022
export LANG=C
ulimit -s unlimitedmodule -s purge
module -s load gcc-toolset/13
module -s load intelmpi/2021.13
module -s load gsl/2.8PYTHONEXE=/usr/bin/python3.6m
PYTHONINC=/usr/include/python3.6m
export CPATH="${MDI_ROOT}/include/mdi:${CPATH}"
export LIBRARY_PATH="${MDI_ROOT}/lib64/mdi:${LIBRARY_PATH}"
export LD_LIBRARY_PATH="${MDI_ROOT}/lib64/mdi:${LD_LIBRARY_PATH}"cd ${WORKDIR}
if [ -d ${NAME} ]; then
mv ${NAME} lammps_erase
rm -rf lammps_erase &
fitar zxf ${LAMMPS_TARBALL}
cd ${NAME}
mkdir build && cd build
# Disabled PKGs:
# ADIOS, VTK: noavail
# GUI: to avoid complicated dependecies
# KIM: CDDL is imcompatible with GPL
# INTEL: not necessary for gcc build
# ML-IAP: compilation error
cmake ../cmake \
-DLAMMPS_MACHINE=rccs \
-DENABLE_TESTING=on \
-DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
-DCMAKE_C_COMPILER=gcc \
-DCMAKE_CXX_COMPILER=g++ \
-DCMAKE_Fortran_COMPILER=gfortran \
-DCMAKE_MPI_C_COMPILER=mpicc \
-DCMAKE_MPI_CXX_COMPILER=mpicxx \
-DCMAKE_MPI_Fortran_COMPILER=mpif90 \
-DCMAKE_C_FLAGS_RELEASE="-O3 -DNDEBUG" \
-DCMAKE_CXX_FLAGS_RELEASE="-O3 -DNDEBUG" \
-DCMAKE_Fortran_FLAGS_RELEASE="-O3 -DNDEBUG" \
-DPython_EXECUTABLE=${PYTHONEXE} \
-DPython_INCLUDE_DIR=${PYTHONINC} \
-DGSL_ROOT_DIR=${GSL_ROOT} \
-DBUILD_SHARED_LIBS=on \
-DBUILD_TOOLS=on \
-DBUILD_MPI=on \
-DBUILD_OMP=on \
-DBUILD_LAMMPS_GUI=off \
-DFFT=FFTW3 \
-DFFT_SINGLE=on \
-DFFT_FFTW_THREADS=on \
-DWITH_JPEG=on \
-DWITH_PNG=on \
-DWITH_GZIP=on \
-DWITH_FFMPEG=on \
-DFFMPEG_EXECUTABLE=${FFMPEG_BIN} \
-DPKG_ADIOS=off \
-DPKG_AMOEBA=on \
-DPKG_ASPHERE=on \
-DPKG_ATC=on \
-DPKG_AWPMD=on \
-DPKG_BOCS=on \
-DPKG_BODY=on \
-DPKG_BPM=on \
-DPKG_BROWNIAN=on \
-DPKG_CG-DNA=on \
-DPKG_CG-SPICA=on \
-DPKG_CLASS2=on \
-DPKG_COLLOID=on \
-DPKG_COLVARS=on \
-DPKG_COMPRESS=on \
-DPKG_CORESHELL=on \
-DPKG_DIELECTRIC=on \
-DPKG_DIFFRACTION=on \
-DPKG_DIPOLE=on \
-DPKG_DPD-BASIC=on \
-DPKG_DPD-MESO=on \
-DPKG_DPD-REACT=on \
-DPKG_DPD-SMOOTH=on \
-DPKG_DRUDE=on \
-DPKG_EFF=on \
-DPKG_ELECTRODE=on \
-DPKG_EXTRA-COMMAND=on \
-DPKG_EXTRA-COMPUTE=on \
-DPKG_EXTRA-DUMP=on \
-DPKG_EXTRA-FIX=on \
-DPKG_EXTRA-MOLECULE=on \
-DPKG_EXTRA-PAIR=on \
-DPKG_FEP=on \
-DPKG_GPU=off \
-DPKG_GRANULAR=on \
-DPKG_H5MD=on \
-DPKG_INTEL=off \
-DPKG_INTERLAYER=on \
-DPKG_KIM=off \
-DDOWNLOAD_KIM=off \
-DPKG_KOKKOS=on \
-DKokkos_ARCH_ZEN3=on \
-DKokkos_ENABLE_OPENMP=on \
-DPKG_KSPACE=on \
-DPKG_LATBOLTZ=on \
-DPKG_LEPTON=on \
-DPKG_MACHDYN=on \
-DDOWNLOAD_EIGEN3=on \
-DPKG_MANIFOLD=on \
-DPKG_MANYBODY=on \
-DPKG_MC=on \
-DPKG_MDI=on \
-DDOWNLOAD_MDI=off \
-DPKG_MEAM=on \
-DPKG_MESONT=on \
-DPKG_MGPT=on \
-DPKG_MISC=on \
-DPKG_ML-HDNNP=on \
-DDOWNLOAD_N2P2=off \
-DN2P2_DIR=${N2P2_ROOT} \
-DPKG_ML-IAP=off \
-DMLIAP_ENABLE_PYTHON=off \
-DPKG_ML-PACE=on \
-DPKG_ML-POD=on \
-DPKG_ML-QUIP=on \
-DDOWNLOAD_QUIP=on \
-DPKG_ML-RANN=on \
-DPKG_ML-SNAP=on \
-DPKG_ML-UF3=on \
-DPKG_MOFFF=on \
-DPKG_MOLECULE=on \
-DPKG_MOLFILE=on \
-DMOLFILE_INCLUDE_DIR=${VMD_MOLFILE_INC} \
-DPKG_NETCDF=on \
-DPKG_OPENMP=on \
-DPKG_OPT=on \
-DPKG_ORIENT=on \
-DPKG_PERI=on \
-DPKG_PHONON=on \
-DPKG_PLUGIN=on \
-DPKG_PLUMED=on \
-DDOWNLOAD_PLUMED=on \
-DPKG_POEMS=on \
-DPKG_PTM=on \
-DPKG_PYTHON=on \
-DPKG_QEQ=on \
-DPKG_QMMM=on \
-DPKG_QTB=on \
-DPKG_REACTION=on \
-DPKG_REAXFF=on \
-DPKG_REPLICA=on \
-DPKG_RHEO=on \
-DPKG_RIGID=on \
-DPKG_SCAFACOS=on \
-DDOWNLOAD_SCAFACOS=on \
-DPKG_SHOCK=on \
-DPKG_SMTBQ=on \
-DPKG_SPH=on \
-DPKG_SPIN=on \
-DPKG_SRD=on \
-DPKG_TALLY=on \
-DPKG_UEF=on \
-DPKG_VORONOI=on \
-DDOWNLOAD_VORO=on \
-DPKG_VTK=off \
-DPKG_YAFF=on \
-DBLA_VENDOR=OpenBLAS \
-DCMAKE_BUILD_TYPE=Release
make VERBOSE=1 -j ${PARALLEL}
export OMP_NUM_THREADS=2make test
make installcp -a ../examples ${INSTALL_PREFIX}
cd ${INSTALL_PREFIX}
for f in etc/profile.d/*; do
if [ -f $f ]; then
ln -s $f .
fi
done
cd lib64
if [ -f liblammps_rccs.so ]; then
ln -s liblammps_rccs.so liblammps.so
fi
if [ -f liblammps_rccs.so.0 ]; then
ln -s liblammps_rccs.so.0 liblammps.so.0
fi
Enabled Packages
AMOEBA ASPHERE ATC AWPMD BOCS BODY BPM BROWNIAN CG-DNA CG-SPICA CLASS2 COLLOID
COLVARS COMPRESS CORESHELL DIELECTRIC DIFFRACTION DIPOLE DPD-BASIC DPD-MESO
DPD-REACT DPD-SMOOTH DRUDE EFF ELECTRODE EXTRA-COMMAND EXTRA-COMPUTE EXTRA-DUMP
EXTRA-FIX EXTRA-MOLECULE EXTRA-PAIR FEP GRANULAR H5MD INTERLAYER KOKKOS KSPACE
LATBOLTZ LEPTON MACHDYN MANIFOLD MANYBODY MC MDI MEAM MESONT MGPT MISC ML-HDNNP
ML-PACE ML-POD ML-QUIP ML-RANN ML-SNAP ML-UF3 MOFFF MOLECULE MOLFILE NETCDF
OPENMP OPT ORIENT PERI PHONON PLUGIN PLUMED POEMS PTM PYTHON QEQ QMMM QTB
REACTION REAXFF REPLICA RHEO RIGID SCAFACOS SHOCK SMTBQ SPH SPIN SRD TALLY UEF
VORONOI YAFF
Tests
Copy of testlog can be found at /apl/lammps/2024-Aug29/Testing.
The following tests FAILED:
37 - SimpleCommands (SEGFAULT)
85 - PythonPyLammps (Failed)
152 - MolPairStyle:lepton (Failed)
253 - AtomicPairStyle:buck_coul_cut_qeq_point (Failed)
254 - AtomicPairStyle:buck_coul_cut_qeq_shielded (Failed)
271 - AtomicPairStyle:edip (Failed)
277 - AtomicPairStyle:lepton_sphere (Failed)
278 - AtomicPairStyle:lj_cut_sphere (Failed)
279 - AtomicPairStyle:lj_expand_sphere (Failed)
283 - AtomicPairStyle:meam_ms (Failed)
285 - AtomicPairStyle:meam_spline (Failed)
286 - AtomicPairStyle:meam_sw_spline (Failed)
288 - AtomicPairStyle:pedone (Failed)
290 - AtomicPairStyle:reaxff-acks2 (Failed)
291 - AtomicPairStyle:reaxff-acks2_efield (Failed)
292 - AtomicPairStyle:reaxff (Failed)
293 - AtomicPairStyle:reaxff_lgvdw (Failed)
294 - AtomicPairStyle:reaxff_noqeq (Failed)
295 - AtomicPairStyle:reaxff_tabulate (Failed)
296 - AtomicPairStyle:reaxff_tabulate_flag (Failed)
321 - ManybodyPairStyle:ilp-graphene-hbn (Failed)
322 - ManybodyPairStyle:ilp-graphene-hbn_notaper (Failed)
372 - BondStyle:harmonic_restrain (Failed)
422 - KSpaceStyle:pppm_ad (Failed)
423 - KSpaceStyle:pppm_cg (Failed)
424 - KSpaceStyle:pppm_cg_ad (Failed)
425 - KSpaceStyle:pppm_cg_tiled (Failed)
442 - KSpaceStyle:pppm_tip4p (Failed)
447 - KSpaceStyle:scafacos_direct (Failed)
448 - KSpaceStyle:scafacos_ewald (Failed)
449 - KSpaceStyle:scafacos_fmm (Failed)
450 - KSpaceStyle:scafacos_fmm_tuned (Failed)
451 - KSpaceStyle:scafacos_p2nfft (Failed)
457 - FixTimestep:addtorque_const (Failed)
532 - FixTimestep:spring_rg (Failed)
539 - FixTimestep:wall_harmonic_const (Failed)
540 - FixTimestep:wall_lepton_const (Failed)
544 - FixTimestep:wall_morse_const (Failed)
546 - FixTimestep:wall_table_linear (Failed)
547 - FixTimestep:wall_table_spline (Failed)
552 - DihedralStyle:cosine_squared_restricted (Failed)
561 - DihedralStyle:quadratic (Failed)
563 - DihedralStyle:table_cut_linear (Failed)
565 - DihedralStyle:table_linear (Failed)
566 - DihedralStyle:table_spline (Failed)
Following tests involving "lattice" command in the input show large errors.
- AtomicPairStyle:
- buck_coul_cut_qeq_point, buck_coul_cut_qeq_shielded, edip, lepton_sphere, lj_cut_sphere, lj_expand_sphere, meam_sw_spline, pedone, reaxff-acks2, reaxff-acks2_efield, reaxff, reaxff_lgvdw, reaxff_noqeq, reaxff_tabulate, reaxff_tabulate_flag
- KSpaceStyle:
- scafacos_direct, scafacos_ewald, scafacos_fmm, scafacos_fmm_tuned, scafacos_p2nfft
Only minor numerical errors are found for the following tests.
- MolPairStyle:lepton, AtomicPairStyle:meam_ms, AtomicPairStyle:meam_spline, ManybodyPairStyle:ilp-graphene-hbn*, BondStyle:harmonic_restrain, KSpaceStyle:pppm_*, FixTimestep:*, DihedralStyle:*
Others
- SimpleCommands:segfault on "Quit" test (timeout may occur instead of segault).
- PythonPyLammps: test_info_queries failed.
- (This is probably due to "export OMP_NUM_THREADS=2"...)
Notes
- ADIOS, VTK, and KIM are not verified.
- INTEL is not necessayr for this configuration.
- INTEL package enabled version built with Intel Compilers is available separately.
- ~20% of performance improvement is confirmed for "rhodo" benchmark system when INTEL package is enabled.
- GCC version is very slightly faster if INTEL package is not employed.
- INTEL package enabled version built with Intel Compilers is available separately.
- GUI package is not used since too many additional packages are required.
- ML-IAP is disabled to avoid compilation error.
- There are no siginifiacnt differences between GCC 12 and 13 versions.
- (automatic build of N2P2 by LAMMPS does not work well)
- (There was a problem in Python specification of MDI when autobuild of lammps was used. Python_EXECUTABLE etc. won't be passed to cmake of MDI?)