job.F90
源码路径:LMDZ.COMMON-6.3\LMDZ.COMMON\libf\misc\job.F90。 Mars 运行参与度:接口兼容;由 --auto-exit 调用,但帮助文本限定 PEM。
模块状态
| 变量 | 默认值 | 含义 |
|---|---|---|
timelimit |
86400. |
job time limit,秒。 |
antetime |
3600. |
提前退出余量,秒。 |
timewall |
.false. |
是否启用 walltime 自终止。 |
例程
| 例程 | 源码事实 | 作用 |
|---|---|---|
get_job_id() |
第 62 行读 SLURM_JOBID,第 69 行读 PBS_JOBID,第 76 行失败 error stop。 |
获取调度系统 job id。 |
get_job_timelimit(jobid) |
第 126 行 squeue,第 129 行 qstat fallback,第 153-161 行解析时间,第 164 行置 timewall=.true.。 |
查询并解析 walltime。 |
时间格式
支持:
D-HH:MM:SSHH:MM:SSMM:SS
查询过程使用临时文件 tmp_timelimit.txt,读完后删除。
风险
- 依赖外部
squeue或qstat/grep/awk。 - 固定临时文件名不适合多个进程在同一目录同时查询。
- 当前 Mars GCM 正文只记录接口,不把
--auto-exit当作必经运行逻辑。