CP2K has many different uses including molecular dynamics, geometry optimisation, normal mode analysis, free energy calculations, path-integral runs, and Monte Carlo, using a variety of force evaluation methods such as Quickstep DFT, MM, and QM/MM. For the purposes of this project two benchmark systems were used which were considered representative of the type of simulations performed by many CP2K users and that exercised the major components of the Quickstep algorithm.
The first benchmark, ``bench_64" is a molecular dynamics simulation of 64 water molecules in a cubic, periodic cell of side 12.42Å, described by a TZV2P basis set (40,000 functions) in an NVE ensemble at a temperature of 300K. The system is evolved for 50 timesteps of 0.5fs each. This simulation takes a few minutes to complete on 256 cores.
The second benchmark, ``W216", is a larger system of 216 water molecules, in a 34Åcell, using a larger, molecularly optimized basis. However, this system is not periodic, and the atoms are clustered in the centre of the simulation cell, so gives interesting load balancing properties which are investigated in the third part of the project. A run of 10 0.5fs MD steps takes around 20 mins on 1024 cores. This system is only slightly smaller than those being studied by real CP2K users, although typical runs would be of the order of 1000s of MD steps.
CP2K also includes a set of `libtests' which isolate particular features of the code, rather like a unit test harness. Libtests exist for ``RS_PW_TRANSFER" (realspace to planewave grid conversion), and ``PW_TRANSFER" (FFTs) which were used extensively for checking correctness and measureing performance during development.