Skip to content

cp2k 使用指南

1. 概述

1.1 软件信息

简介:CP2K 是一个量子化学和固态物理软件包,可用于对固态、液态、分子、周期性材料、晶体和生物系统进行原子模拟。它为不同的建模方法提供了通用框架,支持的理论水平包括 DFTB、LDA、GGA、MP2、RPA、半经验方法(如 AM1、PM3、PM6、RM1、MNDO 等)以及经典力场(如 AMBER、CHARMM 等)。CP2K 可以使用 NEB 或二聚体方法进行分子动力学、元动力学、蒙特卡洛模拟、埃伦菲斯特动力学、振动分析、核心能谱、能量最小化和过渡态优化。

可用版本:

版本 平台 处理器 模块名 使用方式 备注
2024.1 隐秀 intel intel/cp2k/2024.1/intel2023.2_impi 平台、命令 使用 netcdf4.7.4,intelmpi2020.4 编译

如需使用其它版本,请联系工作人员 ~

1.2 使用步骤

  1. 数据传输:将计算所需的文件上传到 data 目录。
  2. 软件加载:打开软件中心,找到所需软件并点击 立即使用 按钮。
  3. 任务提交:在弹出的软件参数设置页面,进行参数设置然后点击 提交 按钮提交计算任务。
  4. 任务查看:计算任务提交之后,会自动跳转到 任务中心,能够对计算任务状态、基本信息进行查看,还能停止计算任务。

2. 数据传输

1). 打开文件夹:登录超算系统后,点击桌面上的“文件夹”。 2). 选择集群:选择超算集群,然后打开 data 文件夹,所有文件均须上传到 data 文件夹下。 3). 下载客户端:将鼠标悬浮于 文件传输 按钮之上,随后点击 下载 按钮,把文件传输客户端下载至本地,并予以安装。在客户端安装完毕后,点击 文件传输,会自动打开本地安装好的客户端。

需注意的是,文件传输客户端仅在第一次使用时需要安装,后续使用不必再次安装。 客户端安装指南:cloudtools 客户端下载与安装

4). 文件传输:文件传输客户端打开之后,其左侧呈现的是本地电脑文件夹,而右侧则为超算平台文件夹。鼠标选中文件,然后左右拖曳,即可实现文件的上传与下载。

3. 软件加载

打开桌面上的 软件中心,找到软件 CP2K,点击 立即使用

如果没找到需要的软件,请联系超算工作人员 ~

4. 任务提交

4.1 方式一:图形页面提交

点击 立即使用,随后会弹出软件参数设置界面,按如下流程进行参数设置:

  1. 选择计算队列。计算队列是由一系列计算节点组成的集合。 其中,带有 expr 后缀的队列属于测试队列,其最多只能使用 2 个节点,且任务最长运行时间仅限 1 小时。没有 expr 后缀的队列为付费用户使用队列,运行时间无限制,节点数限制为 30 个(可根据实际需要进一步提高)。
  2. 选择工作文件夹。此为待计算算例所在的文件夹。
  3. 自定义一个任务名,以便对不同任务加以区分。
  4. 设置计算需要的核数。
  5. 选择软件版本。
  6. 选择要运行的程序,如 cp2k.poptcp2k.pmspcp2k.pmsp.dbg 等。
  7. 选择要计算的文件,即选择算例所在目录中要运行的 xx.inp 文件。
  8. 点击 提交 按钮,提交计算任务。

首次使用过后,桌面上会产生软件的快捷模式,后续直接点击这个快捷方式即可打开软件参数设施界面。

4.2 方式二:命令行提交

如何使用命令行登录超算,请参考:命令行登陆超算

1). 将算例上传到 data 文件夹下,并进入算例文件夹

cd ~/data/cp2k_case

2). 新建脚本 run.sh,输入以下内容:

1
2
3
4
5
6
7
8
#! /bin/bash
#SBATCH -p intel_expr
#SBATCH -J cp2k
#SBATCH -n 1
#SBATCH -o job.out

module load intel/cp2k/2024.1/intel2023.2_impi
mpirun -n 1 cp2k.psmp -i cp2k.inp
  • #!/bin/bash ,固定内容,不用修改
  • #SBATCH -p intel_expr ,向调度系统申请 intel_expr 队列的计算资源。调整队列名,即更换队列

运行计算任务。

  • #SBATCH -J cp2k,自定义一个 cp2k 的任务名称,从而对不同任务进行区分
  • #SBATCH -n 1 ,申请 1 个核
  • #SBATCH -o job.out ,程序的运行输出保存在 job.out 文件,该文件文件名可以随意修改
  • module load intel/cp2k/2024.1/intel2023.2_impi,加载软件环境。命令格式为:module load 模块名,其中模块名参考“可用版本”中的模块名,调整成自己需要的版本
  • mpirun -n 1 cp2k.psmp -i cp2k.inp,此为 cp2k 的运行命令,其中 cp2k.psmp -i cp2k.inp 是您程序的命令

3). 执行 sbatch run.sh 提交计算任务

[user@login01 tmp]$ sbatch run.sh
Submitted batch job 3656

5. 任务查看

5.1 图形页面查看

通过图形界面提交计算任务后会自动跳转到 任务中心,在任务中心页面能够对计算任务状态、基本信息进行查看,还能停止计算任务。任务中心 页面,也可以通过双击桌面上 任务中心 图标打开。 任务中心 有两个 tab 页面:

  • “进行中”:正在运行的任务,或者一分钟内结束任务
  • “已完成”:已经结束的任务,一分钟同步一次 计算任务最右侧操作栏的按钮功能可区分为:
  • 第一个按钮:打开计算任务所在的目录
  • 第二个按钮:打开程序输出日志
  • 第三个按钮:打开任务详细信息
  • 第四个按钮:停止计算任务

5.2 命令行查看

1). 查看计算任务 执行 squeue 查看计算任务状态

1
2
3
[user@login01 tmp]$ squeue 
             JOBID PARTITION     NAME     USER ST     TIME   NODES NODELIST(REASON)
              3656   intel       cp2k   user  R     0:23   1     qhcn001
  • JOBID,任务编号
  • ST,任务状态,作业状态包括 R(正在运行),PD(正在排队),CG(即将完成),CD(已完成)
  • TIME,运行时间
  • NODES,占用节点(也称服务器,下同)个数
  • NODELIST,占用服务器的编号

2). 查看日志 计算任务运行起来后,执行 tail -f job.out 可 以查看程序的实时输出,执行 Ctrl+C 退出查看

[user@login01 tmp]$ tail -f job.out 
  ------------------------------------------------------------------------------
     1 Broy./Diag. 0.10E+00   11.7     1.59864790     -2303.8765906182 -2.30E+03
     2 Broy./Diag. 0.10E+00   20.1     0.00283876     -2306.6599538907 -2.78E+00
     3 Broy./Diag. 0.10E+00   20.3     0.00840541     -2307.2072162519 -5.47E-01
     4 Broy./Diag. 0.10E+00   20.3     0.00535191     -2308.2390579301 -1.03E+00
     5 Broy./Diag. 0.10E+00   20.4     0.01196217     -2308.8491580362 -6.10E-01
     6 Broy./Diag. 0.10E+00   20.5     0.00137818     -2309.5557740921 -7.07E-01
     7 Broy./Diag. 0.10E+00   20.6     0.00184374     -2309.1045220583  4.51E-01
     8 Broy./Diag. 0.10E+00   20.8     0.00114403     -2308.7057732133  3.99E-01
     9 Broy./Diag. 0.10E+00   21.0     0.00191671     -2308.8462198120 -1.40E-01
    10 Broy./Diag. 0.10E+00   21.1     0.00068517     -2309.1602792794 -3.14E-01

3). 停止计算任务

执行 scancel 任务号 停止任务。任务号通过 squeue 查询。

scancel  3656