From 6aebeeac3d023a070150d8fdeb23d0d3abf54c65 Mon Sep 17 00:00:00 2001 From: Lukas Krupcik Date: Mon, 14 Mar 2022 18:46:35 +0100 Subject: [PATCH] new file: f/Forge/Forge-21.1.3-test.eb new file: o/OpenFOAM/OpenFOAM-9-foss-2021a.eb modified: o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb modified: o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb new file: u/UCX/UCX-1.12.0-GCC-10.2.0-CUDA-11.6.0.eb new file: u/UCX/UCX-1.12.0-NVHPC-22.2-CUDA-11.6.0.eb --- f/Forge/Forge-21.1.3-test.eb | 53 +++++++++++++++++++ o/OpenFOAM/OpenFOAM-9-foss-2021a.eb | 42 +++++++++++++++ ...OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb | 2 +- .../OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb | 2 +- u/UCX/UCX-1.12.0-GCC-10.2.0-CUDA-11.6.0.eb | 49 +++++++++++++++++ u/UCX/UCX-1.12.0-NVHPC-22.2-CUDA-11.6.0.eb | 50 +++++++++++++++++ 6 files changed, 196 insertions(+), 2 deletions(-) create mode 100644 f/Forge/Forge-21.1.3-test.eb create mode 100644 o/OpenFOAM/OpenFOAM-9-foss-2021a.eb create mode 100644 u/UCX/UCX-1.12.0-GCC-10.2.0-CUDA-11.6.0.eb create mode 100644 u/UCX/UCX-1.12.0-NVHPC-22.2-CUDA-11.6.0.eb diff --git a/f/Forge/Forge-21.1.3-test.eb b/f/Forge/Forge-21.1.3-test.eb new file mode 100644 index 00000000..5d562ef5 --- /dev/null +++ b/f/Forge/Forge-21.1.3-test.eb @@ -0,0 +1,53 @@ +# IT4Innovations 2020 +# !!! --include-easyblocks /apps/easybuild/it4i-easyblocks/easyblocks/a/allineabase.py !!! +# LK + +easyblock = 'AllineaBase' + +name = 'Forge' +version = "21.1.3" +versionsuffix = '-test' + +homepage = 'http://www.allinea.com/products/develop-allinea-forge' +description = """Allinea Forge is the local_complete toolsuite for software development +- with everything needed to debug, profile, optimize, edit and build C, C++ +and FORTRAN applications on Linux for high performance - from single threads through +to local_complex parallel HPC codes with MPI, OpenMP, threads or CUDA. +""" + +toolchain = SYSTEM + +source_urls = [ + # Use manually downloaded sources + # http://content.allinea.com/downloads/allinea-reports-latest-Redhat-6.0-x86_64.tar + # and rename it to format %(namelower)s-%(version)s.tar, so + # forge-7.0.4.tar. +] +sources = ['arm-forge-21.1.3-linux-x86_64.tar'] + +skipsteps = ['configure', 'build'] + +dependencies = [ + ('X11', '20210802', '-GCCcore-11.2.0'), +] + +postinstallcmds = [ + 'ln -s /apps/licenses/Arm/Licence %(installdir)s/licences/Licence.16312', + 'ln -s /apps/licenses/PerformanceReports/Licence %(installdir)s/licences/Licence.16313', +] + +sanity_check_paths = { + 'files': [ + 'bin/ddt-client', + 'bin/map', + 'bin/ddt', + #'bin/ddt-debugger', + #'bin/ddt-debugger-ll', + #'bin/ddt-debugger-mps', + 'bin/ddt-mpirun', + 'bin/forge', + 'bin/make-profiler-libraries'], + 'dirs': ['lib'], +} + +moduleclass = 'debugger' diff --git a/o/OpenFOAM/OpenFOAM-9-foss-2021a.eb b/o/OpenFOAM/OpenFOAM-9-foss-2021a.eb new file mode 100644 index 00000000..40d92eaa --- /dev/null +++ b/o/OpenFOAM/OpenFOAM-9-foss-2021a.eb @@ -0,0 +1,42 @@ +# IT4Innovations +# LK 2022 + +name = 'OpenFOAM' +version = '9' + +homepage = 'https://www.openfoam.org/' +description = """OpenFOAM is a free, open source CFD software package. + OpenFOAM has an extensive range of features to solve anything from complex fluid flows + involving chemical reactions, turbulence and heat transfer, + to solid dynamics and electromagnetics.""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s/archive'] +sources = ['version-%(version)s.tar.gz'] +patches = ['OpenFOAM-%(version)s-cleanup.patch'] +checksums = [ + '0c48fb56e2fbb4dd534112811364d3b2dc12106e670a6486b361e4f864b435ee', # version-9.tar.gz + '4b638891f32badde1a5b1b364bc3bd5e0eda180b9d9a8afdf797d5818b8b494e', # OpenFOAM-9-cleanup.patch +] + +builddependencies = [ + ('Bison', '3.7.6'), + ('CMake', '3.20.1'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('libreadline', '8.1'), + ('ncurses', '6.2'), + # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes) + ('METIS', '5.1.0'), + ('SCOTCH', '6.1.0'), + ('CGAL', '4.14.3'), + ('ParaView', '5.9.1', '-mpi'), + ('gnuplot', '5.4.2'), +] + +#execute {cmd="source /apps/all/OpenFOAM/9-foss-2021a/OpenFOAM-9/etc/bashrc",modeA={"load"}} + +moduleclass = 'cae' diff --git a/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb b/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb index f910e554..75d18782 100644 --- a/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb +++ b/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb @@ -14,7 +14,7 @@ source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/ sources = [SOURCELOWER_TAR_GZ] dependencies = [ - ('UCX', '1.11.2', '-NVHPC-22.2-CUDA-11.6.0', True), + ('UCX', '1.12.0', '-NVHPC-22.2-CUDA-11.6.0', True), ('CUDAcore', '11.6.0', '', True), ] diff --git a/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb b/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb index a4ffb274..ff165186 100644 --- a/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb +++ b/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb @@ -14,7 +14,7 @@ source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/ sources = [SOURCELOWER_TAR_GZ] dependencies = [ - ('UCX', '1.11.2', '-GCC-10.2.0-CUDA-11.6.0', True), + ('UCX', '1.12.0', '-GCC-10.2.0-CUDA-11.6.0', True), ('CUDAcore', '11.6.0', '', True), ] diff --git a/u/UCX/UCX-1.12.0-GCC-10.2.0-CUDA-11.6.0.eb b/u/UCX/UCX-1.12.0-GCC-10.2.0-CUDA-11.6.0.eb new file mode 100644 index 00000000..81fd1f9e --- /dev/null +++ b/u/UCX/UCX-1.12.0-GCC-10.2.0-CUDA-11.6.0.eb @@ -0,0 +1,49 @@ +# IT4Innovations +# LK 2022 + +easyblock = 'ConfigureMake' + +name = 'UCX' +version = '1.12.0' +versionsuffix= '-CUDA-11.6.0' + +homepage = 'http://www.openucx.org/' +description = """Unified Communication X +An open-source production grade communication framework for data centric +and high-performance applications +""" + +toolchain = {'name': 'GCC', 'version': '10.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.gz'] +#patches = ['%(name)s-%(version)s.patch'] + +builddependencies = [ + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +dependencies = [ + ('numactl', '2.0.13'), + ('CUDAcore', '11.6.0', '', True), +] + +configure_cmd = "contrib/configure-release" + +configopts = '--enable-optimizations --enable-cma --enable-mt --with-verbs --with-gdrcopy=$EBROOTGDRCOPY ' +configopts += '--without-java --disable-doxygen-doc --with-cuda=$EBROOTCUDACORE ' + +buildopts = 'V=1' + +sanity_check_paths = { + 'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'], + 'dirs': ['include', 'lib', 'share'] +} + +#sanity_check_commands = ["ucx_info -d"] + +moduleclass = 'lib' diff --git a/u/UCX/UCX-1.12.0-NVHPC-22.2-CUDA-11.6.0.eb b/u/UCX/UCX-1.12.0-NVHPC-22.2-CUDA-11.6.0.eb new file mode 100644 index 00000000..0197603a --- /dev/null +++ b/u/UCX/UCX-1.12.0-NVHPC-22.2-CUDA-11.6.0.eb @@ -0,0 +1,50 @@ +# IT4Innovations +# LK 2022 + +easyblock = 'ConfigureMake' + +name = 'UCX' +version = '1.12.0' +versionsuffix= '-CUDA-11.6.0' + +homepage = 'http://www.openucx.org/' +description = """Unified Communication X +An open-source production grade communication framework for data centric +and high-performance applications +""" + +toolchain = {'name': 'NVHPC', 'version': '22.2'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.gz'] +#patches = ['%(name)s-%(version)s.patch'] + +builddependencies = [ + ('binutils', '2.35'), + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +dependencies = [ + ('numactl', '2.0.13'), + ('CUDAcore', '11.6.0', '', True), +] + +configure_cmd = "contrib/configure-release" + +configopts = '--enable-optimizations --enable-cma --enable-mt --with-verbs --with-gdrcopy=$EBROOTGDRCOPY ' +configopts += '--without-java --disable-doxygen-doc --with-cuda=$EBROOTCUDACORE ' + +buildopts = 'V=1' + +sanity_check_paths = { + 'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'], + 'dirs': ['include', 'lib', 'share'] +} + +#sanity_check_commands = ["ucx_info -d"] + +moduleclass = 'lib'