用户工具

站点工具

本页面的其他翻译:
  • zh

atk:设置用于计算的远程服务器

设置用于计算的远程服务器

概述

Job Manager支持设置设置远程服务器提交任务,该方法的特点是:

  • 安全:仅使用SSH端口的加密通信;服务器端无需后台进程,无需单独开放其他端口,有效保障安全性,特别适合公共服务器上部署计算;
  • 简单:支持自动创建任务文件夹和提交脚本,不需要终端登录服务器进行任务提交;
  • 强壮:任务成功提交之后,即可断开与服务器的连接;不必担心网络问题造成的计算中断;无后台进程、数据库等复杂配置,更强壮;
  • 便捷:随时可以联机查看即可查看任务、下载计算结果。

QuantumATK中支持两种在远程服务器上运行的方式:

  • Direct:即服务器上没有PBS等队列系统,提交的计算直接在登录的主机上运行。这种方法常试用于单节点的服务器。
  • 通过服务器的队列系统提交:对于大型集群,推荐使用这种方法,支持市面上常见的所有作业队列管理系统:
    • PBS、SLURM、LSF、SGE、PBS Pro。

添加无作业队列系统的计算服务器

  • 首先确定要在服务器上哪个账户下运行ATK计算,使用终端正确登录服务器,在合适的位置(例如$HOME/qatkjobs)创建一个文件夹用于存放运行 QuantumATK 产生的文件;
  • 点击Create Computer图标,选择 New DirectRemote

  • 在Settings里设置:
    • Machine Name(仅用于方便使用者识别服务器);
    • Hostname:服务器 IP 地址(或域名);
    • Port:端口(SSH默认为22,非默认端口时,请咨询管理员);
    • Username:登录的用户名;
    • Key password:密码。

  • 点击Private key path后的+按钮,选择一个妥善的保存路径,点击 Create 生成SSH Key(显示“秘钥文件生成成功”),下方输入服务器登录的用户名和密码,点击Upload上传SSH Key,显示“上传成功”。

  • 在 Environment 中设置:
    • Working Directory:保存计算任务的文件夹(第一步创建的文件夹);
    • ATK executable path:atkpython的位置绝对路径(位于安装目录下);
    • mpiexec executable path:mpiexec的位置绝对路径(位于安装目录下);
    • Script to source:要 source 的脚本(根据服务器一般的用户要求设置,没有则空白);
    • export statements:要export的环境变量(变量前不用加export命令)。
    • Job specification command:其他要添加在脚本中的命令。

  • 在Resources里设置任务使用的计算资源与并行方式:
    • Number of MPI processes:提交作业时使用的总MPI并行进程数;
    • Number of MPI processes:每个节点上运行多少个MPI并行进程
    • 这里设置的是默认运行一个作业的计算资源,提交计算时还可以根据实际情况调整;

之后可以使用diagnostics诊断设置是否正确,当所有项目显示对号时即完成了配置。

添加 PBS、LSF、SLURM 队列服务器

这里以 PBS 为例。

  • 点击 Create Computer按钮,选择 “New PBS”

  • 在 Settings 里设置:
    • Machine Name:可以自定义一个服务器的名称;
    • Hostname:通常为服务器的 IP 地址(或主机名、域名)
    • Port:默认端口为 22(非默认端口请咨询管理员)
    • Username:登录服务器的用户名
    • Queue Name:PBS 队列名称,可以输入多个,使用逗号分隔;
    • Path to PBS binaries: PBS(或Torque)命令位置(不含命令本身),可在终端中使用 which qsub 命令查看。

  • 点击 +,选择一个妥善的保存路径,点击 Create 生成 SSH Key(显示Key Generated),下方输入服务器登录的用户名和密码,点击 Upload 上传 SSH Key;

  • 在 Environment 中设置:
    • Working directory:保存计算任务的文件夹
    • ATK executable path: atkpython 命令的位置
    • mpiexec executable: mpi 命令的位置;
    • Script to source:要 source 的脚本(根据服务器一般提交任务的脚本进行设置,建议将 mpi PATH 等环境变量放在这里)
    • Export statements:要 export 的环境变量(变量前不用加 export 命令);
    • Modules to load:某些大型服务器要加载的模块;
    • Raw submission text:自定义的 PBS 脚本命令,直接写入 PBS 脚本。

  • 在 Resources 里设置任务使用的计算资源
    • number of nodes:提交计算要请求的节点数
    • numer of cores per node: 每个节点的核心数
    • Enable MKL_DYNAMIC:是否使用 MKL 的动态线程(实际并行效果需根据系统情况测试)

  • 在 Notification 里设置作业状态检查和提醒的选项
    • 设置检查作业状态的时间间隔
    • 邮件提醒需要服务器 HPC 系统支持,请咨询管理员。
  • 最后在 Diagnostics 里检查配置是否正常,出现任何错误时,根据提示对前面的设置进行修改。

提交任务测试

如果以上设置没有问题,可以尝试提交任务。详情参见:使用Job Manager向服务器上提交作业

atk/设置用于计算的远程服务器.txt · 最后更改: 2024/01/02 16:03 由 fermi

© 2014-2022 费米科技(京ICP备14023855号