diff --git a/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..5d28ebcf501 --- /dev/null +++ b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-11.3.0.eb @@ -0,0 +1,50 @@ +# Copyright 2019 Juelich Supercomputing Centre, Germany +# Copyright 2023-2024 TU Dresden, Germany +# Authors:: Markus Geimer +# Alexander Grund +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ + +easyblock = 'EB_Score_minus_P' + +name = 'CubeLib' +version = '4.8.2' + +homepage = 'https://www.scalasca.org/software/cube-4.x/download.html' +description = """ + Cube, which is used as performance report explorer for Scalasca and Score-P, + is a generic tool for displaying a multi-dimensional performance space + consisting of the dimensions (i) performance metric, (ii) call path, and + (iii) system resource. Each dimension can be represented as a tree, where + non-leaf nodes of the tree can be collapsed or expanded to achieve the + desired level of granularity. + + This module provides the Cube general purpose C++ library component and + command-line tools. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +source_urls = ['https://apps.fz-juelich.de/scalasca/releases/cube/%(version_major_minor)s/dist'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d6fdef57b1bc9594f1450ba46cf08f431dd0d4ae595c47e2f3454e17e4ae74f4'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('zlib', '1.2.12'), +] + +configopts = '--enable-shared' + +sanity_check_paths = { + 'files': ['bin/cubelib-config', + 'lib/libcube4.a', 'lib/libcube4.%s' % SHLIB_EXT], + 'dirs': ['include/cubelib'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..3039dd547d5 --- /dev/null +++ b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-12.3.0.eb @@ -0,0 +1,51 @@ +# Copyright 2019 Juelich Supercomputing Centre, Germany +# Copyright 2023-2024 TU Dresden, Germany +# Authors:: Markus Geimer +# Alexander Grund +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ + +easyblock = 'EB_Score_minus_P' + +name = 'CubeLib' +version = '4.8.2' + +homepage = 'https://www.scalasca.org/software/cube-4.x/download.html' +description = """ + Cube, which is used as performance report explorer for Scalasca and Score-P, + is a generic tool for displaying a multi-dimensional performance space + consisting of the dimensions (i) performance metric, (ii) call path, and + (iii) system resource. Each dimension can be represented as a tree, where + non-leaf nodes of the tree can be collapsed or expanded to achieve the + desired level of granularity. + + This module provides the Cube general purpose C++ library component and + command-line tools. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +source_urls = ['https://apps.fz-juelich.de/scalasca/releases/cube/%(version_major_minor)s/dist'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d6fdef57b1bc9594f1450ba46cf08f431dd0d4ae595c47e2f3454e17e4ae74f4'] + +builddependencies = [ + # use same binutils version that was used when building GCCcore + ('binutils', '2.40'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('zlib', '1.2.13'), +] + +configopts = '--enable-shared' + +sanity_check_paths = { + 'files': ['bin/cubelib-config', + 'lib/libcube4.a', 'lib/libcube4.%s' % SHLIB_EXT], + 'dirs': ['include/cubelib'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..17faeb9292b --- /dev/null +++ b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-11.3.0.eb @@ -0,0 +1,50 @@ +# Copyright:: Copyright 2019 Juelich Supercomputing Centre, Germany +# Copyright 2023-2024 TU Dresden, Germany +# Authors:: Markus Geimer +# Alexander Grund +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ + +easyblock = 'EB_Score_minus_P' + +name = 'CubeWriter' +version = '4.8.2' + +homepage = 'https://www.scalasca.org/software/cube-4.x/download.html' +description = """ + Cube, which is used as performance report explorer for Scalasca and Score-P, + is a generic tool for displaying a multi-dimensional performance space + consisting of the dimensions (i) performance metric, (ii) call path, and + (iii) system resource. Each dimension can be represented as a tree, where + non-leaf nodes of the tree can be collapsed or expanded to achieve the + desired level of granularity. + + This module provides the Cube high-performance C writer library component. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://apps.fz-juelich.de/scalasca/releases/cube/%(version_major_minor)s/dist'] +sources = ['cubew-%(version)s.tar.gz'] +checksums = ['4f3bcf0622c2429b8972b5eb3f14d79ec89b8161e3c1cc5862ceda417d7975d2'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('zlib', '1.2.12'), +] + +configopts = '--enable-shared' + +sanity_check_paths = { + 'files': ['bin/cubew-config', + 'lib/libcube4w.a', 'lib/libcube4w.%s' % SHLIB_EXT], + 'dirs': ['include/cubew'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..ccb04669874 --- /dev/null +++ b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-12.3.0.eb @@ -0,0 +1,51 @@ +# Copyright:: Copyright 2019 Juelich Supercomputing Centre, Germany +# Copyright 2023-2024 TU Dresden, Germany +# Authors:: Markus Geimer +# Alexander Grund +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ + +easyblock = 'EB_Score_minus_P' + +name = 'CubeWriter' +version = '4.8.2' + +homepage = 'https://www.scalasca.org/software/cube-4.x/download.html' +description = """ + Cube, which is used as performance report explorer for Scalasca and Score-P, + is a generic tool for displaying a multi-dimensional performance space + consisting of the dimensions (i) performance metric, (ii) call path, and + (iii) system resource. Each dimension can be represented as a tree, where + non-leaf nodes of the tree can be collapsed or expanded to achieve the + desired level of granularity. + + This module provides the Cube high-performance C writer library component. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://apps.fz-juelich.de/scalasca/releases/cube/%(version_major_minor)s/dist'] +sources = ['cubew-%(version)s.tar.gz'] +checksums = ['4f3bcf0622c2429b8972b5eb3f14d79ec89b8161e3c1cc5862ceda417d7975d2'] + +builddependencies = [ + # use same binutils version that was used when building GCCcore + ('binutils', '2.40'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('zlib', '1.2.13'), +] + +configopts = '--enable-shared' + +sanity_check_paths = { + 'files': ['bin/cubew-config', + 'lib/libcube4w.a', 'lib/libcube4w.%s' % SHLIB_EXT], + 'dirs': ['include/cubew'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..f195f0ceaeb --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a-CUDA-11.7.0.eb @@ -0,0 +1,57 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('UCX-CUDA', '1.12.1', versionsuffix), + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.2'), + # Hardware counter support (optional): + ('PAPI', '7.0.0'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a.eb new file mode 100644 index 00000000000..1317ae392d9 --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022a.eb @@ -0,0 +1,54 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.2'), + # Hardware counter support (optional): + ('PAPI', '7.0.0'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b-CUDA-12.0.0.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b-CUDA-12.0.0.eb new file mode 100644 index 00000000000..8b60baea472 --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b-CUDA-12.0.0.eb @@ -0,0 +1,57 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2022b'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CUDA', '12.0.0', '', SYSTEM), + ('UCX-CUDA', '1.13.1', versionsuffix), + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.0.1'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b.eb new file mode 100644 index 00000000000..e19b8fcc05b --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2022b.eb @@ -0,0 +1,54 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2022b'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.0.1'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..51caeb1df08 --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a-CUDA-12.1.1.eb @@ -0,0 +1,57 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('UCX-CUDA', '1.14.1', versionsuffix), + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.0.1'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a.eb new file mode 100644 index 00000000000..2e47de3fd8b --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.4-gompi-2023a.eb @@ -0,0 +1,54 @@ +# Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2024 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD + +name = 'Score-P' +version = '8.4' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['7bbde9a0721d27cc6205baf13c1626833bcfbabb1f33b325a2d67976290f7f8a'] + +dependencies = [ + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.0.1'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf'