集群节点资源调度方法及装置制造方法及图纸

技术编号:29400002 阅读:20 留言:0更新日期:2021-07-23 22:37
本发明专利技术提供一种集群节点资源调度方法及装置,属于计算机技术领域。集群节点资源调度方法,用于调度集群中的物理节点创建容器集群以运行用户应用,包括:获取用户应用的参数,所述用户应用的参数包括以下至少一种:训练数据集、期望训练时长、应用类型、容器数目、集群中图形处理单元GPU型号和机器学习模型;获取集群中每个物理节点的资源使用信息;根据每个物理节点的资源使用信息和所述参数计算每个物理节点的分值,并根据每个物理节点的分值分配容器到各个物理节点,创建容器集群。本发明专利技术的技术方案能够提高集群资源的利用率。

【技术实现步骤摘要】
集群节点资源调度方法及装置
本专利技术涉及计算机
,特别是指一种集群节点资源调度方法及装置。
技术介绍
近年来,并行计算集群越来越多的应用于语音识别、图像识别、自然语言理解等人工智能相关领域,使得人工智能相关领域的任务处理能力显著提升,尤其是人工智能相关领域中的深度学习任务的处理能力大大得到提升;而随着数据处理量的增加,单个资源往往无法承载复杂的计算任务,这样就需要并行计算集群中越来越多的资源执行相应任务,以满足实际应用需求,如使用多个图形处理单元(GraphicProcessingUnit,GPU)组成一个GPU集群执行海量数据的深度学习任务中的计算需求,这就需要对集群资源进行高效的分配,以充分发挥其并行计算的能力。现有技术中,在对集群节点进行资源分配时,并没有考虑每个节点资源的使用状况,而是根据所需要的计算资源对节点中的容器进行简单的分配,造成计算任务等待时间较长,集群并行处理能力下降以及资源利用率较低等问题。
技术实现思路
本专利技术要解决的技术问题是提供一种集群节点资源调度方法及装置,能够提高集群资源的利用率。为解决上述技术问题,本专利技术的实施例提供技术方案如下:一方面,提供一种集群节点资源调度方法,用于调度集群中的物理节点创建容器集群以运行用户应用,包括:获取用户应用的参数,所述用户应用的参数包括以下至少一种:训练数据集、期望训练时长、应用类型、容器数目、集群中图形处理单元GPU型号和机器学习模型;获取集群中每个物理节点的资源使用信息;r>根据每个物理节点的资源使用信息和所述参数计算每个物理节点的分值,并根据每个物理节点的分值分配容器到各个物理节点,创建容器集群。可选地,物理节点的资源包括GPU、CPU、内存和磁盘;物理节点的资源使用信息包括:GPU负载、CPU使用率、内存使用率和磁盘使用率。可选地,所述根据每个物理节点的资源使用信息和所述参数计算每个物理节点的分值包括:根据所述应用类型确定每个资源的权重值;根据每个资源的权重值和每个资源的空闲数目计算得的每个物理节点的分值。可选地,所述应用类型包括GPU密集型应用、CPU密集型应用和内存密集型应用,对于GPU密集型应用,GPU权重值、CPU权重值、内存权重值和磁盘权重值的和等于1,CPU权重值大于内存权重值,GPU权重值大于CPU权重值、内存权重值和磁盘权重值的和;对于CPU密集型应用,GPU权重值、CPU权重值、内存权重值和磁盘权重值的和等于1,内存权重值大于磁盘权重值,CPU权重值大于内存权重值,GPU权重值为0;对于内存密集型,GPU权重值、CPU权重值、内存权重值和磁盘权重值的和等于1,CPU权重值大于磁盘权重值,内存权重值大于CPU权重值,GPU权重值为0。可选地,GPU的空闲数目Freegpu(i)采用以下公式计算:Freegpu(i)=(freeGPUnum(i)+∑min(freeGPUmemoryratio,(1-GPUusage))其中,freeGPUnum(i)为物理节点的空闲的GPU数目,freeGPUmemoryratio为物理节点的非空闲的GPU的内存空闲率,GPUusage为物理节点的非空闲的GPU的计算负载,其中,如果GPU内存使用率超过第一阈值或者GPU计算负载超过第二阈值,则认为此GPU无空闲资源。可选地,所述根据每个物理节点的分值分配容器到各个物理节点包括:根据每个物理节点的分值排序以及容器的集群角色将容器调度到不同的物理节点。可选地,所述根据每个物理节点的分值排序以及容器的集群角色将容器调度到不同的物理节点包括:根据每个物理节点的物理地址、进行调度时的时间戳、容器的集群角色、物理节点的分值排序对物理节点打上标签;根据每个容器的集群角色和进行调度时的时间戳确定容器对应的物理节点,根据容器对应的物理节点的物理地址、容器的集群角色、进行调度时的时间戳和对应的物理节点的分值排序为容器打上标签;将容器标签与物理节点标签进行匹配,将容器调度到匹配上的物理节点并进行绑定。可选地,根据每个物理节点的资源使用信息和所述参数计算每个物理节点的分值之前,所述方法还包括:确定所述应用类型是否为GPU密集型应用;如果是,根据训练数据集、期望训练时长和GPU型号计算需要的GPU数量;将空闲的GPU数量与需要的GPU数量比较,如果空闲的GPU数量少于需要的GPU数量,则调整期望训练时长和训练数据集,直到空闲的GPU数量不少于需要的GPU数量。可选地,创建容器集群之后,所述方法还包括:在所述容器集群上运行用户应用;在运行完成后获取用户应用的输出结果,并释放所述容器集群占用的资源。本专利技术实施例还提供了一种集群节点资源调度装置,用于调度集群中的物理节点创建容器集群以运行用户应用,包括:第一获取模块,用于获取用户应用的参数,所述用户应用的参数包括以下至少一种:训练数据集、期望训练时长、应用类型、容器数目、集群中图形处理单元GPU型号和机器学习模型;第二获取模块,用于获取集群中每个物理节点的资源使用信息;处理模块,用于根据每个物理节点的资源使用信息和所述参数计算每个物理节点的分值,并根据每个物理节点的分值分配容器到各个物理节点,创建容器集群。可选地,物理节点的资源包括GPU、CPU、内存和磁盘;物理节点的资源使用信息包括:GPU负载、CPU使用率、内存使用率和磁盘使用率。可选地,所述处理模块包括:确定子模块,用于根据所述应用类型确定每个资源的权重值;计算子模块,用于根据每个资源的权重值和每个资源的空闲数目计算得的每个物理节点的分值。可选地,所述应用类型包括GPU密集型应用、CPU密集型应用和内存密集型应用,对于GPU密集型应用,GPU权重值、CPU权重值、内存权重值和磁盘权重值的和等于1,CPU权重值大于内存权重值,GPU权重值大于CPU权重值、内存权重值和磁盘权重值的和;对于CPU密集型应用,GPU权重值、CPU权重值、内存权重值和磁盘权重值的和等于1,内存权重值大于磁盘权重值,CPU权重值大于内存权重值,GPU权重值为0;对于内存密集型,GPU权重值、CPU权重值、内存权重值和磁盘权重值的和等于1,CPU权重值大于磁盘权重值,内存权重值大于CPU权重值,GPU权重值为0。可选地,GPU的空闲数目Freegpu(i)采用以下公式计算:Freegpu(i)=(freeGPUnum(i)+∑min(freeGPUmemoryratio,(1-GPUusage))其中,freeGPUnum(i)为物理节点的空闲的GPU数目,freeGPUmemoryratio为物理节点的非空闲的GPU的内存空闲率,GPUusage为物理节点的非空闲的GPU的计算负载,其中,如果GPU内存使用率超过第一阈值或者GPU计算负载超过本文档来自技高网...

【技术保护点】
1.一种集群节点资源调度方法,其特征在于,用于调度集群中的物理节点创建容器集群以运行用户应用,包括:/n获取用户应用的参数,所述用户应用的参数包括以下至少一种:训练数据集、期望训练时长、应用类型、容器数目、集群中图形处理单元GPU型号和机器学习模型;/n获取集群中每个物理节点的资源使用信息;/n根据每个物理节点的资源使用信息和所述参数计算每个物理节点的分值,并根据每个物理节点的分值分配容器到各个物理节点,创建容器集群。/n

【技术特征摘要】
1.一种集群节点资源调度方法,其特征在于,用于调度集群中的物理节点创建容器集群以运行用户应用,包括:
获取用户应用的参数,所述用户应用的参数包括以下至少一种:训练数据集、期望训练时长、应用类型、容器数目、集群中图形处理单元GPU型号和机器学习模型;
获取集群中每个物理节点的资源使用信息;
根据每个物理节点的资源使用信息和所述参数计算每个物理节点的分值,并根据每个物理节点的分值分配容器到各个物理节点,创建容器集群。


2.根据权利要求1所述的集群节点资源调度方法,其特征在于,物理节点的资源包括GPU、CPU、内存和磁盘;
物理节点的资源使用信息包括:GPU负载、CPU使用率、内存使用率和磁盘使用率。


3.根据权利要求2所述的集群节点资源调度方法,其特征在于,所述根据每个物理节点的资源使用信息和所述参数计算每个物理节点的分值包括:
根据所述应用类型确定每个资源的权重值;
根据每个资源的权重值和每个资源的空闲数目计算得的每个物理节点的分值。


4.根据权利要求3所述的集群节点资源调度方法,其特征在于,所述应用类型包括GPU密集型应用、CPU密集型应用和内存密集型应用,
对于GPU密集型应用,GPU权重值、CPU权重值、内存权重值和磁盘权重值的和等于1,CPU权重值大于内存权重值,GPU权重值大于CPU权重值、内存权重值和磁盘权重值的和;
对于CPU密集型应用,GPU权重值、CPU权重值、内存权重值和磁盘权重值的和等于1,内存权重值大于磁盘权重值,CPU权重值大于内存权重值,GPU权重值为0;
对于内存密集型,GPU权重值、CPU权重值、内存权重值和磁盘权重值的和等于1,CPU权重值大于磁盘权重值,内存权重值大于CPU权重值,GPU权重值为0。


5.根据权利要求3所述的集群节点资源调度方法,其特征在于,GPU的空闲数目Freegpu(i)采用以下公式计算:
Freegpu(i)=(freeGPUnum(i)+∑min(freeGPUmemoryratio,(1-GPUusage))
其中,freeGPUnum(i)为物理节点的空闲的GPU数目,freeGPUmemoryratio为物理节点的非空闲的GPU的内存空闲率,GPUusage为物理节点的非空闲的GPU的计算负载,其中,如果GPU内存使用率超过第一阈值或者GPU计算负载超过第二阈值,则认为此GPU无空闲资源。


6.根据权利要求1所述的集群节点资源调度方法,其特征在于,所述根据每个物理节点的分值分配容器到各个物理节点包括:
根据每个物理节点的分值排序以及容器的集群角色将容器调度到不同的物理节点。


7.根据权利要求6所述的集群节点资源调度方法,其特征在于,所述根据每个物理节点的分值排序以及容器的集群角色将容器调度到不同的物理节点包括:
根据每个物理节点的物理地址、进行调度时的时间戳、容器的集群角色、物理节点的分值排序对物理节点打上标签;
根据每个容器的集群角色和进行调度时的时间戳确定容器对应的物理节点,根据容器对应的物理节点的物理地址、容器的集群角色、进行调度时的时间戳和对应的物理节点的分值排序为容器打上标签;
将容器标签与物理节点标签进行匹配,将容器调度到匹配上的物理节点并进行绑定。


8.根据权利要求1-7中任一项所述的集群节点资源调度方法,其特征在于,根据每个物理节点的资源使用信息和所述参数计算每个物理节点的分值之前,所述方法还包括:
确定所述应用类型是否为GPU密集型应用;
如果是,根据训练数据集、期望训练时长和GPU型号计算需要的GPU数量;
将空闲的GPU数量与需要的GPU数量比较,如果空闲的GPU数量少于需要的GPU数量,则调整期望训练时长和训练数据集,直到空闲的GPU数量不少于需要的GPU数量。


9.根据权利要求8所述的集群节点资源调度方法,其特征在于,创建容器集群之后,所述方法还包括:
在所述容器集群上运行用户应用;
在运行完成后获取用户应用的输出结果,并释放所述容器集群占用的资源。


...

【专利技术属性】
技术研发人员:刘锋
申请(专利权)人:株式会社日立制作所
类型:发明
国别省市:日本;JP

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1