设置用于计算的远程服务器
概述
Job Manager支持设置设置远程服务器提交任务,该方法的特点是:
安全:仅使用SSH端口的加密通信;服务器端无需后台进程,无需单独开放其他端口,有效保障安全性,特别适合公共服务器上部署计算;
简单:支持自动创建任务文件夹和提交脚本,不需要终端登录服务器进行任务提交;
强壮:任务成功提交之后,即可断开与服务器的连接;不必担心网络问题造成的计算中断;无后台进程、数据库等复杂配置,更强壮;
便捷:随时可以联机查看即可查看任务、下载计算结果。
QuantumATK中支持两种在远程服务器上运行的方式:
添加无作业队列系统的计算服务器
在 Environment 中设置:
Working Directory:保存计算任务的文件夹(第一步创建的文件夹);
ATK executable path:atkpython的位置绝对路径(位于安装目录下);
mpiexec executable path:mpiexec的位置绝对路径(位于安装目录下);
Script to source:要 source 的脚本(根据服务器一般的用户要求设置,没有则空白);
export statements:要export的环境变量(变量前不用加export命令)。
Job specification command:其他要添加在脚本中的命令。
之后可以使用diagnostics诊断设置是否正确,当所有项目显示对号时即完成了配置。
添加 PBS、LSF、SLURM 队列服务器
这里以 PBS 为例。
在 Settings 里设置:
Machine Name:可以自定义一个服务器的名称;
Hostname:通常为服务器的 IP 地址(或主机名、域名)
Port:默认端口为 22(非默认端口请咨询管理员)
Username:登录服务器的用户名
Queue Name:PBS 队列名称,可以输入多个,使用逗号分隔;
Path to PBS binaries: PBS(或Torque)命令位置(不含命令本身),可在终端中使用 which qsub
命令查看。
在 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 的动态线程(实际并行效果需根据系统情况测试)
提交任务测试