easyconfigs-it4i/n/NVSHMEM/NVSHMEM-2.8.0-gompi-2022a-CUDA-11.7.0.eb
Lukas Krupcik ec3e858279 new file: g/GROMACS/GROMACS-2022-constantph-fix_missing_header.patch
new file:   g/GROMACS/GROMACS-2022-foss-2022a-constantph.eb
	new file:   g/git/git-2.38.1.eb
	modified:   l/libmad/libmad-0.15.1b-GCCcore-11.3.0.eb
	new file:   l/libmad/libmad-0.15.1b-GCCcore-12.2.0.eb
	new file:   l/libmad/libmad-0.15.1b-remove-depreciated-gcc-option.patch
	new file:   n/NVHPC/NVHPC-23.1.eb
	new file:   n/NVSHMEM/NVSHMEM-2.8.0-gompi-2022a-CUDA-11.7.0.eb
	modified:   o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.7-CUDA-11.7.0.eb
	new file:   s/STAR-CCM+/STAR-CCM+-18.02.008-r8.eb
	new file:   s/SoX/SoX-14.4.2-GCCcore-12.2.0.eb
	modified:   x/XALT/XALT-2.10.45-GPU-eb.eb
2023-03-28 21:34:37 +02:00

74 lines
2.2 KiB
Plaintext

# IT4Innovations
# LK 2023
easyblock = 'ConfigureMake'
name = 'NVSHMEM'
version = '2.9.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-2.tar.xz']
checksums = ['c0e0d1a5b13f3e2f12fd79b44645dde5370e2baf7392082aee7aa0a0063d75a6']
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'