easyconfigs-it4i/n/NVSHMEM/NVSHMEM-2.5.0-gompi-2022a-CUDA-11.7.0.eb
Lukas Krupcik a48ddb6240 new file: l/LAre3d/LAre3d-20230726-intel-2022b.eb
modified:   l/libxml2/libxml2-2.9.9.eb
	modified:   l/libxslt/libxslt-1.1.33.eb
	new file:   n/NVSHMEM/NVSHMEM-2.5.0-gompi-2022a-CUDA-11.7.0.eb
	new file:   n/NVSHMEM/NVSHMEM-2.7.0-gompi-2022a-CUDA-11.7.0.eb
	new file:   v/VisIt/VisIt-3.3.3.eb
2023-08-08 09:24:37 +02:00

71 lines
2.2 KiB
Plaintext

easyblock = 'ConfigureMake'
name = 'NVSHMEM'
version = '2.5.0'
versionsuffix = '-CUDA-%(cudaver)s'
homepage = 'https://developer.nvidia.com/nvshmem'
description = """NVSHMEM is a parallel programming interface based on OpenSHMEM that provides
efficient and scalable communication for NVIDIA GPU clusters. NVSHMEM creates a
global address space for data that spans the memory of multiple GPUs and can be
accessed with fine-grained GPU-initiated operations, CPU-initiated operations,
and operations on CUDA streams.
"""
toolchain = {'name': 'gompi', 'version': '2022a'}
download_instructions = """The sources of NVSHMEM can be downloaded at NVIDIA's webpage when you have signed up for
their (free) developer program:
https://developer.nvidia.com/nvshmem-downloads"""
sources = ['%(namelower)s_src_%(version)s-19.txz']
checksums = ['dd800b40f1d296e1d3ed2a9885adcfe745c3e57582bc809860e87bd32abcdc60']
builddependencies = [
('Autotools', '20220317'),
('pkgconf', '1.8.0'),
]
dependencies = [
('CUDA', '11.7.0', '', SYSTEM),
('UCX-CUDA', '1.12.1', versionsuffix),
('NCCL', '2.12.12', versionsuffix),
]
skipsteps = ['configure']
prebuildopts = 'export %s &&' % ' '.join([
'NVSHMEM_USE_GDRCOPY=1',
'GDRCOPY_HOME=${EBROOTGDRCOPY}',
'MPI_HOME=${EBROOTOPENMPI}',
'NVSHMEM_MPI_SUPPORT=1',
'NVSHMEMTEST_USE_MPI_LAUNCHER=1',
'NCCL_HOME=${EBROOTNCCL}',
'NVSHMEM_USE_NCCL=1',
'NVSHMEM_BUILDDIR=%(builddir)s',
'NVSHMEM_EXAMPLES_BUILDDIR=${NVSHMEM_BUILDDIR}/examples/obj',
'NVSHMEM_OTHERTEST_BUILDDIR=${NVSHMEM_BUILDDIR}/othertest/obj',
'NVSHMEM_TEST_BUILDDIR=${NVSHMEM_BUILDDIR}/test/obj',
'NVSHMEM_PERFTEST_BUILDDIR=${NVSHMEM_BUILDDIR}/perftest/obj',
'NVSHMEM_PREFIX=%(installdir)s',
'NVSHMEM_EXAMPLES_INSTALL=${NVSHMEM_PREFIX}/examples',
'NVSHMEM_OTHERTEST_INSTALL=${NVSHMEM_PREFIX}/othertest',
'NVSHMEM_PERFTEST_INSTALL=${NVSHMEM_PREFIX}/perftest',
'NVSHMEM_TEST_INSTALL=${NVSHMEM_PREFIX}/test',
])
preinstallopts = prebuildopts
sanity_check_paths = {
'files': ['lib/libnvshmem.a', 'lib/nvshmem_bootstrap_mpi.%s' % SHLIB_EXT],
'dirs': ['include']
}
modextravars = {'NVSHMEM_HOME': '%(installdir)s'}
moduleclass = 'devel'