设置调度器配置信息
E-HPC支持设置调度器配置信息,您可以根据业务需要,配置队列资源限制、作业执行周期,以提高节点资源的使用率。本文介绍如何设置集群的调度器配置信息。
背景信息
集群的调度器必须为pbs、pbs19、slurm、slurm19、slurm20。
调度器是集群上调度作业的软件,负责分发作业、处理作业优先级、按需分配计算节点资源(如vCPU、内存、节点个数)。您可以根据作业大小,预估使用的节点资源、作业完成时间,设置集群的调度器配置信息。
操作步骤
登录弹性高性能计算控制台。
在顶部菜单栏左上角处,选择地域。
在左侧导航栏,选择资源管理 > 调度器。
在集群列表选择待操作的集群,在调度器列表选择调度器。
设置调度器配置信息。
如果调度器为slurm、slurm19、slurm20,可以设置如下参数。如无特殊需求,建议使用默认调度周期。
主调度周期:即调度计时器Timer,每隔一段时间发起调度。
假设集群只有一个1 vCPU的节点,主调度周期设置为20s,连续提交两个需要1 vCPU、运行时间为30s的作业。作业运行情况如下:
0s:开始调度,作业一Running,作业二Pending。
20s:触发调度,作业一还在Running,作业二Pending(触发调度,但是没有空闲资源供作业二使用)。
30s:作业一Complete,作业二Pending(尽管有资源空闲,但由于没有触发调度,作业二无法获取资源去运行)。
40s:再次触发调度,作业二开始Running。
Backfill调度周期:即Backfill调度计时器,触发调度时打破优先级顺序,会尽可能将小负载任务优先提交以保证高CPU使用率。
假设集群只有1个8 vCPU的节点,Backfill周期设置为10s,提交两个高优先级需要6 vCPU、运行时间为60 min的作业一和作业二,再提交一个低优先级需要2 vCPU、运行时间为40 min的作业三。作业运行情况如下:
0s:开始调度,作业一Running,作业二、作业三Pending(由于作业二优先级高于作业三,即使有空闲资源运行作业三,但是没有触发调度)。
10s:过了一个Backfill周期,触发Backfill调度,判断小负载的作业三可以绕过高优先级的作业二提前运行以保证高CPU使用率,此时作业一Running,作业二Pending,作业三Running。
40 min:作业一Running,作业二Pending,作业三Complete。
60 min:作业一Complete,作业二Running,作业三Complete。
如果调度器为pbs、pbs19,按照如下步骤设置调度器。
在全局参数区域,设置如下参数。
历史作业保留时间:超过保留时间后,作业数据会被销毁。
调度周期:指相邻调度周期的时间间隔,若没有其他操作触发调度(例如提交作业、重启调度服务),则时隔调度周期触发一次调度。
在队列参数区域,在队列列表中选择目标队列。
在队列资源限制区域,单击新增限制。
用户:运行作业的集群用户名。
CPU:该用户使用队列中节点的最大vCPU个数。
内存:该用户使用队列中计算节点的最大内存,格式为数量+单位,如1 gb,200 mb等。
节点:该用户使用的最大节点数量。
在队列用户映射区域,单击新增用户,在弹出的新增用户对话框,选择用户,单击确定。
注意选择用户后,该队列仅能被该用户使用;若未选择用户,则该队列能被集群所有用户使用。
在调度器设置页面右上角,单击提交。