SZ/2.1.12.5-cpeCray-26.03-hdf5-parallel (SZ-2.1.12.5-cpeCray-26.03-hdf5-parallel.eb)
Install with the EasyBuild-user module:
To access module help after installation and get reminded for which stacks and partitions the module is installed, usemodule spider SZ/2.1.12.5-cpeCray-26.03-hdf5-parallel.
EasyConfig:
# Based on a easyconfig by the Juelich Supercomputing Centre
# Adapted for LUMI by Orian Louant
#
#DOC This version uses the `cray-hdf5-parallel` and `cray-netcdf-hdf5parallel` modules.
easyblock = 'CMakeMake'
local_zlib_version = '2.3.3' # https://github.com/zlib-ng/zlib-ng/releases
local_SZ_version = '2.1.12.5' # https://github.com/szcompressor/SZ/releases
name = 'SZ'
version = local_SZ_version
version_suffix = '-hdf5-parallel'
homepage = 'https://szcompressor.org'
whatis = ['SZ is a modular parametrizable lossy compressor framework for scientific data']
description = """
SZ is a modular parametrizable lossy compressor framework for scientific data
(floating point and integers). It has applications in simulations, AI and
instruments. It is a production quality software and a research platform for
lossy compression.
SZ can be used for classic use-cases: visualization, accelerating I/O,
reducing memory and storage footprint and more advanced use-cases like
compression of DNN models and training sets, acceleration of computation,
checkpoint/restart, reducing streaming intensity and running efficiently large
problems that cannot fit in memory. Other use-cases will augment this list as
users find new opportunities to benefit from lossy compression of scientific
data.
"""
doc_urls = [
'PDF documentation on https://github.com/szcompressor/SZ2/tree/master/doc'
]
software_license_urls = ['https://github.com/szcompressor/SZ/blob/master/copyright-and-BSD-license.txt']
toolchain = {'name': 'cpeCray', 'version': '26.03'}
toolchain_opts = {'pic': True}
# https://github.com/szcompressor/SZ2/releases/download/v2.1.12.5/SZ-2.1.12.5.tar.gz
source_urls = ['https://github.com/szcompressor/SZ2/releases/download/v%(version)s']
sources = ['SZ-%(version)s.tar.gz']
checksums = ['32a820daf6019156a777300389d2392e4498a5c9daffce7be754cd0a5ba8729c']
build_deps = [
('buildtools', '%(toolchain_version)s', '', True),
('craype-accel-host', EXTERNAL_MODULE),
]
deps = [
('zlib', local_zlib_version),
('cray-hdf5-parallel', EXTERNAL_MODULE),
('cray-netcdf-hdf5parallel', EXTERNAL_MODULE),
]
pre_configure_opts = 'module unload cray-libsci rocm && '
pre_build_opts = pre_configure_opts
pre_configure_opts += ' && '.join([
'export PKG_CONFIG_PATH=$CRAY_MPICH_PREFIX/lib/pkgconfig:$PKG_CONFIG_PATH',
'sed -i "s/IMPORTED_TARGET netcdf/IMPORTED_TARGET netcdf_parallel/" %(builddir)s/SZ-%(version)s/NetCDFReader/CMakeLists.txt',
]) + ' &&'
local_common_configure_opts = ' '.join([
'-DBUILD_FORTRAN=ON',
'-DBUILD_HDF5_FILTER=ON',
'-DBUILD_NETCDF_READER=ON',
'-DBUILD_OPENMP=ON',
'-DBUILD_PYTHON_WRAPPER=OFF'
])
configure_opts = [
local_common_configure_opts + ' -DBUILD_SHARED_LIBS=OFF',
local_common_configure_opts + ' -DBUILD_SHARED_LIBS=ON',
]
post_install_cmds = [
'mkdir -p %(installdir)s/share/licenses/%(name)s',
'cd ../SZ-%(version)s && cp copyright-and-BSD-license.txt %(installdir)s/share/licenses/%(name)s',
]
sanity_check_paths = {
'files': ['lib/libSZ.a', 'lib/libSZ.%s' % SHLIB_EXT, 'include/sz/sz.h'],
'dirs': [],
}
env_mod_category = 'data'