====== Compile CP2K on CRAY XC40/50 at CSCS ======
This page describes how CP2K can be installed on the CRAY XC40 and XC50 systems as they are provided by the Swiss National Supercomputing Centre [[https://www.cscs.ch/|CSCS]]. This howto has been tested on the multi-core and the GPU partition of [[https://www.cscs.ch/computers/piz-daint/|Piz Daint]]. For further details, check the corresponding CRAY XC40 [[https://github.com/cp2k/cp2k/blob/master/arch/CRAY-XC40-gnu.psmp|arch file]] and CRAY XC50 [[https://github.com/cp2k/cp2k/blob/master/arch/CRAY-XC50-gnu.psmp|arch file]] as well as the corresponding regression tester of the [[https://dashboard.cp2k.org/index.html|CP2K dashboard]]. This howto assumes that your default shell is ''bash''.
==== 1. Download CP2K ====
Login to your user account on Piz Daint (CRAY XC40/50 system) and run the command
git clone --recursive https://github.com/cp2k/cp2k.git cp2k
in your project folder to download the current [[https://github.com/cp2k/cp2k|CP2K trunk version]] or run
git clone --recursive -b support/v2023.1 https://github.com/cp2k/cp2k.git cp2k
for the latest CP2K release version. A [[https://www.cp2k.org/download|download]] of the current trunk version is only recommended if the corresponding regression tester is `OK` as indicated by a green background color of the table entry in the status column of the [[https://dashboard.cp2k.org/index.html|CP2K dashboard]].
==== 2. Build CP2K toolchain ====
Change to the cp2k folder
cd cp2k
and source the CP2K arch file for the desired partition, either for the multi-core partition (daint-mc, CRAY XC40)
source arch/CRAY-XC40-gnu.psmp
or the GPU partition (CRAY XC50, daint-gpu)
source arch/CRAY-XC50-gnu.psmp
This will load the required module environment for Piz Daint and build the CP2K toolchain. Check the printed output for errors and proceed to the next step when the toolchain build finished without errors.
==== 3. Build CP2K production binary ====
Run one of the suggested ''make'' commands after the successful CP2K toolchain build, e.g.
make -j ARCH=CRAY-XC40-gnu VERSION=psmp
This will compile (make) the CP2K binary for the selected partition. The CP2K binary ''cp2k.psmp'' will be created in the folder ''cp2k/exe/CRAY-XC40-gnu/''.
**Enjoy CP2K on CRAY!**