Merge branch 'it4i-karolina'

This commit is contained in:
Lukas Krupcik 2023-07-13 11:52:09 +02:00
commit 294025ae44
3 changed files with 297 additions and 0 deletions

View File

@ -0,0 +1,99 @@
# IT4Innovations
# LK 2023
name = 'Amber'
local_amber_ver = 22
local_ambertools_ver = 23
# Patch levels from https://ambermd.org/AmberPatches.php and https://ambermd.org/ATPatches.php
patchlevels = (3, 0) # (AmberTools, Amber)
version = '%s.%s' % (local_amber_ver, patchlevels[1])
versionsuffix = '-AmberTools-%s.%s' % (local_ambertools_ver, patchlevels[0])
homepage = 'https://ambermd.org/amber.html'
description = """Amber (originally Assisted Model Building with Energy Refinement) is software for performing
molecular dynamics and structure prediction."""
toolchain = {'name': 'foss', 'version': '2021b'}
toolchainopts = {'usempi': True, 'openmp': True}
sources = [
'%%(name)s%s.tar.bz2' % local_amber_ver,
{'filename': 'AmberTools%s.tar.bz2' % local_ambertools_ver, 'alt_location': 'AmberTools'},
]
patches = [
{'name': 'AmberTools-20_cmake-locate-netcdf.patch', 'alt_location': 'AmberTools'},
{'name': 'AmberTools-20_fix_missing_MPI_LIBRARY_error.patch', 'alt_location': 'AmberTools'},
{'name': 'AmberTools-20_fix_xblas_missing_make_dependency.patch', 'alt_location': 'AmberTools'},
{'name': 'AmberTools-21_CMake-FlexiBLAS.patch', 'alt_location': 'AmberTools'},
# {'name': 'AmberTools-21_fix_DGESVD_workspace_query.patch', 'alt_location': 'AmberTools'},
{'name': 'AmberTools-21_fix_incorrect_dvout_call.patch', 'alt_location': 'AmberTools'},
# {'name': 'AmberTools-21_fix_incorrect_mexit_calls.patch', 'alt_location': 'AmberTools'},
{'name': 'AmberTools-21_fix_more_blas_argument_problems.patch', 'alt_location': 'AmberTools'},
# {'name': 'AmberTools-21_fix_multiple_definition.patch', 'alt_location': 'AmberTools'},
{'name': 'AmberTools-21_fix_potential_use_before_init.patch', 'alt_location': 'AmberTools'},
{'name': 'AmberTools-21_fix_rism_argument_mismatch.patch', 'alt_location': 'AmberTools'},
{'name': 'AmberTools-21_fix_xray_fftpack_arg_mismatch.patch', 'alt_location': 'AmberTools'},
{'name': 'AmberTools-22_fix_test_missing_cuda_dir.patch', 'alt_location': 'AmberTools'},
#{'name': 'AmberTools-22_fix_missing_error_check_on_test_run.patch', 'alt_location': 'AmberTools'},
'Amber-22_reduce_precision_of_kmmd_test.patch',
'Amber-22_remove_undeclared_redundant_variable.patch',
]
checksums = [
'3c887ccbad690fc76ff0b120a3448eae023c08e76582aac07900d4a9708ebd16', # Amber22.tar.bz2
'debb52e6ef2e1b4eaa917a8b4d4934bd2388659c660501a81ea044903bf9ee9d', # AmberTools23.tar.bz2
'473e07c53b6f641d96d333974a6af2e03413fecef79f879d3fdecf7fecaab4d0', # AmberTools-20_cmake-locate-netcdf.patch
# AmberTools-20_fix_missing_MPI_LIBRARY_error.patch
'0b89a0624167bc23876bcdefcb1055f591e38e3bd559a71d5749e342bd311acc',
# AmberTools-20_fix_xblas_missing_make_dependency.patch
'ff25e91fdc72347a778c3837b581e174d6a8c71efa5b46e11391b18bca84fd65',
'9543812c24c4b7842f64f1f8abaf2c92b5c4c0fadcdbd9811e76b81a778f0d36', # AmberTools-21_CMake-FlexiBLAS.patch
# AmberTools-21_fix_DGESVD_workspace_query.patch
#'560c73e9d8bd159c609098c63a0256cdee78f49e524d06ea94d16d3146f69bcd',
'1054d4007f5c79126a41582e1e80514267cf406416ed6c471574cd708b16319b', # AmberTools-21_fix_incorrect_dvout_call.patch
#'d1de8c596119dcedbb809515816f0c98762306c469e9caf2c0b878d9b0a1095f', # AmberTools-21_fix_incorrect_mexit_calls.patch
# AmberTools-21_fix_more_blas_argument_problems.patch
'c6279b57752239184b942d37f760749494ae0eff95236f3368c76ac0d2726a7c',
#'ce30eeaba9feea53aa115e4b0dcc5be943b8a55abe322480c807ca7ea963d83b', # AmberTools-21_fix_multiple_definition.patch
# AmberTools-21_fix_potential_use_before_init.patch
'377e645b5bd2c91ebb4d0b6fbca0407a94289e5ddc5b1e7ed0cb0b0724ad2139',
# AmberTools-21_fix_rism_argument_mismatch.patch
'14255e5739cec39303df570f06820c7532f7395e1b73b1e4104377984e2c9fc1',
# AmberTools-21_fix_xray_fftpack_arg_mismatch.patch
'99c954e693659efc2a1d121f91510f56408006f0751d91595f45a34b03364e2f',
'fb1ab74314d7816169bb9f3f527b78085654aae2825c52cebf50a5760401b737', # AmberTools-22_fix_test_missing_cuda_dir.patch
# AmberTools-22_fix_missing_error_check_on_test_run.patch
#'a86eee60bd65c16a849469e303cb99dfc207cbadd2ae9e70b9ff580ced785475',
'b5855866c63c2ee860a5e6ad6f618ac4dab7072f5caae95769d4b2457d616a8e', # Amber-22_reduce_precision_of_kmmd_test.patch
# Amber-22_remove_undeclared_redundant_variable.patch
'b94900c2178dd6dbf2824b17074980a3e5e6e71b38c0b2b30e1f147e4e1ac8cb',
]
builddependencies = [
('CMake', '3.21.1'),
('Bison', '3.7.6'),
('flex', '2.6.4'),
('make', '4.3'),
]
dependencies = [
('zlib', '1.2.11'),
('bzip2', '1.0.8'),
('Python', '3.9.6'),
('SciPy-bundle', '2021.10'), # mpi4py required for MMPBSA
('Perl', '5.34.0'),
('Boost', '1.77.0'),
('libreadline', '8.1'),
('matplotlib', '3.4.3'),
('netCDF', '4.8.1'),
('netCDF-Fortran', '4.5.3'),
('PnetCDF', '1.12.3'),
('Tkinter', '3.9.6'),
('X11', '20210802'),
]
# All tests are expected to pass or be skipped
runtest = True
static = False
moduleclass = 'chem'

View File

@ -0,0 +1,28 @@
# IT4Innovations
# LK 2023
easyblock = 'PackedBinary'
name = 'HyperQueue'
version = '0.16.0'
homepage = 'https://it4innovations.github.io/hyperqueue/'
description = """HyperQueue lets you build a computation plan consisting of a large amount of tasks
and then execute it transparently over a system like SLURM/PBS. It dynamically groups jobs into SLURM/PBS jobs
and distributes them to fully utilize allocated notes.
You thus do not have to manually aggregate your tasks into SLURM/PBS jobs."""
toolchain = SYSTEM
source_urls = ['https://github.com/It4innovations/hyperqueue/releases/download/v%(version)s/']
sources = ['hq-v%(version)s-linux-x64.tar.gz']
checksums = ['b832fb3ba6c18855d253789d0125aa1581ec2fc9586ca98cbeadb9dc6ae153ba']
sanity_check_paths = {
'files': ['hq'],
'dirs': [],
}
sanity_check_commands = ['hq --version']
moduleclass = 'devel'

View File

@ -0,0 +1,170 @@
# IT4Innovations
# LK 2023
name = 'LAMMPS'
version = '23Jun2022'
versionsuffix = '-kokkos-SNAP'
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'}
import os
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
toolchainopts = {'openmp': True, 'usempi': True, 'optarch': 'march=core-avx2', 'pic': True}
else:
toolchainopts = {'openmp': True, 'usempi': True, 'pic': 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 "
configopts = "-DLAMMPS_EXCEPTIONS=yes -DBUILD_SHARED_LIBS=yes -DMLIAP_ENABLE_PYTHON=yes "
configopts += "-DPKG_PYTHON=yes -DPYTHON_EXECUTABLE:FILEPATH=`which python` "
# 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'