From 38afdf14f38f25276541c003ea74acf7a401136d Mon Sep 17 00:00:00 2001 From: Lukas Krupcik Date: Mon, 12 Jun 2023 08:07:03 +0200 Subject: [PATCH] new file: h/HDF5/HDF5-1.14.0-iimpi-2022b-serial.eb new file: l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb deleted: h/HDF5/HDF5-1.14.0-iimpi-2022b.eb --- ...b.eb => HDF5-1.14.0-iimpi-2022b-serial.eb} | 9 +- .../LAMMPS-23Jun2022-foss-2021b-kokkos.eb | 164 ++++++++++++++++++ 2 files changed, 167 insertions(+), 6 deletions(-) rename h/HDF5/{HDF5-1.14.0-iimpi-2022b.eb => HDF5-1.14.0-iimpi-2022b-serial.eb} (68%) create mode 100644 l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb diff --git a/h/HDF5/HDF5-1.14.0-iimpi-2022b.eb b/h/HDF5/HDF5-1.14.0-iimpi-2022b-serial.eb similarity index 68% rename from h/HDF5/HDF5-1.14.0-iimpi-2022b.eb rename to h/HDF5/HDF5-1.14.0-iimpi-2022b-serial.eb index 9fed060f..5dd814d7 100644 --- a/h/HDF5/HDF5-1.14.0-iimpi-2022b.eb +++ b/h/HDF5/HDF5-1.14.0-iimpi-2022b-serial.eb @@ -3,6 +3,7 @@ name = 'HDF5' version = '1.14.0' +versionsuffix = '-serial' homepage = 'https://portal.hdfgroup.org/display/support' description = """HDF5 is a data model, library, and file format for storing and managing data. @@ -11,19 +12,15 @@ description = """HDF5 is a data model, library, and file format for storing and toolchain = {'name': 'iimpi', 'version': '2022b'} import os -# core-avx2 is required due to a but in fortran compiler if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: - toolchainopts = {'pic': True, 'usempi': True, 'optarch': 'march=core-avx2'} + toolchainopts = {'pic': True, 'usempi': False, 'optarch': 'march=core-avx2'} else: - toolchainopts = {'pic': True, 'usempi': True} + toolchainopts = {'pic': True, 'usempi': False} source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] sources = [SOURCELOWER_TAR_GZ] checksums = ['a571cc83efda62e1a51a0a912dd916d01895801c5025af91669484a1575a6ef4'] -_regex = 's, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g' -postinstallcmds = ['sed -i -r "%s" %%(installdir)s/bin/%s' % (_regex, x) for x in ['h5c++', 'h5pcc']] - dependencies = [ ('zlib', '1.2.12'), ('Szip', '2.1.1'), diff --git a/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb b/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb new file mode 100644 index 00000000..4d3faffd --- /dev/null +++ b/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb @@ -0,0 +1,164 @@ +# IT4Innovations +# LK 2023 + +name = 'LAMMPS' +version = '23Jun2022' +versionsuffix = '-kokkos' + +homepage = 'https://www.lammps.org' +description = """LAMMPS is a classical molecular dynamics code, and an acronym +for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has +potentials for solid-state materials (metals, semiconductors) and soft matter +(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be +used to model atoms or, more generically, as a parallel particle simulator at +the atomic, meso, or continuum scale. LAMMPS runs on single processors or in +parallel using message-passing techniques and a spatial-decomposition of the +simulation domain. The code is designed to be easy to modify or extend with new +functionality. +""" + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'openmp': True, 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['stable_%(version)s_update1.tar.gz'] +checksums = ['58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'] + +builddependencies = [ + ('CMake', '3.22.1'), + ('pkg-config', '0.29.2'), + ('archspec', '0.1.3'), +] +dependencies = [ + ('Python', '3.9.6'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.6'), + ('netCDF', '4.8.1'), + ('GSL', '2.7'), + ('zlib', '1.2.11'), + ('gzip', '1.10'), + ('cURL', '7.78.0'), + ('HDF5', '1.12.1'), + ('tbb', '2020.3'), + ('PCRE', '8.45'), + ('libxml2', '2.9.10'), + ('FFmpeg', '4.3.2'), + ('Voro++', '0.4.6'), + ('kim-api', '2.3.0'), + ('Eigen', '3.4.0'), + ('PLUMED', '2.7.3'), + ('ScaFaCoS', '1.0.1'), + ('SciPy-bundle', '2021.10'), + # VTK package is auto-disabled if this dep is not available + ('VTK', '9.1.0'), +] + +# To use additional custom configuration options, use the 'configopts' easyconfig parameter +# See docs and lammps easyblock for more information. +# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options + +# OpenMP-Kokkos build is default in the current easyblock. One can switch to serial backend of Kokkos, +# which is claimed to be faster in pure MPI calculations +# configopts = "-DKokkos_ENABLE_SERIAL=yes " + + +# packages auto-enabled by easyblock +# 'GPU' - if cuda package is present and kokkos is disabled +# 'KOKKOS' - if kokkos is enabled (by default) + + +# include the following extra packages into the build +general_packages = [ + 'ASPHERE', + 'AMOEBA', + 'ATC', + 'AWPMD', + 'BOCS', + 'BODY', + 'BPM', + 'BROWNIAN', + 'CG-DNA', + 'CG-SDK', + 'CLASS2', + 'COLLOID', + 'COLVARS', + 'COMPRESS', + 'CORESHELL', + 'DIELECTRIC', + 'DIFFRACTION', + 'DIPOLE', + 'DPD-BASIC', + 'DPD-MESO', + 'DPD-REACT', + 'DPD-SMOOTH', + 'DRUDE', + 'EFF', + 'ELECTRODE', + 'EXTRA-COMPUTE', + 'EXTRA-DUMP', + 'EXTRA-FIX', + 'EXTRA-MOLECULE', + 'EXTRA-PAIR', + 'FEP', + 'GRANULAR', + 'H5MD', + 'INTERLAYER', + 'KIM', + 'KSPACE', + 'LATBOLTZ', + 'MANIFOLD', + 'MACHDYN', + 'MANYBODY', + 'MC', + 'MEAM', + 'MGPT', + 'MISC', + 'ML-IAP', + 'ML-PACE', + 'ML-RANN', + 'ML-SNAP', + 'MOFFF', + 'MOLECULE', + 'MOLFILE', + 'MPIIO', + 'NETCDF', + 'OPENMP', + 'ORIENT', + 'PERI', + 'PHONON', + 'PLUGIN', + 'PLUMED', + 'POEMS', + 'PTM', + 'PYTHON', + 'QEQ', + 'QTB', + 'REACTION', + 'REAXFF', + 'REPLICA', + 'RIGID', + 'SCAFACOS', + 'SHOCK', + 'SMTBQ', + 'SPH', + 'SPIN', + 'SRD', + 'TALLY', + 'UEF', + 'VORONOI', + 'VTK', + 'YAFF', +] + +# Excluded packages due to requiring additional (non-trivial) deps +# - ADIOS +# - LATTE +# - MESONT (requires very large files downloaded during build) +# - ML-HDNNP (requires N2P2) +# - ML-QUIP +# - MSCG +# - QMMM (setup seems complex) + + +moduleclass = 'chem'