CP2K/2025.2-cpeGNU-25.09-rocm (CP2K-2025.2-cpeGNU-25.09-rocm.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 CP2K/2025.2-cpeGNU-25.09-rocm.
EasyConfig:
# contributed by Luca Marsella (CSCS)
# modified for LUMI-G by Peter Larsson
# Updated to version 2024.1 by Radim Janalik (CSCS)
# Update to version 2025.2 and DBCSR patch by Tor Skovsgaard (DeiC)
#
#DOC CP2K 2025.2 release compiled with AMD GPU support enabled for CP2K
#DOC itself and several of the libraries (SpFFT, SpLA).
easyblock = 'MakeCp'
local_ELPA_version = '2025.06.001' # Older version, but as this is what the developers tested with...
local_Libint_CP2K_version = '2.7.2'
local_libvori_version = '220621' # https://brehm-research.de/libvori.php
local_libxc_version = '7.0.0'
#local_libxsmm_CP2K_version = '1.17+e0c4a23' # https://github.com/libxsmm/libxsmm/releases - Special commit for CP2K
local_libxsmm_CP2K_version = '1.17' # https://github.com/libxsmm/libxsmm/releases - Special commit for CP2K
local_spglib_version = '2.7.0' # https://github.com/spglib/spglib/tags
local_COSMA_version = '2.7.0'
local_SPLA_version = '1.6.1'
local_SpFFT_version = '1.1.1'
local_GSL_version = '2.8' # https://ftp.gnu.org/gnu/gsl/
name = 'CP2K'
version = '2025.2'
version_suffix = '-rocm'
homepage = 'http://www.cp2k.org/'
whatis = [
'Description: CP2K is a program to perform atomistic and molecular '
'simulations of solid state, liquid, molecular and biological systems.'
]
description = """
CP2K is a freely available (GPL) program, written in Fortran 95, to
perform atomistic and molecular simulations of solid state, liquid,
molecular and biological systems. It provides a general framework for
different methods such as e.g. density functional theory (DFT) using a
mixed Gaussian and plane waves approach (GPW), and classical pair and
many-body potentials.
Specifically for 25.09: Do not forget to load lumi-CrayPath after
loading all other modules, or do a similar adaptation to LD_LIBRARY_PATH
to ensure that you get the correct version of MPI, etc., at run-time.
"""
toolchain = {'name': 'cpeGNU', 'version': '25.09'}
toolchain_opts = {'openmp': True, 'usempi': True}
source_urls = ['https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s']
sources = [SOURCELOWER_TAR_BZ2]
patches = [
('LUMIG-20252.psmp', '%(builddir)s/%(namelower)s-%(version)s/arch'),
('CP2K-2025.2-rocm-dbcsr.patch', 1),
]
checksums = [
{'cp2k-2025.2.tar.bz2': 'c8392a4e123304644ec8d241443796277c6ed7ae977452317e779f3c387c2e19'},
{'LUMIG-20252.psmp': 'e401553099932a757ed161a266a14eaa40ccf29036cd77ea37ba2d00e633c8d2'},
{'CP2K-2025.2-rocm-dbcsr.patch': 'ffc2ee1ec5833fc30c68e8e9d885323c18019445e54071cea1d0eddeaae34145'},
]
build_deps = [
('buildtools', '%(toolchain_version)s', '', True),
]
deps = [
('cray-fftw', EXTERNAL_MODULE),
('cray-hdf5', EXTERNAL_MODULE),
('rocm', EXTERNAL_MODULE),
#('ELPA', local_ELPA_version, '-rocm'),
('ELPA', local_ELPA_version, '-CPU'), # Comment the previous line and uncomment this one if ELPA on GPU is too slow or does not work.
('COSMA', local_COSMA_version, version_suffix),
('SPLA', local_SPLA_version, version_suffix),
('SpFFT', local_SpFFT_version, version_suffix),
('GSL', local_GSL_version, '-OpenMP'),
# ('Libint-CP2K', local_Libint_CP2K_version, '-lmax-6'),
('Libint-CP2K', local_Libint_CP2K_version),
('libvori', local_libvori_version),
('libxc', local_libxc_version, '-FHC-KXC'),
('libxsmm', local_libxsmm_CP2K_version),
('spglib', local_spglib_version),
]
build_opts = "ARCH=LUMIG-20252 VERSION=psmp"
files_to_copy = [
(['./arch/LUMIG-20252.psmp'], 'arch'),
(['./exe/LUMIG-20252/*'], 'bin'),
(['./data'], '.'),
(['./tests'], '.'),
(['./tools'], '.')
]
sanity_check_paths = {
'files': ['arch/LUMIG-20252.psmp', 'bin/%(namelower)s.psmp'],
'dirs': ['data', 'tests'],
}
# set custom CP2K_DATA_DIR
env_mod_extra_vars = {
'CP2K_DATA_DIR': '%(installdir)s/data'
}
env_mod_category = 'chem'