Skip to content

[singularity-bindings-system] [package list]

singularity-bindings-system/cpeGNU-21.08 (singularity-bindings-system-cpeGNU-21.08.eb)

This software is archived in the LUMI-EasyBuild-contrib GitHub repository as easybuild/easyconfigs/__archive__/s/singularity-bindings-system/singularity-bindings-system-cpeGNU-21.08.eb. The corresponding module would be singularity-bindings-system/cpeGNU-21.08.

easyblock = 'Bundle'

local_craympich_version = '8.1.8'
local_libfabric_version = '1.11.0.4.106'

name = 'singularity-bindings'
version = 'system'

homepage = 'https://www.sylabs.io/'

whatis = [
    'Description: Bindings to let singularity containers use the cray-mpich libraries on the system'    
]

description = """
Singularity is a portable application stack packaging and runtime utility.
This module provides the MPI support for singularity containers based
on MPICH versions which are ABI-compatible with cray-mpich.

Singularity on LUMI is provided in the base OS images, so no module needs
to be loaded to just use singularity. This module sets SINGULARTY_BIND and
SINGULARITYENV_LD_LIBRARY_PATH to enable containers that use an MPICH 
version that is ABI compatible with cray-mpich to use the cray-mpich
libraries provided on LUMI for optimal performance on the interconnect
of LUMI.
"""

toolchain = {'name': 'cpeGNU', 'version': '21.08'}

dependencies = [
    ('cray-mpich-abi/%s' % local_craympich_version, EXTERNAL_MODULE),
]

_glibc_stack = ('/lib64/libSegFault.so:/lib64/libSegFault.so,'
                '/lib64/librt.so.1:/lib64/librt.so.1,'
                '/lib64/libnss_dns.so.2:/lib64/libnss_dns.so.2,'
                '/lib64/libanl.so.1:/lib64/libanl.so.1,'
                '/lib64/libresolv.so.2:/lib64/libresolv.so.2,'
                '/lib64/libnsl.so.1:/lib64/libnsl.so.1,'
                '/lib64/libBrokenLocale.so.1:/lib64/libBrokenLocale.so.1,'
                '/lib64/libc.so.6:/lib64/libc.so.6,'
                '/lib64/libnss_hesiod.so.2:/lib64/libnss_hesiod.so.2,'
                '/lib64/libutil.so.1:/lib64/libutil.so.1,'
                '/lib64/libnss_files.so.2:/lib64/libnss_files.so.2,'
                '/lib64/libnss_compat.so.2:/lib64/libnss_compat.so.2,'
                '/lib64/libnss_db.so.2:/lib64/libnss_db.so.2,'
                '/lib64/libm.so.6:/lib64/libm.so.6,'
                '/lib64/libcrypt.so.1:/lib64/libcrypt.so.1,'
                '/lib64/libpthread.so.0:/lib64/libpthread.so.0,'
                '/lib64/libdl.so.2:/lib64/libdl.so.2,'
                '/lib64/libmvec.so.1:/lib64/libmvec.so.1,'
                '/lib64/libthread_db.so.1:/lib64/libthread_db.so.1,'
                '/lib64/ld-linux-x86-64.so.2:/lib64/ld-linux-x86-64.so.2')

modextravars = {
    'SINGULARITYENV_LD_LIBRARY_PATH': ('/lib64:'
                                       '/opt/cray/pe/mpich/' + local_craympich_version + '/ofi/gnu/9.1/lib-abi-mpich:'
                                       '/opt/cray/pe/lib64:'
                                       '/opt/cray/pe:'
                                       '/opt/cray/libfabric/' + local_libfabric_version + '/lib64:'
                                       '/usr/lib64:'
                                       '/opt/cray/pe/gcc-libs'),
    'SINGULARITY_BIND': ('/opt/cray,'
                         '/usr/lib64/libibverbs.so.1,'
                         '/usr/lib64/librdmacm.so.1,'
                         '/usr/lib64/libnl-3.so.200,'
                         '/usr/lib64/libnl-route-3.so.200,'
                         '/usr/lib64/libpals.so.0,'
                         '/var/spool/slurmd/mpi_cray_shasta,'
                         '/usr/lib64/libibverbs/libmlx5-rdmav25.so,'
                         '/etc/libibverbs.d,'
                         '%s' % _glibc_stack)
}

[singularity-bindings-system] [package list]