本技术涉及计算资源调度,尤其涉及一种智能调度计算资源的方法、装置及设备。
背景技术:
1、随着企业数字化研发的深入,现代化企业、科研院所及工程设计机构会构建大规模、高性能的服务器集群来满足数字化辅助设计、数值仿真、大数据分析及人工智能辅助技术,cad\cae\capp\eda\bim等软件的资源配套需求,传统方式下,企业都是静态的划分固定的资源配额给到各个部门和研发人员,但是实际情况下,各个部门和研发人员的研发项目,研发任务是动态的,饱和度也是波动的,因此固定资源调度会影响到高端计算资源的使用效率,也无法匹配研发任务的资源需求。
2、即传统方式下,研发企业的高端计算资源都是通过要么创建配额的配置文件或者数据库记录配额的固定分配的调度方式给各个研发部门分配资源,但是部门的研发任务是动态的,对于资源需求也是动态,静态配置调度的方式无法满足实际的动态业务需求。
技术实现思路
1、为至少在一定程度上克服相关技术中研发企业中的部门的研发任务是动态的,对于资源需求也是动态,静态配置调度的方式无法满足实际的动态业务需求的问题,本技术提供一种智能调度计算资源的方法、装置及设备。
2、本技术的方案如下:
3、第一方面,本技术提供一种智能调度计算资源的方法,所述方法包括:
4、s1.获取待调度的相关资源信息,所述相关资源信息包括:相关作业信息和当前资源请求及占用的信息;
5、s2.利用所述相关资源信息,进行前序请求快速检测,若通过所述前序请求快速检测,则执行步骤s3;
6、否则,加入到第一排队模式中;
7、s3.利用所述通过所述前序请求快速检测的结果,执行软件许可调度模式,若满足预设的第一执行规则,则获取请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,并执行步骤s4;
8、否则,加入到第一排队模式中;
9、s4.利用所述请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,参与到私有池的配额调度,若满足第二执行规则,则执行步骤s5进行智能调度;
10、否则,利用所述请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,参与到公有池的配额调度,若满足第三执行规则,则执行步骤s5进行智能调度;
11、否则,加入到第一排队模式中;
12、s5.基于步骤s4的执行结果,进行智能调度,得到所述智能调度的相关计算结果。
13、进一步地,所述利用所述相关资源信息,进行前序请求快速检测,若通过所述检测,则执行步骤s3,包括:
14、利用所述相关资源信息,通过前序请求快速检测的检测方式进行检测,若不存在比所述相关作业信息中当前作业信息先前提交和/或高优先级的前序的排队作业,则通过检测,执行步骤s3。
15、进一步地,所述前序请求快速检测的检测方式,包括:资源池空闲检测、用户配额检测、用户组配额检测、先进先出检测和许可检测。
16、进一步地,利用所述通过所述前序请求快速检测的结果,执行软件许可调度模式,若满足预设的第一执行规则,则获取请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,并执行步骤s4,包括:
17、利用所述通过所述前序请求快速检测的结果,获取所述相关作业信息中当前作业所请求的软件许可证空闲占用状态信息以及预留配置信息;
18、利用所述相关作业信息中当前作业所请求的软件许可证空闲占用状态信息以及预留配置信息,判断所请求的软件许可证数量是否满足基于后台设定的数量;
19、若满足,则获取请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,并执行步骤s4。
20、进一步地,所述利用所述请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,参与到私有池的配额调度,若满足第二执行规则,则执行步骤s5,包括:
21、利用所述请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,参与到私有池的配额调度,判断所述相关作业信息中当前作业所属用户组的私有池配额富余量是否满足所述当前作业的资源请求量需求;
22、若满足,则执行步骤s5。
23、进一步地,所述利用所述请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,参与到公有池的配额调度,若满足第三执行规则,则执行步骤s5,包括:
24、利用所述请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,计算出计算资源的公有池空闲量;
25、利用所述公有池空闲量的计算结果,判断所述当前作业所属用户组的私有池配额是否存在部分富余;
26、若所述当前作业所属用户组的私有池配额存在部分富余,则判断该富余量加上所述公有池空闲量是否能够满足所述当前作业的资源请求量需求;
27、若满足,则执行骤s5;
28、若所述当前作业所属用户组的私有池配额不存在部分富余,则判断该公有池空闲量是否能够满足所述当前作业的资源请求量需求;
29、若满足,则执行骤s5。
30、进一步地,所述方法还包括:
31、利用所述公有池空闲量的计算结果,判断所述当前作业在公有池调度中所占用的公有池的资源量是否属于预设的业务饱和度低范围段内的用户组的私有池配额;
32、若属于,则当所述用户组的业务饱和度达到后台设定的范围内时,优先释放和返还这部分资源配额。
33、进一步地,所述基于步骤s4的执行结果,进行智能调度,得到所述智能调度的相关计算结果,包括:
34、基于步骤s4的执行结果,分配相应的计算资源;
35、执行与所述计算资源相对应的分析求解任务,得到所述智能调度的相关计算结果。
36、第二方面,本技术提供一种智能调度计算资源的装置,所述装置包括:
37、获取模块,用于获取待调度的相关资源信息,所述相关资源信息包括:相关作业信息和当前资源请求及占用的信息;
38、检测模块,用于利用所述相关资源信息,进行前序请求快速检测,若通过所述前序请求快速检测,则执行下一步骤;
39、否则,加入到第一排队模式中;
40、软件调度模块,用于利用所述通过所述前序请求快速检测的结果,执行软件许可调度模式,若满足预设的第一执行规则,则获取请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,并执行下一步骤;
41、否则,加入到第一排队模式中;
42、配额模块,用于利用所述请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,参与到私有池的配额调度,若满足第二执行规则,则执行下一步骤,进行智能调度;
43、否则,利用所述请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,参与到公有池的配额调度,若满足第三执行规则,则执行下一步骤,进行智能调度;
44、否则,加入到第一排队模式中;
45、智能调度模块,用于进行智能调度,得到所述智能调度的相关计算结果。
46、第三方面,本技术提供一种智能调度计算资源的设备,所述设备包括:
47、存储器,其上存储有可执行程序;
48、处理器,用于执行所述存储器中的所述可执行程序,以实现上述中任一项所述方法的步骤。
49、本技术提供的技术方案可以包括以下有益效果:
50、本技术通过执行以下步骤,s1.获取待调度的相关资源信息,所述相关资源信息包括:相关作业信息和当前资源请求及占用的信息;s2.利用所述相关资源信息,进行前序请求快速检测,若通过所述前序请求快速检测,则执行步骤s3;否则,加入到第一排队模式中;s3.利用所述通过所述前序请求快速检测的结果,执行软件许可调度模式,若满足预设的第一执行规则,则获取请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,并执行步骤s4;否则,加入到第一排队模式中;s4.利用所述请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,参与到私有池的配额调度,若满足第二执行规则,则执行步骤s5进行智能调度;否则,利用所述请求的资源类型的所有授权用户组的资源使用信息及用户组的资源授权数和占用量信息,参与到公有池的配额调度,若满足第三执行规则,则执行步骤s5进行智能调度;否则,加入到第一排队模式中;s5.基于步骤s4的执行结果,进行智能调度,得到所述智能调度的相关计算结果。本技术依次通过进行前序请求快速检测,执行软件许可调度模式,利用公有池及私有池进行配额调度后进行智能调度,通过动态配置调度的方式满足实际的动态业务需求。
51、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。