CP2k¶
CP2K是一个量子化学和固态物理软件包,可以对固态,液态,分子,周期性,材料, 晶体和生物系统进行原子模拟。CP2K为不同的建模方法提供了通用框架。支持的理论 水平包括DFTB,LDA,GGA,MP2,RPA,半经验方法(AM1,PM3,PM6,RM1, MNDO等)和经典力场(AMBER,CHARMM等)。CP2K可以使用NEB或二聚体方法 进行分子动力学,元动力学,蒙特卡洛,埃伦菲斯特动力学,振动分析,核心能谱, 能量最小化和过渡态优化的模拟。
更多信息请访问:https://www.cp2k.org/
语言:Fortran 2008
开源协议:GPL
一句话描述:是一个量子化学和固态物理软件包,可以对固态,液态,分子,周期 性,材料,晶体和生物系统进行原子模拟。
可用的版本¶
版本 | 平台 | 构建方式 | 模块名 |
---|---|---|---|
8.2 | CPU | spack | cp2k/8.2-gcc-11.2.0-openblas-openmpi |
8.2 | GPU | spack | cp2k/8.2-gcc-11.2.0-cuda-openblas-openmpi |
8.1 | 襄阳 |
飞马一号上的CP2K
飞马一号上已经预装 CP2K(GPU+CPU 版本)。若不指定版本,将加载默认的 module(标记为 D)。
CPU版本cp2k示例脚本cp2k_cpu.slurm
这里申请了一个节点示例脚本如下:
#!/bin/bash
#SBATCH --job-name=cp2k_cpu
#SBATCH --partition=64c512g
#SBATCH -N 1
#SBATCH --ntasks-per-node=64
#SBATCH --output=%j.out
#SBATCH --error=%j.err
module load cp2k/8.2-gcc-11.2.0-openblas-openmpi
module load openmpi/4.1.1-gcc-11.2.0
ulimit -s unlimited
ulimit -l unlimited
INPUT_FILE=H2O-256.inp
mpirun --allow-run-as-root -np $SLURM_NTASKS -x OMP_NUM_THREADS=1 cp2k.psmp ${INPUT_FILE}
GPU版本cp2k示例脚本cp2k_gpu.slurm
#!/bin/bash
#SBATCH --job-name=cp2k_gpu
#SBATCH --partition=a100
#SBATCH -N 1
#SBATCH --ntasks-per-node=1
#SBATCH --cpus-per-task=16
#SBATCH --gres=gpu:1 # use 1 GPU
#SBATCH --output=%j.out
#SBATCH --error=%j.err
module load cp2k/8.2-gcc-11.2.0-cuda-openblas-openmpi
module load cuda/11.5.0
module load openmpi/4.1.1-gcc-11.2.0
ulimit -s unlimited
ulimit -l unlimited
INPUT_FILE=H2O-256.inp
mpirun --allow-run-as-root -np $SLURM_NTASKS --mca opal_common_ucx_opal_mem_hooks 1 -x OMP_NUM_THREADS=1 cp2k.psmp ${INPUT_FILE}
并使用如下指令提交:
$ sbatch cp2k_cpu.slurm
$ sbatch cp2k_gpu.slurm