[QuantumESPRESSO] [package list]
QuantumESPRESSO/7.5-cpeGNU-26.03-CPU (QuantumESPRESSO-7.5-cpeGNU-26.03-CPU.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 QuantumESPRESSO/7.5-cpeGNU-26.03-CPU.
EasyConfig:
easyblock = 'CMakeMake'
name = 'QuantumESPRESSO'
version = '7.5'
version_suffix = '-CPU'
homepage = 'https://www.quantum-espresso.org'
whatis = [
'Description: QuantumESPRESSO is a suite of codes for electronic structure calculations based on DFT, plane wave and pseudopotentials'
]
description = """
Quantum ESPRESSO is an integrated suite of computer codes
for electronic-structure calculations and materials modeling at the nanoscale.
It is based on density-functional theory, plane waves, and pseudopotentials
(both norm-conserving and ultrasoft).
In case you experience crashes with OpenMP runs, you may want to experience
with the OMP_STACKSIZE environment variable. The default size is rather small
(depending on ulimit -s) and you may need a bigger value, e.g., the rather
extreme
export OMP_STACKSIZE=1G
"""
toolchain = {'name': 'cpeGNU', 'version': '26.03'}
toolchain_opts = {'usempi': True, 'openmp': True}
# Details taken from https://github.com/easybuilders/easybuild-easyconfigs/blob/develop/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.5-foss-2025b.eb
# Check hashes inside external/submodule_commit_hash_records when making file for new version
# _lapack_hash = '12d825396fcef1e0a1b27be9f119f9e554621e55' # should not use this one I guess
_mbd_hash = '89a3cc199c0a200c9f0f688c3229ef6b9a8d63bd'
_devxlib_hash = 'a6b89ef77b1ceda48e967921f1f5488d2df9226d'
_fox_hash = '3453648e6837658b747b895bb7bef4b1ed2eac40'
# Different from the one at tag qe-7.5, see https://github.com/anharmonic/d3q/issues/30
# Compiling on top of 168313d9 results in an undefined reference to `zgemm3m_` requires the commit after to work
_d3q_hash = 'fba772c180a8956227f0df077b841ec3039c610a'
_qe_gipaw_hash = '717e55c36f28c512d232321adb10d5a66d3e1072'
_qmcpack_hash = 'f72ab25fa4ea755c1b4b230ae8074b47d5509c70'
_w90_hash = '1d6b187374a2d50b509e5e79e2cab01a79ff7ce1'
sources = [
{
'filename': 'q-e-qe-%(version)s.tar.gz',
'extract_cmd': 'mkdir -p %(builddir)s/qe-%(version)s && tar xzvf %s --strip-components=1 -C $_',
'source_urls': ['https://gitlab.com/QEF/q-e/-/archive/qe-%(version)s'],
},
]
checksums = [
{'q-e-qe-7.5.tar.gz': '7e1f7a9a21b63192f5135218bee20a5321b66582e4756536681b76e9c59b3cc8'},
# Checksums for other components should not be used as the content of .git will change over time
#{'mbd-89a3cc19.tar.xz': 'e344c700b05c364e3a18a60bd3cf05bc5be6e592d203baa29e16911cdc95c49f'},
#{'devxlib-a6b89ef7.tar.xz': '7fa25af9c39b0f94bf087c08eed1179621c35bcf6e1a6e23f5ada7091c5ce5e0'},
#{'d3q-fba772c1.tar.xz': 'db791f442f411be8c4b45c8b09cc3375b3dba44b5e49f0451654d6b6ccb7c0a4'},
#{'fox-3453648e.tar.xz': 'f916f32740bdef7df8e8100a645727d30b7bb043f46126a58bd2a069541ff6a6'},
#{'qe-gipaw-717e55c3.tar.xz': '03d951b4ff2a7e15211a9e26897096de212535c1f8629474bdc1556384adf38b'},
#{'pw2qmcpack-f72ab25f.tar.xz': 'f9cc627ea843c1eef9bfeff0ac1770721333d6972cb0ce7670e735b61c74606f'},
#{'wannier90-1d6b1873.tar.xz': '8cded6ecbe1525f11be2c8588e20f9a30ab8d946637673eaa7e39a51718e5b86'},
]
_github_repos = [
('github', 'libmbd', 'libmbd', _mbd_hash, 'mbd'),
('gitlab', 'max-centre/components', 'devicexlib', _devxlib_hash, 'devxlib'),
('github', 'anharmonic', 'd3q', _d3q_hash, 'd3q'),
('github', 'pietrodelugas', 'fox', _fox_hash, 'fox'),
('github', 'dceresoli', 'qe-gipaw', _qe_gipaw_hash, 'qe-gipaw'),
('github', 'QMCPACK', 'pw2qmcpack', _qmcpack_hash, 'pw2qmcpack'),
('github', 'wannier-developers', 'wannier90', _w90_hash, 'wannier90'),
]
for _provider, _owner, _repo, _commit, _name in _github_repos:
sources.append({
'filename': f'{_name}-{_commit[:8]}.tar.xz',
'git_config': {
'url': f'https://{_provider}.com/{_owner}',
'repo_name': _repo,
'commit': _commit,
'clone_into': _name,
'keep_git_dir': True, # Need to keep the .git dir as the configure process uses this.
},
'extract_cmd': 'cd qe-%(version)s/external && tar -xvf %s',
})
build_deps = [
('buildtools', '', '%(toolchain_version)s', True),
]
deps = [
('cray-hdf5-parallel', EXTERNAL_MODULE),
('cray-fftw', EXTERNAL_MODULE),
('ELPA', '2025.06.001', '-CPU'),
('libxc', '7.0.0', '-FHC'),
]
local_submodules = [
'mbd', 'devxlib', 'fox', 'd3q', 'qe-gipaw', 'pw2qmcpack', 'wannier90'
]
local_plugins = [
'gipaw',
'd3q',
'pw2qmcpack'
]
configure_opts = ' '.join([
'-DQE_ENABLE_MPI=ON',
'-DQE_ENABLE_OPENMP=ON',
'-DQE_ENABLE_CUDA=OFF',
'-DQE_ENABLE_OFFLOAD=OFF',
'-DQE_ENABLE_OPENACC=OFF',
'-DQE_ENABLE_SCALAPACK=ON',
'-DSCALAPACK_LIBRARIES="-lm"',
'-DQE_ENABLE_FOX=ON',
'-DQE_ENABLE_HDF5=ON',
'-DQE_ENABLE_LIBXC=ON',
'-DQE_ENABLE_ELPA=ON',
'-DQE_ENABLE_PLUGINS="%s"' % ';'.join(local_plugins),
'-DQE_CLOCK_SECONDS=ON',
'-DBUILD_SHARED_LIBS=OFF',
'-DCMAKE_POLICY_VERSION_MINIMUM=3.5',
])
# Uncomment the next line for debug purposes.
#max_parallel = 1
post_install_cmds = [
'mkdir -p %(installdir)s/share/licenses/%(name)s',
'cd %(start_dir)s && cp License README.md %(installdir)s/share/licenses/%(name)s',
]
sanity_check_paths = {
'files': ['bin/pw.x'],
'dirs': [''],
}
env_mod_category = 'chem'