From cef77e125f1790aaee56b46158f18451c624d023 Mon Sep 17 00:00:00 2001 From: Lukas Krupcik Date: Mon, 30 Oct 2023 11:35:42 +0100 Subject: [PATCH] new file: a/ANSYS/ANSYS-2022R1-intel-2020b-alamerini.eb new file: a/AOCC/AOCC-4.1.0-GCCcore-12.2.0.eb new file: a/AOCL/AOCL-4.1.0-CCcore-12.2.0.eb new file: a/Amber/Amber-22.4-foss-2022a-AmberTools-23-CUDA-11.7.0.eb new file: c/Clang/Clang-17.0.2-GCCcore-12.2.0-CUDA-12.2.0.eb new file: c/Clang/Clang-17.0.2-GCCcore-12.2.0.eb new file: g/GROMACS/GROMACS-2023-foss-2022a-CUDA-12.0.0-PLUMED-2.9.0.eb new file: g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-12.0.0-v2.eb new file: l/LAMMPS/LAMMPS-15Jun2023-foss-2022a-kokkos-sm80.eb new file: l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos-sm80.eb new file: l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb new file: l/LAMMPS/LAMMPS-2Aug2023_update1-foss-2021b-CUDA-12.2.0-kokkos.eb new file: l/LAMMPS/LAMMPS-2Aug2023_update1-foss-2021b-kokkos.eb new file: m/MATLAB/MATLAB-2023b.eb new file: n/NCCL/NCCL-2.18.3-GCCcore-11.3.0-CUDA-12.2.0.eb new file: o/OVITO/OVITO-3.9.2-gompi-2022a-basic.eb new file: o/OVITO/OVITO-3.9.2-gompi-2022b-basic.eb new file: o/OpenMolcas/OpenMolcas-23.06-intel-2022a-noGA.eb modified: o/OpenMolcas/OpenMolcas-23.06-intel-2022a.eb new file: p/PLUMED/PLUMED-2.9.0-foss-2022a.eb new file: q/Qt6/Qt6-6.5.3-GCCcore-12.2.0.eb new file: "q/Qt6/\\" new file: u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb --- a/ANSYS/ANSYS-2022R1-intel-2020b-alamerini.eb | 29 +++ a/AOCC/AOCC-4.1.0-GCCcore-12.2.0.eb | 27 +++ a/AOCL/AOCL-4.1.0-CCcore-12.2.0.eb | 27 +++ ....4-foss-2022a-AmberTools-23-CUDA-11.7.0.eb | 102 ++++++++++ ...Clang-17.0.2-GCCcore-12.2.0-CUDA-12.2.0.eb | 54 ++++++ c/Clang/Clang-17.0.2-GCCcore-12.2.0.eb | 52 +++++ ...023-foss-2022a-CUDA-12.0.0-PLUMED-2.9.0.eb | 77 ++++++++ ...ROMACS-2023.3-foss-2022a-CUDA-12.0.0-v2.eb | 75 ++++++++ ...LAMMPS-15Jun2023-foss-2022a-kokkos-sm80.eb | 180 ++++++++++++++++++ .../LAMMPS-2Aug2023-foss-2022a-kokkos-sm80.eb | 180 ++++++++++++++++++ l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb | 172 +++++++++++++++++ ...3_update1-foss-2021b-CUDA-12.2.0-kokkos.eb | 172 +++++++++++++++++ ...MMPS-2Aug2023_update1-foss-2021b-kokkos.eb | 169 ++++++++++++++++ m/MATLAB/MATLAB-2023b.eb | 30 +++ .../NCCL-2.18.3-GCCcore-11.3.0-CUDA-12.2.0.eb | 29 +++ o/OVITO/OVITO-3.9.2-gompi-2022a-basic.eb | 42 ++++ o/OVITO/OVITO-3.9.2-gompi-2022b-basic.eb | 54 ++++++ .../OpenMolcas-23.06-intel-2022a-noGA.eb | 63 ++++++ o/OpenMolcas/OpenMolcas-23.06-intel-2022a.eb | 15 +- p/PLUMED/PLUMED-2.9.0-foss-2022a.eb | 64 +++++++ q/Qt6/Qt6-6.5.3-GCCcore-12.2.0.eb | 92 +++++++++ "q/Qt6/\\" | 92 +++++++++ ...-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb | 51 +++++ 23 files changed, 1845 insertions(+), 3 deletions(-) create mode 100644 a/ANSYS/ANSYS-2022R1-intel-2020b-alamerini.eb create mode 100644 a/AOCC/AOCC-4.1.0-GCCcore-12.2.0.eb create mode 100644 a/AOCL/AOCL-4.1.0-CCcore-12.2.0.eb create mode 100644 a/Amber/Amber-22.4-foss-2022a-AmberTools-23-CUDA-11.7.0.eb create mode 100644 c/Clang/Clang-17.0.2-GCCcore-12.2.0-CUDA-12.2.0.eb create mode 100644 c/Clang/Clang-17.0.2-GCCcore-12.2.0.eb create mode 100644 g/GROMACS/GROMACS-2023-foss-2022a-CUDA-12.0.0-PLUMED-2.9.0.eb create mode 100644 g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-12.0.0-v2.eb create mode 100644 l/LAMMPS/LAMMPS-15Jun2023-foss-2022a-kokkos-sm80.eb create mode 100644 l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos-sm80.eb create mode 100644 l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb create mode 100644 l/LAMMPS/LAMMPS-2Aug2023_update1-foss-2021b-CUDA-12.2.0-kokkos.eb create mode 100644 l/LAMMPS/LAMMPS-2Aug2023_update1-foss-2021b-kokkos.eb create mode 100644 m/MATLAB/MATLAB-2023b.eb create mode 100644 n/NCCL/NCCL-2.18.3-GCCcore-11.3.0-CUDA-12.2.0.eb create mode 100644 o/OVITO/OVITO-3.9.2-gompi-2022a-basic.eb create mode 100644 o/OVITO/OVITO-3.9.2-gompi-2022b-basic.eb create mode 100644 o/OpenMolcas/OpenMolcas-23.06-intel-2022a-noGA.eb create mode 100644 p/PLUMED/PLUMED-2.9.0-foss-2022a.eb create mode 100644 q/Qt6/Qt6-6.5.3-GCCcore-12.2.0.eb create mode 100644 "q/Qt6/\\" create mode 100644 u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb diff --git a/a/ANSYS/ANSYS-2022R1-intel-2020b-alamerini.eb b/a/ANSYS/ANSYS-2022R1-intel-2020b-alamerini.eb new file mode 100644 index 00000000..075d3385 --- /dev/null +++ b/a/ANSYS/ANSYS-2022R1-intel-2020b-alamerini.eb @@ -0,0 +1,29 @@ +# IT4Innovations +# LK 2023 + +name = 'ANSYS' +version = '2022R1' +versionsuffix = '-alamerini' + +homepage = 'http://www.ansys.com' +description = """ANSYS simulation software enables organizations to confidently predict + how their products will operate in the real world. We believe that every product is + a promise of something greater. """ + +toolchain = {'name': 'intel', 'version': '2020b'} + +# create a zip file from the 3 install iso files. +# make sure all files of the iso's are in the same directory. +sources = ['ANSYS-2022.1.tar.gz'] +checksums = ['94d4700c66189a774f9b06b0e7a89e64'] + +dependencies = [ + ('libGLU', '9.0.1'), +# ('libnsl', '1.3.0'), # moc nove pro CentOS 7!!! +] + +import os +license_server = os.getenv('EB_ANSYS_LICENSE_SERVER', '150.217.19.173') +license_server_port = os.getenv('EB_ANSYS_LICENSE_SERVER_PORT', '2325:1055') + +moduleclass = 'tools' diff --git a/a/AOCC/AOCC-4.1.0-GCCcore-12.2.0.eb b/a/AOCC/AOCC-4.1.0-GCCcore-12.2.0.eb new file mode 100644 index 00000000..a69c0be7 --- /dev/null +++ b/a/AOCC/AOCC-4.1.0-GCCcore-12.2.0.eb @@ -0,0 +1,27 @@ +# IT4Innovations +# LK 2023 + +name = 'AOCC' +version = '4.1.0' + +homepage = 'https://developer.amd.com/amd-aocc/' +description = "AMD Optimized C/C++ & Fortran compilers (AOCC) based on LLVM 12.0" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ['https://download.amd.com/developer/eula/aocc/aocc-4-1/'] +sources = ['aocc-compiler-%(version)s.tar'] +checksums = ['5b04bfdb751c68dfb9470b34235d76efa80a6b662a123c3375b255982cb52acd'] + +clangversion = '16' + +dependencies = [ + ('binutils', '2.39'), + ('ncurses', '6.3'), + ('zlib', '1.2.12'), + ('libxml2', '2.10.3'), +] + +moduleclass = 'compiler' diff --git a/a/AOCL/AOCL-4.1.0-CCcore-12.2.0.eb b/a/AOCL/AOCL-4.1.0-CCcore-12.2.0.eb new file mode 100644 index 00000000..55bcd6ef --- /dev/null +++ b/a/AOCL/AOCL-4.1.0-CCcore-12.2.0.eb @@ -0,0 +1,27 @@ +# IT4Innovations +# LK 2023 +# --include-easyblocks=/apps/all/AOCL/3.0-6-GCCcore-10.2.0/easybuild/reprod/easyblocks/aocl.py + +name = 'AOCL' +version = '4.1.0' + +homepage = 'https://developer.amd.com/amd-aocc/' +description = """AMD provides a free set of thoroughly optimized and threaded math routines for HPC, + scientific, engineering and related compute-intensive applications. ACML is ideal for weather modeling, + computational fluid dynamics, financial analysis, oil and gas applications and more. """ + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ['https://download.amd.com/developer/eula/aocl/aocl-4-1/'] +sources = ['aocl-linux-aocc-%(version)s.tar.gz'] +checksums = ['25c3d86970a355205de0d139a23e251f070dd76242114b98390fe8f90503e810'] + +dependencies = [ + ('binutils', '2.39'), + ('ncurses', '6.3'), + ('zlib', '1.2.12'), + ('libxml2', '2.10.3'), + ('AOCC', '4.1.0'), +] + +moduleclass = 'numlib' diff --git a/a/Amber/Amber-22.4-foss-2022a-AmberTools-23-CUDA-11.7.0.eb b/a/Amber/Amber-22.4-foss-2022a-AmberTools-23-CUDA-11.7.0.eb new file mode 100644 index 00000000..a083a3e7 --- /dev/null +++ b/a/Amber/Amber-22.4-foss-2022a-AmberTools-23-CUDA-11.7.0.eb @@ -0,0 +1,102 @@ +# 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-CUDA-%%(cudaver)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': '2022a'} +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.23.1'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('make', '4.3'), +] + +dependencies = [ + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), # mpi4py required for MMPBSA + ('Perl', '5.34.1'), + ('Boost', '1.79.0'), + ('libreadline', '8.1.2'), + ('matplotlib', '3.5.2'), + ('netCDF', '4.9.0'), + ('netCDF-Fortran', '4.6.0'), + ('PnetCDF', '1.12.3'), + ('Tkinter', '3.10.4'), + ('X11', '20220504'), + ('CUDA', '11.7.0', '', SYSTEM), + ('NCCL', '2.12.12', '-CUDA-%(cudaver)s'), + ('UCX-CUDA', '1.12.1', '-CUDA-%(cudaver)s'), +] + +# Some CUDA tests differs from expected results +runtest = False + +static = False + +moduleclass = 'chem' diff --git a/c/Clang/Clang-17.0.2-GCCcore-12.2.0-CUDA-12.2.0.eb b/c/Clang/Clang-17.0.2-GCCcore-12.2.0-CUDA-12.2.0.eb new file mode 100644 index 00000000..1b8682c9 --- /dev/null +++ b/c/Clang/Clang-17.0.2-GCCcore-12.2.0-CUDA-12.2.0.eb @@ -0,0 +1,54 @@ +# IT4Innovations +# LK 2023 + +name = 'Clang' +version = '17.0.2' +versionsuffix = '-CUDA-12.2.0' + +homepage = 'https://clang.llvm.org/' +description = """C, C++, Objective-C compiler, based on LLVM. Does not + include C++ standard library -- use libstdc++ from GCC.""" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s"] +sources = [ + 'llvm-project-%(version)s.src.tar.xz', +] +checksums = [ + {'llvm-project-17.0.2.src.tar.xz': '351562b14d42fcefcbf00cc1f327680a1062bbbf67a1e1ca6acb64c473b06394'}, +] + +builddependencies = [ + ('CMake', '3.24.3'), + ('Perl', '5.36.0'), + # Including Python bindings would require this as a runtime dep + ('Python', '3.10.8'), +] +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.39'), + ('hwloc', '2.8.0'), + ('libxml2', '2.10.3'), + ('ncurses', '6.3'), + ('GMP', '6.2.1'), + ('Z3', '4.12.2'), + ('CUDA', '12.2.0', '', True), +] + +# enabling RTTI makes the flang compiler need to link to libc++ so instead of +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 +# you would need +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 -l c++ +enable_rtti = False + +assertions = True +python_bindings = False +skip_all_tests = True + +llvm_runtimes = ['libunwind', 'libcxx', 'libcxxabi'] +llvm_projects = ['polly', 'lld', 'lldb', 'clang-tools-extra', 'flang'] + +moduleclass = 'compiler' diff --git a/c/Clang/Clang-17.0.2-GCCcore-12.2.0.eb b/c/Clang/Clang-17.0.2-GCCcore-12.2.0.eb new file mode 100644 index 00000000..da9b4c1f --- /dev/null +++ b/c/Clang/Clang-17.0.2-GCCcore-12.2.0.eb @@ -0,0 +1,52 @@ +# IT4Innovations +# LK 2023 + +name = 'Clang' +version = '17.0.2' + +homepage = 'https://clang.llvm.org/' +description = """C, C++, Objective-C compiler, based on LLVM. Does not + include C++ standard library -- use libstdc++ from GCC.""" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s"] +sources = [ + 'llvm-project-%(version)s.src.tar.xz', +] +checksums = [ + {'llvm-project-17.0.2.src.tar.xz': '351562b14d42fcefcbf00cc1f327680a1062bbbf67a1e1ca6acb64c473b06394'}, +] + +builddependencies = [ + ('CMake', '3.24.3'), + ('Perl', '5.36.0'), + # Including Python bindings would require this as a runtime dep + ('Python', '3.10.8'), +] +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.39'), + ('hwloc', '2.8.0'), + ('libxml2', '2.10.3'), + ('ncurses', '6.3'), + ('GMP', '6.2.1'), + ('Z3', '4.12.2'), +] + +# enabling RTTI makes the flang compiler need to link to libc++ so instead of +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 +# you would need +# flang-new -flang-experimental-exec -fopenmp hello_openmp.f90 -l c++ +enable_rtti = False + +assertions = True +python_bindings = False +skip_all_tests = True + +llvm_runtimes = ['libunwind', 'libcxx', 'libcxxabi'] +llvm_projects = ['polly', 'lld', 'lldb', 'clang-tools-extra', 'flang'] + +moduleclass = 'compiler' diff --git a/g/GROMACS/GROMACS-2023-foss-2022a-CUDA-12.0.0-PLUMED-2.9.0.eb b/g/GROMACS/GROMACS-2023-foss-2022a-CUDA-12.0.0-PLUMED-2.9.0.eb new file mode 100644 index 00000000..6323ae02 --- /dev/null +++ b/g/GROMACS/GROMACS-2023-foss-2022a-CUDA-12.0.0-PLUMED-2.9.0.eb @@ -0,0 +1,77 @@ +# IT4Innovations +# LK 2023 + +name = 'GROMACS' +version = '2023' +local_plum_ver = '2.9.0' +versionsuffix = '-CUDA-12.2.0-PLUMED-2.9.0' + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a GPU enabled build, containing both MPI and threadMPI binaries. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch', + 'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch', +] +checksums = [ + {'gromacs-2023.tar.gz': 'ac92c6da72fbbcca414fd8a8d979e56ecf17c4c1cdabed2da5cfb4e7277b7ba8'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, +] + +builddependencies = [ + ('CMake', '3.24.3'), + ('scikit-build', '0.15.0'), +] + +dependencies = [ + ('CUDA', '12.0.0', '', SYSTEM), + ('UCX-CUDA', '1.12.1', '-CUDA-%(cudaver)s'), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('networkx', '2.8.4'), + ('PLUMED', local_plum_ver), +] + +configopts = ' -DGMX_MPI=ON' + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'source_tmpl': 'gromacs-2023.3.tar.gz', + 'start_dir': 'python_packaging/gmxapi', + 'checksums': ['4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-12.0.0-v2.eb b/g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-12.0.0-v2.eb new file mode 100644 index 00000000..2eb5d9fc --- /dev/null +++ b/g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-12.0.0-v2.eb @@ -0,0 +1,75 @@ +# IT4Innovations +# LK 2023 + +name = 'GROMACS' +version = '2023.3' +versionsuffix = '-CUDA-%(cudaver)s-v2' + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a GPU enabled build, containing both MPI and threadMPI binaries. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch', + 'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch', +] +checksums = [ + {'gromacs-2023.3.tar.gz': '2c9cdd8252ba9aa89a05d7c2d9b07509'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, +] + +builddependencies = [ + ('CMake', '3.24.3'), + ('scikit-build', '0.15.0'), +] + +dependencies = [ + ('CUDA', '12.0.0', '', SYSTEM), + ('UCX-CUDA', '1.12.1', '-CUDA-%(cudaver)s'), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('networkx', '2.8.4'), +] + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'source_tmpl': 'gromacs-2023.3.tar.gz', + 'start_dir': 'python_packaging/gmxapi', + 'checksums': ['4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/l/LAMMPS/LAMMPS-15Jun2023-foss-2022a-kokkos-sm80.eb b/l/LAMMPS/LAMMPS-15Jun2023-foss-2022a-kokkos-sm80.eb new file mode 100644 index 00000000..0348ad99 --- /dev/null +++ b/l/LAMMPS/LAMMPS-15Jun2023-foss-2022a-kokkos-sm80.eb @@ -0,0 +1,180 @@ +# IT4Innovations +# LK 2023 + +name = 'LAMMPS' +version = '15Jun2023' +versionsuffix = '-kokkos' +_cuda_suffix = '-CUDA-%(cudaver)s' +versionsuffix += _cuda_suffix +cuda_compute_capabilities = ['8.0'] +versionsuffix += '-sm80' + +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': '2022a'} +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: + toolchainopts = {'openmp': True, 'usempi': True, 'optarch': 'march=core-avx2', 'cstd': 'c++14'} +else: + toolchainopts = {'openmp': True, 'usempi': True, 'cstd': 'c++14'} + + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['patch_%(version)s.tar.gz'] +checksums = ['8470ed7b26ccd3728f4b44a7f1c520f1af23a648af685fd30b42b840fdfae2ff'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('pkgconf', '1.8.0'), + ('archspec', '0.1.4'), +] +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('UCX-CUDA', '1.12.1', _cuda_suffix), + ('NCCL', '2.12.12', _cuda_suffix), + ('Python', '3.10.4'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.1.3'), + ('netCDF', '4.9.0'), + ('GSL', '2.7'), + ('zlib', '1.2.12'), + ('gzip', '1.12'), + ('cURL', '7.83.0'), + ('HDF5', '1.12.2'), + ('tbb', '2021.5.0'), + ('PCRE', '8.45'), + ('libxml2', '2.9.13'), + ('FFmpeg', '4.4.2'), + ('Voro++', '0.4.6'), + ('kim-api', '2.3.0'), + ('Eigen', '3.4.0'), + ('PLUMED', '2.8.1'), + ('ScaFaCoS', '1.0.4'), + ('SciPy-bundle', '2022.05'), + # VTK package is auto-disabled if this dep is not available + ('VTK', '9.2.2'), +] + +install_cmd = 'make install install-python' + +# 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) +# 'INTEL' - if builing on Intel CPU +# 'OPENMP' - if OpenMP swithed on in 'toolchainopts' + +# include the following extra packages into the build +general_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-COMPUTE', + 'EXTRA-DUMP', + 'EXTRA-FIX', + 'EXTRA-MOLECULE', + 'EXTRA-PAIR', + 'FEP', + 'GRANULAR', + 'H5MD', + 'INTERLAYER', + 'KIM', + 'KSPACE', + 'LATBOLTZ', + 'LEPTON', + 'MACHDYN', + 'MANIFOLD', + 'MANYBODY', + 'MC', + 'MEAM', + 'MGPT', + 'MISC', + 'ML-IAP', + 'ML-PACE', + 'ML-POD', + 'ML-RANN', + 'ML-SNAP', + 'MOFFF', + 'MOLECULE', + 'MOLFILE', + 'MPIIO', + 'NETCDF', + 'OPT', + '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 and its replacement MDI +# - MESONT (requires very large files downloaded during build) +# - ML-HDNNP (requires N2P2) +# - ML-QUIP +# - MSCG +# - QMMM (setup seems complex) + + +moduleclass = 'chem' diff --git a/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos-sm80.eb b/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos-sm80.eb new file mode 100644 index 00000000..888be4d4 --- /dev/null +++ b/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos-sm80.eb @@ -0,0 +1,180 @@ +# IT4Innovations +# LK 2023 + +name = 'LAMMPS' +version = '2Aug2023' +versionsuffix = '-kokkos' +_cuda_suffix = '-CUDA-%(cudaver)s' +versionsuffix += _cuda_suffix +cuda_compute_capabilities = ['8.0'] +versionsuffix += '-sm80' + +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': '2022a'} +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: + toolchainopts = {'openmp': True, 'usempi': True, 'optarch': 'march=core-avx2', 'cstd': 'c++14'} +else: + toolchainopts = {'openmp': True, 'usempi': True, 'cstd': 'c++14'} + + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['stable_%(version)s_update1.tar.gz'] +checksums = ['0e5568485e5ee080412dba44a1b7a93f864f1b5c75121f11d528854269953ed0'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('pkgconf', '1.8.0'), + ('archspec', '0.1.4'), +] +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('UCX-CUDA', '1.12.1', _cuda_suffix), + ('NCCL', '2.12.12', _cuda_suffix), + ('Python', '3.10.4'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.1.3'), + ('netCDF', '4.9.0'), + ('GSL', '2.7'), + ('zlib', '1.2.12'), + ('gzip', '1.12'), + ('cURL', '7.83.0'), + ('HDF5', '1.12.2'), + ('tbb', '2021.5.0'), + ('PCRE', '8.45'), + ('libxml2', '2.9.13'), + ('FFmpeg', '4.4.2'), + ('Voro++', '0.4.6'), + ('kim-api', '2.3.0'), + ('Eigen', '3.4.0'), + ('PLUMED', '2.8.1'), + ('ScaFaCoS', '1.0.4'), + ('SciPy-bundle', '2022.05'), + # VTK package is auto-disabled if this dep is not available + ('VTK', '9.2.2'), +] + +install_cmd = 'make install install-python' + +# 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) +# 'INTEL' - if builing on Intel CPU +# 'OPENMP' - if OpenMP swithed on in 'toolchainopts' + +# include the following extra packages into the build +general_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-COMPUTE', + 'EXTRA-DUMP', + 'EXTRA-FIX', + 'EXTRA-MOLECULE', + 'EXTRA-PAIR', + 'FEP', + 'GRANULAR', + 'H5MD', + 'INTERLAYER', + 'KIM', + 'KSPACE', + 'LATBOLTZ', + 'LEPTON', + 'MACHDYN', + 'MANIFOLD', + 'MANYBODY', + 'MC', + 'MEAM', + 'MGPT', + 'MISC', + 'ML-IAP', + 'ML-PACE', + 'ML-POD', + 'ML-RANN', + 'ML-SNAP', + 'MOFFF', + 'MOLECULE', + 'MOLFILE', + 'MPIIO', + 'NETCDF', + 'OPT', + '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 and its replacement MDI +# - MESONT (requires very large files downloaded during build) +# - ML-HDNNP (requires N2P2) +# - ML-QUIP +# - MSCG +# - QMMM (setup seems complex) + + +moduleclass = 'chem' diff --git a/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb b/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb new file mode 100644 index 00000000..76d55c4e --- /dev/null +++ b/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb @@ -0,0 +1,172 @@ +# IT4Innovations +# LK 2023 + +name = 'LAMMPS' +version = '2Aug2023' +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': '2022a'} +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: + toolchainopts = {'openmp': True, 'usempi': True, 'optarch': 'march=core-avx2'} +else: + toolchainopts = {'openmp': True, 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['stable_%(version)s_update1.tar.gz'] +checksums = ['0e5568485e5ee080412dba44a1b7a93f864f1b5c75121f11d528854269953ed0'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('pkgconf', '1.8.0'), + ('archspec', '0.1.4'), +] +dependencies = [ + ('Python', '3.10.4'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.1.3'), + ('netCDF', '4.9.0'), + ('GSL', '2.7'), + ('zlib', '1.2.12'), + ('gzip', '1.12'), + ('cURL', '7.83.0'), + ('HDF5', '1.12.2'), + ('tbb', '2021.5.0'), + ('PCRE', '8.45'), + ('libxml2', '2.9.13'), + ('FFmpeg', '4.4.2'), + ('Voro++', '0.4.6'), + ('kim-api', '2.3.0'), + ('Eigen', '3.4.0'), + ('PLUMED', '2.8.1'), + ('ScaFaCoS', '1.0.4'), + ('SciPy-bundle', '2022.05'), + # VTK package is auto-disabled if this dep is not available + ('VTK', '9.2.2'), +] + +# 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) +# 'INTEL' - if builing on Intel CPU +# 'OPENMP' - if OpenMP swithed on in 'toolchainopts' + +# include the following extra packages into the build +general_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-COMPUTE', + 'EXTRA-DUMP', + 'EXTRA-FIX', + 'EXTRA-MOLECULE', + 'EXTRA-PAIR', + 'FEP', + 'GRANULAR', + 'H5MD', + 'INTERLAYER', + 'KIM', + 'KSPACE', + 'LATBOLTZ', + 'LEPTON', + 'MACHDYN', + 'MANIFOLD', + 'MANYBODY', + 'MC', + 'MDI', + 'MEAM', + 'MGPT', + 'MISC', + 'ML-IAP', + 'ML-PACE', + 'ML-POD', + 'ML-RANN', + 'ML-SNAP', + 'MOFFF', + 'MOLECULE', + 'MOLFILE', + 'MPIIO', + 'NETCDF', + 'OPT', + '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' diff --git a/l/LAMMPS/LAMMPS-2Aug2023_update1-foss-2021b-CUDA-12.2.0-kokkos.eb b/l/LAMMPS/LAMMPS-2Aug2023_update1-foss-2021b-CUDA-12.2.0-kokkos.eb new file mode 100644 index 00000000..36eb9c16 --- /dev/null +++ b/l/LAMMPS/LAMMPS-2Aug2023_update1-foss-2021b-CUDA-12.2.0-kokkos.eb @@ -0,0 +1,172 @@ +# IT4Innovations +# LK 2023 + +name = 'LAMMPS' +version = '2Aug2023' +versionsuffix = '-CUDA-12.2.0-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'} +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 = ['0e5568485e5ee080412dba44a1b7a93f864f1b5c75121f11d528854269953ed0'] + +builddependencies = [ + ('CMake', '3.22.1'), + ('pkg-config', '0.29.2'), + ('archspec', '0.1.3'), +] +dependencies = [ + ('Python', '3.9.6'), + ('CUDA', '12.2.0', '', True), + ('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 " + +# GCC 11/12 defaults to C++17 standard, need to be consistent +configopts = "-DKokkos_CXX_STANDARD=17 " + +# 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' diff --git a/l/LAMMPS/LAMMPS-2Aug2023_update1-foss-2021b-kokkos.eb b/l/LAMMPS/LAMMPS-2Aug2023_update1-foss-2021b-kokkos.eb new file mode 100644 index 00000000..717acf1e --- /dev/null +++ b/l/LAMMPS/LAMMPS-2Aug2023_update1-foss-2021b-kokkos.eb @@ -0,0 +1,169 @@ +# IT4Innovations +# LK 2023 + +name = 'LAMMPS' +version = '2Aug2023' +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'} +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 = ['0e5568485e5ee080412dba44a1b7a93f864f1b5c75121f11d528854269953ed0'] + +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' diff --git a/m/MATLAB/MATLAB-2023b.eb b/m/MATLAB/MATLAB-2023b.eb new file mode 100644 index 00000000..5f0d024b --- /dev/null +++ b/m/MATLAB/MATLAB-2023b.eb @@ -0,0 +1,30 @@ +# IT4Innovations +# LK 2023 + +name = 'MATLAB' +version = '2023b' + +homepage = 'https://www.mathworks.com/products/matlab' +description = """MATLAB is a high-level language and interactive environment + that enables you to perform computationally intensive tasks faster than with + traditional programming languages such as C, C++, and Fortran.""" + +toolchain = SYSTEM + +sources = ['R%s_Linux.iso' % (version)] +checksums = ['f1cc4ae1a2e42a1d22745884aa80bf0d5d8676939ad21741ccff15fade06a881'] +download_instructions = 'Download %s from mathworks.com' % sources[0] + +#java_options = '-Xmx2048m' + +#osdependencies = [('p7zip-plugins', 'p7zip-full')] # for extracting iso-files + +# Use EB_MATLAB_KEY environment variable or uncomment and modify license key +# key = '00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000' + +# Use EB_MATLAB_LICENSE_SERVER and EB_MATLAB_LICENSE_SERVER_PORT environment variables or +# uncomment and modify the following variables for installation with floating license server +license_server = 'lm-praha.metacentrum.cz' +license_server_port = '1712' + +moduleclass = 'math' diff --git a/n/NCCL/NCCL-2.18.3-GCCcore-11.3.0-CUDA-12.2.0.eb b/n/NCCL/NCCL-2.18.3-GCCcore-11.3.0-CUDA-12.2.0.eb new file mode 100644 index 00000000..157b05cb --- /dev/null +++ b/n/NCCL/NCCL-2.18.3-GCCcore-11.3.0-CUDA-12.2.0.eb @@ -0,0 +1,29 @@ +# IT4Innovations +# LK 2023 + +name = 'NCCL' +version = '2.18.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://developer.nvidia.com/nccl' +description = """The NVIDIA Collective Communications Library (NCCL) implements multi-GPU and multi-node collective +communication primitives that are performance optimized for NVIDIA GPUs.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +github_account = 'NVIDIA' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s-1.tar.gz'] +checksums = ['b4f5d7d9eea2c12e32e7a06fe138b2cfc75969c6d5c473aa6f819a792db2fc96'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('CUDA', '12.2.0', '', SYSTEM), + ('UCX-CUDA', '1.14.1', versionsuffix), +] + +# default CUDA compute capabilities to use (override via --cuda-compute-capabilities) +cuda_compute_capabilities = ['8.0'] + +moduleclass = 'lib' diff --git a/o/OVITO/OVITO-3.9.2-gompi-2022a-basic.eb b/o/OVITO/OVITO-3.9.2-gompi-2022a-basic.eb new file mode 100644 index 00000000..3a2ec4e0 --- /dev/null +++ b/o/OVITO/OVITO-3.9.2-gompi-2022a-basic.eb @@ -0,0 +1,42 @@ +# IT4Innovations +# LK 2023 + +easyblock = 'CMakeMake' + +name = 'OVITO' +version = '3.9.2' +versionsuffix = '-basic' + +homepage = 'https://www.ovito.org' +description = """OVITO is a scientific visualization and data analysis solution for atomistic and other particle-based +models. It helps scientists gain meaningful and quick insights from numerical simulation results.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://gitlab.com/stuko/ovito/-/archive/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['142da611aded2b660f68a11c034aa8cbe10561a9530ce047a08de2f8de543c8e'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), +] + +dependencies = [ + ('Qt6', '6.5.3'), +# ('Qt5', '5.15.5'), + ('HDF5', '1.12.2'), + ('netCDF', '4.9.0'), + ('FFmpeg', '4.4.2'), + ('zlib', '1.2.12'), + ('Boost', '1.79.0'), + ('libglvnd', '1.4.0'), + ('Python', '3.10.4'), +] + +sanity_check_paths = { + 'files': ['bin/ovito'], + 'dirs': [] +} + +moduleclass = 'vis' diff --git a/o/OVITO/OVITO-3.9.2-gompi-2022b-basic.eb b/o/OVITO/OVITO-3.9.2-gompi-2022b-basic.eb new file mode 100644 index 00000000..b6580c0f --- /dev/null +++ b/o/OVITO/OVITO-3.9.2-gompi-2022b-basic.eb @@ -0,0 +1,54 @@ +# IT4Innovations +# LK 2023 + +easyblock = 'CMakeMake' + +name = 'OVITO' +version = '3.9.2' +versionsuffix = '-basic' + +homepage = 'https://www.ovito.org/' +description = """OVITO is a scientific visualization and analysis software for atomistic and particle simulation data.""" + +toolchain = {'name': 'gompi', 'version': '2022b'} + +source_urls = ['https://gitlab.com/stuko/ovito/-/archive/v%(version)s/'] +sources = ['ovito-v%(version)s.tar.gz'] +checksums = ['32041cd3d023d2e2e24222d61b096743b7f6c5ba6c96b29f7e0fb291ff5b638e'] + +builddependencies = [ + ('binutils', '2.39'), + ('CMake', '3.24.3'), +] + +dependencies = [ + ('Qt6', '6.5.3'), +# ('Qt5', '5.15.7'), + ('HDF5', '1.14.0'), + ('netCDF', '4.9.0'), + ('FFmpeg', '5.1.2'), + ('zlib', '1.2.12'), + ('Boost', '1.81.0'), + ('libglvnd', '1.6.0'), + ('Python', '3.10.8'), +] + +import os +if os.environ.get("CLUSTERNAME") in ["BARBORA"]: + postinstallcmds = [ + 'rm %(installdir)s/lib/ovito/libcrypto.so.1.1', + 'ln -s /lib64/libcrypto.so.1.1 %(installdir)s/lib/ovito/', +] + +sanity_check_paths = { + 'files': ['bin/ovito'], + 'dirs': ['bin'], +} + +#sanity_check_commands = ['ovito --nogui --noviewports --help'] + +modextravars = { + 'OVITO_LICENSING_VERBOSE': '1', +} + +moduleclass = 'vis' diff --git a/o/OpenMolcas/OpenMolcas-23.06-intel-2022a-noGA.eb b/o/OpenMolcas/OpenMolcas-23.06-intel-2022a-noGA.eb new file mode 100644 index 00000000..023daf8f --- /dev/null +++ b/o/OpenMolcas/OpenMolcas-23.06-intel-2022a-noGA.eb @@ -0,0 +1,63 @@ +# IT4Innovations +# LK 2023 + +easyblock = 'CMakeMake' + +name = 'OpenMolcas' +version = '23.06' +versionsuffix = '-noGA' + +homepage = "https://gitlab.com/Molcas/OpenMolcas" +description = "OpenMolcas is a quantum chemistry software package" + +toolchain = {'name': 'intel', 'version': '2022a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://gitlab.com/Molcas/OpenMolcas/-/archive/v%(version)s/'] +sources = ["OpenMolcas-v%(version)s.tar.gz"] +patches = [ + 'OpenMolcas-21.06_mcpdft_deps.patch', + #'OpenMolcas-22.06-increase_MxShll.patch', +] +checksums = [ + {'OpenMolcas-v23.06.tar.gz': 'fe0299ed39af6e84f249f91452c411f9845c9ae4a0ce78641c867dea8056f280'}, + {'OpenMolcas-21.06_mcpdft_deps.patch': '708763e060aa0174bbe9c0cc336b509fbf492066465908dd919452836a7a793a'}, + #{'OpenMolcas-22.06-increase_MxShll.patch': 'e2588bca3d60f0681f6569aedb287166cead3934f02bc41f8daa9ede8dad98e8'}, +] + +builddependencies = [('CMake', '3.23.1')] + +dependencies = [ + ('HDF5', '1.12.2'), + ('Python', '3.10.4'), +] + +build_shared_libs = True + +_copts = [ + '-DLINALG=MKL', + '-DMKLROOT=$MKLROOT', + '-DOPENMP=ON', + '-DTOOLS=ON', + '-DFDE=ON', + '-DMPI=OFF', + '-DGA=OFF', +] +configopts = ' '.join(_copts) + +modextrapaths = {'PATH': ''} +modextravars = { + 'MOLCAS': '%(installdir)s', + 'MOLCAS_DRIVER': '%(installdir)s/pymolcas', + 'MOLCAS_SOURCE': '%(installdir)s', +} + +#sanity_check_commands = ['cd %(builddir)s/easybuild_obj; ./pymolcas verify'] + +sanity_check_paths = { + 'files': ['bin/dynamix.exe', 'bin/mpprop.exe', 'lib/libmolcas.%s' % SHLIB_EXT, + 'sbin/help_basis', 'pymolcas'], + 'dirs': ['data/', 'basis_library/'], +} + +moduleclass = 'chem' diff --git a/o/OpenMolcas/OpenMolcas-23.06-intel-2022a.eb b/o/OpenMolcas/OpenMolcas-23.06-intel-2022a.eb index cf09446d..5b6e795a 100644 --- a/o/OpenMolcas/OpenMolcas-23.06-intel-2022a.eb +++ b/o/OpenMolcas/OpenMolcas-23.06-intel-2022a.eb @@ -35,9 +35,16 @@ dependencies = [ build_shared_libs = True preconfigopts = 'GAROOT=$EBROOTGLOBALARRAYS' -configopts = '-DLINALG=MKL -DMKLROOT=$MKLROOT ' -configopts += '-DMPI=ON -DOPENMP=ON -DGA=ON ' -configopts += '-DTOOLS=ON -DFDE=ON' +_copts = [ + '-DLINALG=MKL', + '-DMKLROOT=$MKLROOT', + '-DOPENMP=ON', + '-DTOOLS=ON', + '-DFDE=ON', + '-DMPI=ON', + '-DGA=ON', +] +configopts = ' '.join(_copts) modextrapaths = {'PATH': ''} modextravars = { @@ -46,6 +53,8 @@ modextravars = { 'MOLCAS_SOURCE': '%(installdir)s', } +#sanity_check_commands = ['cd %(builddir)s/easybuild_obj; ./pymolcas verify'] + sanity_check_paths = { 'files': ['bin/dynamix.exe', 'bin/mpprop.exe', 'lib/libmolcas.%s' % SHLIB_EXT, 'sbin/help_basis', 'pymolcas'], diff --git a/p/PLUMED/PLUMED-2.9.0-foss-2022a.eb b/p/PLUMED/PLUMED-2.9.0-foss-2022a.eb new file mode 100644 index 00000000..c8533c24 --- /dev/null +++ b/p/PLUMED/PLUMED-2.9.0-foss-2022a.eb @@ -0,0 +1,64 @@ +# IT4Innovations +# LK 2023 + +easyblock = 'ConfigureMake' + +name = 'PLUMED' +version = '2.9.0' + +homepage = 'https://www.plumed.org' +description = """PLUMED is an open source library for free energy calculations in molecular systems which + works together with some of the most popular molecular dynamics engines. Free energy calculations can be + performed as a function of many order parameters with a particular focus on biological problems, using + state of the art methods such as metadynamics, umbrella sampling and Jarzynski-equation based steered MD. + The software, written in C++, can be easily interfaced with both fortran and C/C++ codes. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': 'True'} + +source_urls = ['https://github.com/plumed/plumed2/releases/download/v%(version)s/'] +sources = [SOURCE_TGZ] +checksums = ['534db9ccb9446844f3e99ecdff091ad79c014ce9c4afe212c1536e19f85ab0d1'] + +builddependencies = [ + ('xxd', '8.2.4220'), +] + +dependencies = [ + ('zlib', '1.2.12'), + ('GSL', '2.7'), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('Boost', '1.79.0'), +] + +preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' +configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python ' +configopts += '--enable-boost_graph --enable-boost_serialization ' +configopts += '--enable-asmjit ' +configopts += '--enable-mpi ' +prebuildopts = 'source sourceme.sh && ' + +# make sure that ld.gold linker is used +# required to work around problems like "ld: BFD (GNU Binutils) 2.30 assertion fail elf.c:3564" +# (problem with intel build but maintain consistency between easyconfigs) +buildopts = 'LD_RO="ld.gold -r -o"' + +# install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed +preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ' + +sanity_check_paths = { + 'files': ['bin/plumed', 'lib/libplumedKernel.%s' % SHLIB_EXT, 'lib/libplumed.%s' % SHLIB_EXT], + 'dirs': [], +} + +sanity_check_commands = ["python -c 'import plumed'"] + +modextrapaths = { + 'PLUMED_KERNEL': 'lib/libplumedKernel.%s' % SHLIB_EXT, + 'PLUMED_ROOT': 'lib/plumed', + 'PYTHONPATH': 'lib/plumed/python', +} + +moduleclass = 'chem' diff --git a/q/Qt6/Qt6-6.5.3-GCCcore-12.2.0.eb b/q/Qt6/Qt6-6.5.3-GCCcore-12.2.0.eb new file mode 100644 index 00000000..ec84eca6 --- /dev/null +++ b/q/Qt6/Qt6-6.5.3-GCCcore-12.2.0.eb @@ -0,0 +1,92 @@ +# IT4Innovations +# LK 2023 + +easyblock = 'CMakeNinja' + +name = 'Qt6' +version = '6.5.3' + +homepage = 'https://qt.io/' +description = "Qt is a comprehensive cross-platform C++ application framework." + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +# disabling use of -ftree-vectorize is required to avoid compilation failures on some systems (e.g. Intel Skylake X) +toolchainopts = {'vectorize': False} + +source_urls = [ + 'https://download.qt.io/official_releases/qt/%(version_major_minor)s/%(version)s/single/', + 'https://download.qt.io/archive/qt/%(version_major_minor)s/%(version)s/single/', + 'https://download.qt.io/new_archive/qt/%(version_major_minor)s/%(version)s/single/', +] +sources = ['qt-everywhere-src-%(version)s.tar.xz'] +patches = [ + 'Qt6-6.5.2_fix_OF-Gentoo.patch', +] +checksums = [ + {'qt-everywhere-src-6.5.3.tar.xz': '7cda4d119aad27a3887329cfc285f2aba5da85601212bcb0aea27bd6b7b544cb'}, + {'Qt6-6.5.2_fix_OF-Gentoo.patch': '62c4b1abdeac69f40fd48f5e46f470f9f9c328fdb02ab8aceb9aa1885ad8c601'}, +] + +builddependencies = [ + ('binutils', '2.39'), + ('pkgconf', '1.9.3'), + ('CMake', '3.24.3'), + ('Ninja', '1.11.1'), + # deps for QtWebEngine + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('gperf', '3.1'), + ('re2c', '3.0'), +] + +dependencies = [ + ('double-conversion', '3.2.1'), + ('GLib', '2.75.0'), + ('PCRE2', '10.40'), + ('libpng', '1.6.38'), + ('LibTIFF', '4.4.0'), + ('libwebp', '1.3.1'), + ('JasPer', '4.0.0'), + ('HarfBuzz', '5.3.1'), + ('SQLite', '3.39.4'), + ('graphite2', '1.3.14'), +# ('assimp', '5.2.5'), # for Qt 3D + ('FFmpeg', '5.1.2'), + ('X11', '20221110'), + ('fontconfig', '2.14.1'), + ('zlib', '1.2.12'), + ('Python', '3.10.8'), +# ('Python-bundle-PyPI', '2023.06'), # WebEngine +# ('freetype', '2.12.1'), # WebEngine + ('DBus', '1.15.2'), + # ('libevent', '2.1.12'), # WebEngine + ('libGLU', '9.0.2'), + # ('libjpeg-turbo', '2.1.4'), # WebEngine + # ('NSS', '3.85'), # WebEngine, required + # ('snappy', '1.1.9'), # WebEngine + ('OpenSSL', '1.1', '', SYSTEM), +# ('ICU', '72.1'), # WebEngine, optional +# ('nodejs', '18.12.1'), # WebEngine, required + # ('gRPC', '1.52.2'), # WebEngine needs older Abseil/gRPC/protobuf +] + +preconfigopts = 'sed -i "s/MultiMedia/Multimedia/g" ../qt-everywhere-src-%(version)s/qtcharts/CMakeLists.txt &&' # Typo +preconfigopts += 'sed -i "23i set(Python3_ROOT_DIR \\$ENV{EBROOTPYTHON})" ' \ + '../qt-everywhere-src-6.5.3/qtwebengine/src/gn/CMakeLists.txt &&' + +configopts = '-Wno-dev ' +configopts += '-DFEATURE_qtpdf_build=OFF ' # Requires CUPS +configopts += '-DQT_AVOID_CMAKE_ARCHIVING_API=ON ' +configopts += '-DPython3_ROOT_DIR=$EBROOTPYTHON ' +#configopts += '-DBUILD_qtwayland=OFF ' # Does not work on CentOS 7 +# Removed from Qt6.0.0 but may be added back in the future +# configopts += '-DBUILD_qtgamepad=OFF ' # Does not work on CentOS 7 + +sanity_check_paths = { + 'files': ['bin/qmake6', 'lib/libQt6Core.%s' % SHLIB_EXT ], + 'dirs': ['include/QtCore' ], +} + +sanity_check_commands = ['qmake6 --help'] + +moduleclass = 'devel' diff --git "a/q/Qt6/\\" "b/q/Qt6/\\" new file mode 100644 index 00000000..1d858eb4 --- /dev/null +++ "b/q/Qt6/\\" @@ -0,0 +1,92 @@ +# IT4Innovations +# LK 2023 + +easyblock = 'CMakeNinja' + +name = 'Qt6' +version = '6.5.3' + +homepage = 'https://qt.io/' +description = "Qt is a comprehensive cross-platform C++ application framework." + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +# disabling use of -ftree-vectorize is required to avoid compilation failures on some systems (e.g. Intel Skylake X) +toolchainopts = {'vectorize': False} + +source_urls = [ + 'https://download.qt.io/official_releases/qt/%(version_major_minor)s/%(version)s/single/', + 'https://download.qt.io/archive/qt/%(version_major_minor)s/%(version)s/single/', + 'https://download.qt.io/new_archive/qt/%(version_major_minor)s/%(version)s/single/', +] +sources = ['qt-everywhere-src-%(version)s.tar.xz'] +patches = [ + 'Qt6-6.5.2_fix_OF-Gentoo.patch', +] +checksums = [ + {'qt-everywhere-src-6.5.2.tar.xz': 'cde57be663d0f875759797298bdc37a936d517c39f2013e4e6ece5e12edeed12'}, + {'Qt6-6.5.2_fix_OF-Gentoo.patch': '62c4b1abdeac69f40fd48f5e46f470f9f9c328fdb02ab8aceb9aa1885ad8c601'}, +] + +builddependencies = [ + ('binutils', '2.39'), + ('pkgconf', '1.9.3'), + ('CMake', '3.24.3'), + ('Ninja', '1.11.1'), + # deps for QtWebEngine + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('gperf', '3.1'), + ('re2c', '3.0'), +] + +dependencies = [ + ('double-conversion', '3.2.1'), + ('GLib', '2.75.0'), + ('PCRE2', '10.40'), + ('libpng', '1.6.38'), + ('LibTIFF', '4.4.0'), + ('libwebp', '1.3.1'), + ('JasPer', '4.0.0'), + ('HarfBuzz', '5.3.1'), + ('SQLite', '3.39.4'), + ('graphite2', '1.3.14'), +# ('assimp', '5.2.5'), # for Qt 3D + ('FFmpeg', '5.1.2'), + ('X11', '20221110'), + ('fontconfig', '2.14.1'), + ('zlib', '1.2.12'), + ('Python', '3.10.8'), +# ('Python-bundle-PyPI', '2023.06'), # WebEngine + ('freetype', '2.12.1'), # WebEngine + ('DBus', '1.15.2'), + ('libevent', '2.1.12'), # WebEngine + ('libGLU', '9.0.2'), + ('libjpeg-turbo', '2.1.4'), # WebEngine + ('NSS', '3.85'), # WebEngine, required + ('snappy', '1.1.9'), # WebEngine + ('OpenSSL', '1.1', '', SYSTEM), + ('ICU', '72.1'), # WebEngine, optional + ('nodejs', '18.12.1'), # WebEngine, required + # ('gRPC', '1.52.2'), # WebEngine needs older Abseil/gRPC/protobuf +] + +preconfigopts = 'sed -i "s/MultiMedia/Multimedia/g" ../qt-everywhere-src-%(version)s/qtcharts/CMakeLists.txt &&' # Typo +preconfigopts += 'sed -i "23i set(Python3_ROOT_DIR \\$ENV{EBROOTPYTHON})" ' \ + '../qt-everywhere-src-6.5.2/qtwebengine/src/gn/CMakeLists.txt &&' + +configopts = '-Wno-dev ' +configopts += '-DFEATURE_qtpdf_build=OFF ' # Requires CUPS +configopts += '-DQT_AVOID_CMAKE_ARCHIVING_API=ON ' +configopts += '-DPython3_ROOT_DIR=$EBROOTPYTHON ' +#configopts += '-DBUILD_qtwayland=OFF ' # Does not work on CentOS 7 +# Removed from Qt6.0.0 but may be added back in the future +# configopts += '-DBUILD_qtgamepad=OFF ' # Does not work on CentOS 7 + +sanity_check_paths = { + 'files': ['bin/qmake6', 'lib/libQt6Core.%s' % SHLIB_EXT, 'lib/libQt6WebEngineCore.%s' % SHLIB_EXT], + 'dirs': ['include/QtCore', 'include/QtWebEngineCore'], +} + +sanity_check_commands = ['qmake6 --help'] + +moduleclass = 'devel' diff --git a/u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb b/u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb new file mode 100644 index 00000000..241bf5d4 --- /dev/null +++ b/u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb @@ -0,0 +1,51 @@ +# IT4Innovations +# LK 2023 + +easyblock = 'EB_UCX_Plugins' + +name = 'UCX-CUDA' +version = '1.14.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'http://www.openucx.org/' +description = """Unified Communication X +An open-source production grade communication framework for data centric +and high-performance applications + +This module adds the UCX CUDA support. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = [{'filename': 'ucx-%(version)s.tar.gz', 'alt_location': 'UCX'}] +patches = ['%(name)s-1.11.0_link_against_existing_UCX_libs.patch'] +checksums = [ + ('457187fa020e526609ba91e7750c9941d57bd57d60d6eed317b40ad8824aca93', + 'baa0634cafb269a3112f626eb226bcd2ca8c9fcf0fec3b8e2a3553baad5f77aa'), # ucx-1.14.1.tar.gz + {'UCX-CUDA-1.11.0_link_against_existing_UCX_libs.patch': + '457187fa020e526609ba91e7750c9941d57bd57d60d6eed317b40ad8824aca93'}, +] + +builddependencies = [ + ('binutils', '2.38'), + ('Autotools', '20220317'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('zlib', '1.2.12'), + ('UCX', '1.14.1'), + ('CUDA', '12.2.0', '', SYSTEM), + ('GDRCopy', '2.3'), +] + +configopts = '--enable-optimizations --enable-cma --enable-mt --with-verbs ' +configopts += '--without-java --without-go --disable-doxygen-doc ' + +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA", "BARBORA"]: + configopts += '--with-xpmem --with-knem=/opt/knem-1.1.4.90mlnx1' + +moduleclass = 'lib'