Skip to content

[Kokkos] [package list]

Kokkos/4.5.1-cpeAMD-24.03-rocm (Kokkos-4.5.1-cpeAMD-24.03-rocm.eb)

Install with the EasyBuild-user module:

eb Kokkos-4.5.1-cpeAMD-24.03-rocm.eb -r
To access module help after installation and get reminded for which stacks and partitions the module is installed, use module spider Kokkos/4.5.1-cpeAMD-24.03-rocm.

EasyConfig:

easyblock = 'CMakeMake'

name =    'Kokkos'
version = '4.5.01'
versionsuffix = '-rocm'

homepage = 'https://kokkos.org/'

whatis = [
    "Description: Kokkos C++ Performance Portability Programming Ecosystem: The Programming Model - Parallel Execution and Memory Abstraction"
]

description = """
Kokkos C++ Performance Portability Programming Ecosystem: The Programming Model - Parallel Execution and Memory Abstraction
"""

toolchain = {'name': 'cpeAMD', 'version': '24.03'}
toolchainopts = {'verbose': False, 'openmp': True}

sources = [{
    'filename': '%(name)s-%(version)s.tar.gz',
    'git_config': {
        'url': 'https://github.com/kokkos',
        'repo_name': '%(namelower)s',
        'commit': '%(version)s',
    }
}]

builddependencies = [
    ('buildtools', '%(toolchain_version)s', '', True),
]

dependencies = [
    ('rocm',        EXTERNAL_MODULE),
]

preconfigopts = 'module unload craype-accel-amd-gfx90a && '

configopts  = '-D CMAKE_CXX_COMPILER=${ROCM_PATH}/bin/hipcc '
configopts += '-D BUILD_SHARED_LIBS=ON '
configopts += '-D Kokkos_ENABLE_ROCM=ON '
configopts += '-D Kokkos_ENABLE_HIP=ON '
configopts += '-D Kokkos_ENABLE_OPENMP=ON '
configopts += '-D Kokkos_ARCH_ZEN3=ON '
configopts += '-D Kokkos_ARCH_AMD_GFX90A=ON '
configopts += '-D OpenMP_CXX_FLAGS=-fopenmp '
configopts += '-D Kokkos_ENABLE_DEPRECATION_WARNINGS=ON '
configopts += '-D Kokkos_ENABLE_HIP_MULTIPLE_KERNEL_INSTANTIATIONS=ON '

prebuildopts = 'module unload craype-accel-amd-gfx90a && '

sanity_check_paths = {
    'files': ['lib/libkokkoscore.%s' % SHLIB_EXT,
              'lib/libkokkoscontainers.%s' % SHLIB_EXT,
              'include/KokkosCore_config.h'],
    'dirs': ['lib', 'include'],
}

moduleclass = 'lib'

[Kokkos] [package list]