任务管理命令:job
查询:list
命令入口:
bohr job list
概要:
Usage:
bohr job list [flags]
Aliases:
list, -ls
Flags:
--csv output with CSV format
-f, --fail only show failed job
-i, --finish only show finished job
-h, --help help for list
-j, --job_group_id int job group id
--json output with JSON format
--noheader does not print header information
-n, --number int number of results to be displayed(default 10)
-p, --pending only show pending job
-q, --quiet only show job id
-r, --running only show running job
-s, --scheduling only show scheduling job
-d, --stopped only show stopped job
-t, --stopping only show stopping job
--yaml output in YAML format
参数说明表:
参数 | 缩写 | 说明 | 必填 |
---|---|---|---|
--job_group_id | -j | 显示job group id下的任务 | 否 |
--fail | -f | 只显示失败的任务 | 否 |
--pending | -p | 只显示等待中的任务 | 否 |
--running | -r | 只显示运行中的任务 | 否 |
--finish | -i | 只显示完成的任务 | 否 |
--scheduling | -s | 只显示调度中的任务 | 否 |
--stopping | -t | 只显示暂停中的任务 | 否 |
--stopped | -d | 只显示已暂停的任务 | 否 |
--quiet | -q | 只显示Job ID | 否 |
--number | -n | 显示多少个job | 否 |
案例:
$ bohr job list -n 20 --yaml
# 以 yaml 格式展示最近 20 个job信息
$ bohr job list -j 1022 -f
# 查看 Job Group ID 为 1022 的所有已完成任务(按 Ctrl + C 退出表格展示)
提交:submit
命令入口:
bohr job submit
概要:
Usage:
bohr job submit [flags]
Examples:
$ bohr job submit
Flags:
-c, --command string command
-i, --config_file string config file
-h, --help help for submit
-m, --image_address string image name
-p, --input_directory string input directory path (default "./")
-g, --job_group_id int job group id
-n, --job_name string job name
-l, --log_file string log file
-t, --machine_type string machine type
--max_reschedule_times int max reschedule times
--max_run_time int max run time(measured in minutes)
--nnode int nnode (default 1)
--project_id int project id
-r, --result_path string result path
参数 | 缩写 | 必填 | 说明 |
---|---|---|---|
--command | -c | 否 | 任务执行命令 |
--config_file | -i | 否 | 配置预定义文件,如果相同字段在命令行声明则会替换 |
--image_address | -m | 是 | 镜像地址, 根据任务类型不同,选择不同的镜像地址 |
--input_directory | -p | 否 | 输入目录,例如:-p ./ 表示当前目录(默认为 ./) |
--job_group_id | -g | 否 | job分组id(由bohr job_group create得到) |
--job_name | -n | 否 | job名称 |
--log_file | -l | 否 | 日志文件 |
--machine_type | -t | 是 | 机型配置 |
--max_reschedule_times | 否 | 最大重试次数 | |
--max_run_time | 否 | 运行最大时长(单位为分钟) | |
--nnode | 否 | 需要同时开多少个计算节点,并行执行 | |
--project_id | 否 | 项目id, 是您创建的项目ID,可在项目管理中查看 | |
--result_path | -r | 否 | 结果文件自动下载至指定目录,注:数据支持自动下载至 personal 盘或者 share 盘,参数 -r 后指定路径以 /share 或 /personal 开头 |
注意
此处使用的job_group_id
与任务创建后生成的JobGroupId
不同。job_group_id
需要通过通过bohr job_group create去创建任务组ID,来满足多个任务提交到同一个任务组中的需求,
案例:
$ bohr job submit -i job.json -p ./input
# 使用job.json下的文件并用input目录下的文件当作输入
--config_file -i json文件示例
{
"job_name": "DeePMD-kit test",
"command": "cd se_e2_a && dp train input.json > tmp_log 2>&1 && dp freeze -o graph.pb",
"log_file": "se_e2_a/tmp_log",
"backward_files": ["se_e2_a/lcurve.out","se_e2_a/graph.pb"],
"project_id": 0000,
"machine_type": "c32_m64_cpu",
"image_address": "registry.dp.tech/dptech/lammps:29Sep2021",
"input_directory": "./Bohrium_LAMMPS_example",
"job_group_id": 0000,
"result_path": "/personal",
"dataset_path": ["/bohr/test-rihu/v1"],
"max_reschedule_times": 2,
"max_run_time": 12,
"nnode": 1
}
删除:delete
命令入口:
bohr job delete
概要:
Usage:
bohr job delete <job_id>... [flags]
Flags:
-h, --help help for delete
--job_id ints Job ID(s) (can be used multiple times)
参数说明表:
参数 | 缩写 | 说明 | 必填 |
---|---|---|---|
--job_id | 删除的jobs id | 是 |
案例:
$ bohr job delete 1234 2345
# 删除ID为1234和2345的任务
任务提前终止:terminate
命令入口:
bohr job terminate
概要:
Usage:
bohr job terminate <job_id>... [flags]
Flags:
-h, --help help for terminate
--job_id ints Job ID(s) (can be used multiple times)
参数说明表:
参数 | 缩写 | 说明 | 必填 |
---|---|---|---|
--job_id | 提前终止的job id | 是 |
案例:
$ bohr job terminate 1234 2345
# 提前终止ID为1234和2345的任务
停止:kill
命令入口:
bohr job kill
概要:
Usage:
bohr job kill <job_id>... [flags]
Flags:
-h, --help help for kill
--job_id ints Job ID(s) (can be used multiple times)
参数说明表:
参数 | 缩写 | 说明 | 必填 |
---|---|---|---|
--job_id | - | 停止的job id | 是 |
案例:
$ bohr job kill 1234 2345
# 停止ID为1234和2345的任务
日志:log
命令入口:
bohr job log
概要:
Usage:
bohr job log [flags]
Flags:
-h, --help help for log
-j, --job_id ints Job ID(s) (can be used multiple times)
-o, --out string specify the directory to save downloaded files (default "./")
参数说明表:
参数 | 缩写 | 说明 | 必填 |
---|---|---|---|
--job_id | -j | job id | 是 |
--out | -o | 将日志保存到本地某路径 例如:-o ./ 表示当前目录(默认是./) | 否 |
案例:
$ bohr job log -j 1234 -j 2345 -o /opt
# 下载Job ID为 1234 和 2345 的日志文件,并且保存到本地的/opt目录下
下载:download
命令入口:
bohr job download
概要:
Usage:
bohr job download [flags]
Aliases:
download, -d
Flags:
-h, --help help for download
-j, --job_id ints Job ID(s) (can be used multiple times)
-o, --out string specify the directory to save downloaded files (default "./")
参数说明表:
参数 | 缩写 | 说明 | 必填 |
---|---|---|---|
--job_id | -j | 下载的job id | 是 |
--out | -o | 将结果保存到本地某路径 例如:-o ./ 表示当前目录(默认是./) | 否 |
案例:
$ bohr job download -j 1234 -j 2345 -o /opt
# 下载Job ID 为 1234 和 2345的文件,保存到 /opt 目录
查看详情:describe
命令入口:
bohr job describe
概要:
Usage:
bohr job describe [flags]
Flags:
--csv output with csv format
-h, --help help for describe
-j, --job_id ints Job ID(s) (can be used multiple times)
--json output with json format
-l, --long Long listing format
--noheader does not print header information
--yaml output with yaml format
参数说明表:
参数 | 缩写 | 说明 | 必填 |
---|---|---|---|
--job_id | -j | 任务ID | 是 |
--long | -l | 是否详细展示任务的所有信息 | 否 |
案例:
$ bohr job describe -j 1234 -j 2345 --json
# 以json的格式展示Job ID为 1234 和 2345 的任务详情
$ bohr job describe -j 1234 -l
# 查看Job ID为1234的任务,并详细展示任务的所有信息