CP2K: High performance computing for materials science

Computational chemistry is a popular technique for predicting the properties of new materials using computer simulation. However, such computations are very expensive and are heavily used on ARCHER, the current national HPC service. This type of calculation accounted for more than half the usage of HECToR, the previous national HPC service.

Since 2008, EPCC has contributed to the development of CP2K, a popular computational chemistry package, to achieve better performance on modern HPC systems. These modifications include mixed-mode MPI/OpenMP parallelisation throughout the major computational parts of the code, as well as a novel load-balancing scheme which gives a speedup of 300% for inhomogeneous systems such as clusters of atoms and interfaces.

EPCC has also ported and optimised CP2K for the PRACE Tier-0 supercomputers JUGENE, CURIE and HERMIT, and are now leading an EPSRC-funded network ‘CP2K-UK’ to support CP2K users and developers in the UK. We have developed new functionality and tools for use with CP2K, provided training for new and existing CP2K users, and implemented automatic code documentation, lowering the barrier to entry for starting CP2K development.

We are currently collaborating with researchers at University College London, King’s College London and the University of Lincoln on several independently funded CP2K development projects.

Published papers

CP2K Performance from Cray XT3 to XC30 (2014)
CP2K - Sparse Linear Algebra on 1000s of cores (2012)
CP2K – Scalable Atomistic Simulation for the PRACE Community (2012)
Million Atom KS-DFT with CP2K (2011)
Improving the scalability of CP2K on multi-core systems (2010)
Improving the Performance of CP2K on the Cray XT (2010)
Improving the performance of CP2K on HECToR (2009)

Funding

HECToR dCSE: Aug 2008-Dec 2011
PRACE: Dec 2010-Dec 2013
EPSRC: Sep 2013-Sep 2018
ARCHER eCSE: Dec 2015-Dec 2017

Find out more

For further information visit the CP2K project website or read about it on the blog.