Skip to content

[hipSYCL] [package list]

hipSYCL/0.9.4-cpeGNU-22.08 (hipSYCL-0.9.4-cpeGNU-22.08.eb)

Install with the EasyBuild-user module:

eb hipSYCL-0.9.4-cpeGNU-22.08.eb -r
To access module help after installation and get reminded for which stacks and partitions the module is installed, use module spider hipSYCL/0.9.4-cpeGNU-22.08.

EasyConfig:

easyblock = 'CMakeMake'

name =    'hipSYCL'
version = '0.9.4'

homepage = 'https://hipsycl.github.io/'

whatis = [
    "Description: hipSYCL is a modern SYCL implementation targeting CPUs and GPUs, with a focus on leveraging existing toolchains such as CUDA or HIP"
]

description = """
hipSYCL is a modern SYCL implementation targeting CPUs and
GPUs, with a focus on leveraging existing toolchains such as CUDA or HIP.

It targets any CPU via OpenMP, NVIDIA GPUs via CUDA, AMD GPUs via HIP/ROCm and 
Intel GPUs via oneAPI Level Zero and SPIR-V (experimental). However, this 
module is for LUMI and does not contain the NVIDIA and Intel GPU support.
"""

toolchain = {'name': 'cpeGNU', 'version': '22.08'}
toolchainopts = {'verbose': False, 'openmp': True}

source_urls = ["https://github.com/illuhad/hipSYCL/archive/refs/tags/"]
sources =     ["v%(version)s.tar.gz"]
checksums =   ['6262533191c812966e2f8b67e6ae510ae5ad2cf7e0caecc9957e8a69423e51c4']

dependencies = [
    ('Boost',                '1.79.0'),
    ('cray-python/3.9.12.1', EXTERNAL_MODULE),
    ('rocm/5.3.3',           EXTERNAL_MODULE),
]

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

configopts  = '-DROCM_PATH=$ROCM_PATH '
configopts += '-DWITH_ACCELERATED_CPU=OFF '
configopts += '-DWITH_CPU_BACKEND=ON '
configopts += '-DWITH_CUDA_BACKEND=OFF '
configopts += '-DWITH_ROCM_BACKEND=ON '
configopts += '-DDEFAULT_GPU_ARCH=gfx90a '

sanity_check_paths = {
    'files': ['bin/syclcc-clang', 'include/sycl/sycl.hpp',
              'lib/hipSYCL/librt-backend-omp.%s' % SHLIB_EXT,
              'lib/hipSYCL/librt-backend-hip.%s' % SHLIB_EXT,
              'lib/libhipSYCL_clang.%s' % SHLIB_EXT,
              'lib/libhipSYCL-rt.%s' % SHLIB_EXT],
    'dirs': ['include/CL', 'include/hipSYCL', 'include/SYCL'],
}
sanity_check_commands = [
    'syclcc --help'
]

modextravars = {
    'HIPSYCL_TARGETS': 'hip:gfx90a',
}

moduleclass = 'compiler'

[hipSYCL] [package list]