HeFFTe/2.4.0-cpeAMD-23.09-rocm-5.6.1 (HeFFTe-2.4.0-cpeAMD-23.09-rocm-5.6.1.eb)
This software is archived in the LUMI-EasyBuild-contrib GitHub repository as easybuild/easyconfigs/__archive__/h/HeFFTe/HeFFTe-2.4.0-cpeAMD-23.09-rocm-5.6.1.eb. The corresponding module would be HeFFTe/2.4.0-cpeAMD-23.09-rocm-5.6.1.
easyblock = 'CMakeMake'
local_rocm_version = '5.6.1'
name = 'HeFFTe'
version = '2.4.0'
versionsuffix = f'-rocm-{local_rocm_version}'
homepage = 'https://icl.utk.edu/fft'
description = "Highly Efficient FFT for Exascale (HeFFTe) library"
toolchain = {'name': 'cpeAMD', 'version': '23.09'}
sources = {
'download_filename': 'v%(version)s.tar.gz',
'filename': SOURCELOWER_TAR_GZ,
'source_urls': ['https://github.com/icl-utk-edu/heffte/archive/refs/tags/']
}
builddependencies = [
('buildtools', '%(toolchain_version)s', '', True),
]
dependencies = [
('cray-python/3.10.10', EXTERNAL_MODULE),
('gcc-mixed/12.2.0', EXTERNAL_MODULE),
('amd', local_rocm_version, '', SYSTEM),
('rocm', local_rocm_version, '', SYSTEM),
]
build_shared_libs = True
configopts = '-D CMAKE_BUILD_TYPE=Release '
configopts += '-D Heffte_ENABLE_AVX=ON '
configopts += '-D Heffte_ENABLE_ROCM=ON '
configopts += '-D CMAKE_CXX_COMPILER=hipcc '
configopts += '-D CMAKE_HIP_FLAGS="--offload-arch=gfx90a" '
configopts += '-D MPI_CXX_COMPILER=CC '
configopts += '-D CMAKE_CXX_FLAGS="--gcc-toolchain=${GCC_PATH}/snos/" '
sanity_check_paths = {
'files': ['lib/libheffte.%s' % SHLIB_EXT],
'dirs': ['include', 'lib/cmake/Heffte', 'share/heffte/examples'],
}
moduleclass = 'lib'