Skip to content

Commit

Permalink
Merge pull request #20581 from SebastianAchilles/20240522094952_new_p…
Browse files Browse the repository at this point in the history
…r_hwloc2100

{lib}[GCCcore/13.3.0] hwloc v2.10.0, UCX v1.16.0, UCC v1.3.0
  • Loading branch information
boegel authored May 23, 2024
2 parents 9c2571e + aca1b00 commit 18b9c33
Show file tree
Hide file tree
Showing 3 changed files with 137 additions and 0 deletions.
44 changes: 44 additions & 0 deletions easybuild/easyconfigs/h/hwloc/hwloc-2.10.0-GCCcore-13.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
easyblock = 'ConfigureMake'

name = 'hwloc'
version = '2.10.0'

homepage = 'https://www.open-mpi.org/projects/hwloc/'

description = """
The Portable Hardware Locality (hwloc) software package provides a portable
abstraction (across OS, versions, architectures, ...) of the hierarchical
topology of modern architectures, including NUMA memory nodes, sockets, shared
caches, cores and simultaneous multithreading. It also gathers various system
attributes such as cache and memory information as well as the locality of I/O
devices such as network interfaces, InfiniBand HCAs or GPUs. It primarily
aims at helping applications with gathering information about modern computing
hardware so as to exploit it accordingly and efficiently.
"""

toolchain = {'name': 'GCCcore', 'version': '13.3.0'}

source_urls = ['https://www.open-mpi.org/software/hwloc/v%(version_major_minor)s/downloads/']
sources = [SOURCE_TAR_GZ]
checksums = ['c7fd8a1404a9719c76aadc642864b9f77aed1dc1fc8882d6af861a9260ba240d']

builddependencies = [
('binutils', '2.42'),
]

dependencies = [
('numactl', '2.0.18'),
('libxml2', '2.12.7'),
('libpciaccess', '0.18.1'),
]

configopts = "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev "

sanity_check_paths = {
'files': ['bin/lstopo', 'include/hwloc/linux.h',
'lib/libhwloc.%s' % SHLIB_EXT],
'dirs': ['share/man/man3'],
}
sanity_check_commands = ['lstopo']

moduleclass = 'system'
41 changes: 41 additions & 0 deletions easybuild/easyconfigs/u/UCC/UCC-1.3.0-GCCcore-13.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
easyblock = 'ConfigureMake'

name = 'UCC'
version = '1.3.0'

homepage = 'https://www.openucx.org/'
description = """UCC (Unified Collective Communication) is a collective
communication operations API and library that is flexible, complete, and
feature-rich for current and emerging programming models and runtimes.
"""

toolchain = {'name': 'GCCcore', 'version': '13.3.0'}
toolchainopts = {'pic': True}

source_urls = ['https://github.com/openucx/ucc/archive/refs/tags']
sources = ['v%(version)s.tar.gz']
patches = ['UCC-1.1.0-multiple_component_paths.patch']
checksums = [
{'v1.3.0.tar.gz': 'b56379abe5f1c125bfa83be305d78d81a64aa271b7b5fff0ac17b86725ff3acf'},
{'UCC-1.1.0-multiple_component_paths.patch': '3081d0f694331daa4a88a0fa3fb54b9a918015248ae5eb7b3157b924abd31bee'},
]

builddependencies = [
('binutils', '2.42'),
('Autotools', '20231222'),
]

dependencies = [
('UCX', '1.16.0'),
]

preconfigopts = "./autogen.sh && "

sanity_check_paths = {
'files': ['bin/ucc_info'],
'dirs': ['include', 'lib']
}

sanity_check_commands = ["ucc_info -c"]

moduleclass = 'lib'
52 changes: 52 additions & 0 deletions easybuild/easyconfigs/u/UCX/UCX-1.16.0-GCCcore-13.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
easyblock = 'ConfigureMake'

name = 'UCX'
version = '1.16.0'

homepage = 'https://www.openucx.org/'
description = """Unified Communication X
An open-source production grade communication framework for data centric
and high-performance applications
"""

toolchain = {'name': 'GCCcore', 'version': '13.3.0'}
toolchainopts = {'pic': True}

source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s']
sources = ['%(namelower)s-%(version)s.tar.gz']
patches = [
'UCX-1.13.1-dynamic_modules.patch',
]
checksums = [
{'ucx-1.16.0.tar.gz': 'f73770d3b583c91aba5fb07557e655ead0786e057018bfe42f0ebe8716e9d28c'},
{'UCX-1.13.1-dynamic_modules.patch': '00874687bd90b795fff61aaa183f6c6bea2210aa1003b28f23d9ebf7066f8782'},
]

builddependencies = [
('binutils', '2.42'),
('Autotools', '20231222'),
('pkgconf', '2.2.0'),
]

osdependencies = [OS_PKG_IBVERBS_DEV]

dependencies = [
('zlib', '1.3.1'),
('numactl', '2.0.18'),
]

configopts = '--enable-optimizations --enable-cma --enable-mt --with-verbs '
configopts += '--without-java --without-go --disable-doxygen-doc '
# include the configure options from contrib/configure-release
configopts += '--disable-logging --disable-debug --disable-assertions --disable-params-check '

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'

0 comments on commit 18b9c33

Please sign in to comment.