跳到主要内容

任务时长限制

fsched支持用户在提交任务时通过参数指定任务可以运行的最大时长. 在超出时长之后, 调度器会强制终止任务的运行.

分区默认时长限制

管理员可以在分区上设置默认的任务时长限制. 例如, 可以设置一个分区上所有任务的默认时长限制为1小时. 这样, 所有提交到该分区的任务都会受到这个限制. 分区默认时长限制可以通过分区配置参数DefaultTime在用户没有指定时长时使用. 支持以下格式:

  • 分:秒
  • 时:分:秒
  • 天-时
  • 天-时:分
  • 天-时:分:秒
  • UNLIMITED

注意: 当指定为秒时, 实际限制可能会超出, 具体根据控制器负载确定, 可能超出数分钟.

分区最大时长限制

分区可以指定最大时长, 用户在提交和修改任务时长时不能超过该最大时长. 该参数为MaxTime.

支持以下格式:

  • 分:秒
  • 时:分:秒
  • 天-时
  • 天-时:分
  • 天-时:分:秒
  • UNLIMITED (默认值)

用户自定义时长

如果用户希望自己调整任务的时长限制, 可以通过scontrol update job命令修改任务的TimeLimit字段, 最小单位为分钟. 例如, 如果用户希望将任务的时长限制设置为2小时, 可以执行如下命令:

scontrol update job <jobid> timelimit=02:00:00

默认情况下, 用户只能缩短任务的时长限制, 不能延长. 如果用户希望延长任务的时长限制, 需要在全局配置中设置SlurmctldParameters设置为allow_user_incr_time. 此时, 用户可以通过scontrol update job命令延长任务的TimeLimit字段, 但不能超过分区最大时长限制.

注意: 如果是FCP / FCCE 管理的fsched, 请使用设置为: SlurmctldParameters=cloud_dns,nohold_on_prolog_fail,allow_user_incr_time

timelimit字段支持以下格式:

  • 分:秒
  • 时:分:秒
  • 天-时
  • 天-时:分
  • 天-时:分:秒