本发明涉及超算中心计算集群节点优先级选择
技术领域:
,具体涉及一种计算集群节点调度方法、装置、设备、产品。
背景技术:
:近年来,各种科研数据井喷式爆发,从海量数据中提取有用的信息所需的算力越来越多。计算能力是衡量一个国家科技核心竞争力和综合国力的重要标志,以超级计算机为核心工具的国家超级计算中心是国家战略性信息基础设施和科技创新战略平台。政府、企业都在筹建自己的计算集群,对于计算集群数量增加、规模增大,拥有合理的集群调度算法,能够合理利用计算资源,提高作业执行效率。现有技术方案是针对超算中心计算集群提出了一种节点优先级选择算法,基于改进的k-近邻算法选择当前集群中计算性能较高的节点执行作业,并且基于作业执行结果不断补充、完善节点特征数据库。传统的超算集群有三种方式进行节点选择,1、通过随机选择节点算法;2、通过轮询的方式选择节点;3、根据当前节点性能及已执行作业数量。基于上述算法进行节点选择,可能会造成作业分配过于平均,造成性能优越的节点无法充分利用,或者造成部分低性能节点承载了较多的作业,造成作业堆积,无法及时完成。技术实现要素:针对现有的调度方法造成作业分配过于平均,造成性能优越的节点无法充分利用,或者造成部分低性能节点承载了较多的作业,造成作业堆积,无法及时完成的问题,本发明提供一种计算集群节点调度方法、装置、设备、产品。本发明的技术方案是:第一方面,本发明技术方案提供一种计算集群节点调度方法,包括如下步骤:用户创建作业并将创建的作业提交;获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点;接收提交的作业,并将接收到的作业分发给选择的最优节点执行;监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确,并将节点性能预测准确的节点参数放入特征数据库的训练样本集。根据当前各个节点运行参数以及节点特征数据库的训练模型,合理分配计算、存储资源,保证资源的合理利用。进一步的,用户创建作业并将创建的作业提交的步骤之前,包括:构建节点的特征数据库。进一步的,构建节点的特征数据库的步骤包括:提取不同的维度的特征,并确定该特征对结果的影响方向、权重;其中影响方向包括正向影响和负向影响;根据提取的特征准备训练样本集;对训练样本集的数据进行归一化处理。用于根据特征数据库的训练样本集计算出该节点特征值到各个训练样本数据的方差,方便进一步选择出最优节点。进一步的,获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点的步骤包括:获取当前计算集群下各个节点对应特征的实时数据;对实时数据进行归一化处理;根据特征数据库的训练样本集计算出该节点特征值到各个训练样本数据的方差,按照方差值进行排序,根据排序后的结果,取出前k条记录,找出k条记录中的性能优先级出现概率最高的一个值作为该节点的优先级;输出选择的最优节点。进一步的,监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确,并将节点性能预测准确的节点参数放入特征数据库的训练样本集的步骤包括:监控作业的运行参数;根据作业的运行参数判断,若作业的执行时长小于作业的预估时长,且作业的挂起时长小于设定的时间阈值,则认为该节点性能预测准确;将节点性能预测准确的节点参数放入特征数据库的训练样本集。判断节点的执行时长与预估执行时长差距,用于进行判断该节点性能预测的准确性,不断补充训练样本集。进一步的,运行参数包括作业的执行时长、作业的挂起时长。第二方面,本发明技术方案提供一种计算集群节点调度装置,包括作业创建模块、节点选择模块、集群调度模块和作业监控模块;作业创建模块,用于用户通过作业创建模块创建作业并将创建的作业提交到集群调度模块;节点选择模块,用于获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点;集群调度模块,接收提交的作业,并将接收到的作业分发给选择的最优节点执行;作业监控模块,用于监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确;并将节点性能预测准确的节点参数放入特征数据库的训练样本集。进一步的,该装置还包括特征数据库构建模块,特征数据库构建模块,用于构建节点的特征数据库。进一步的,特征数据库构建模块包括特征提取单元、训练样本集准备单元、训练样本集处理单元;特征提取单元,用于提取不同的维度的特征,并确定该特征对结果的影响方向、权重;其中影响方向包括正向影响和负向影响;训练样本集准备单元,用于根据提取的特征准备训练样本集;训练样本集处理单元,用于对训练样本集的数据进行归一化处理。进一步的,节点选择模块包括实时数据获取单元、实时数据处理单元、训练处理单元和输出单元;实时数据获取单元,用于获取当前计算集群下各个节点对应特征的实时数据;实时数据处理单元,用于对实时数据进行归一化处理;训练处理单,用于根据特征数据库的训练样本集计算出该节点特征值到各个训练样本数据的方差,按照方差值进行排序,根据排序后的结果,取出前k条记录,找出k条记录中的性能优先级出现概率最高的一个值作为该节点的优先级;输出单元,用于输出选择的最优节点。进一步的,作业监控模块包括监控单元和判断单元;监控单元,用于监控作业的运行参数;判断单元,用于根据作业的运行参数判断,若作业的执行时长小于作业的预估时长,且作业的挂起时长小于设定的时间阈值,则认为该节点性能预测准确。进一步的,运行参数包括作业的执行时长、作业的挂起时长。从以上技术方案可以看出,本发明具有以下优点:选择性能优先级较高的节点,同时基于作业的运行参数评估该模型预测的准确性去完善、补充特征数据库,不断完善算法的准确性,保证作业被分配到合适的节点执行,充分利用了算力。此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明一个实施例的方法的示意性流程图。图2是本发明一个实施例的装置的示意性框图。图3是本发明一个实施例的电子设备的示意图。具体实施方式为了使本
技术领域:
的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。如图1所示,本发明技术方案提供一种计算集群节点调度方法,包括如下步骤:s1:用户创建作业并将创建的作业提交;用户创建作业,具体通过填写相关作业参数,cpu数量、gpu数量、每个任务的cpu数量、gres、优先级、排除的节点数量、每个节点使用的gpu数量、每个任务的gpu数量、节点列表;s2:获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点;s3:接收提交的作业,并将接收到的作业分发给选择的最优节点执行;s4:监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确,并将节点性能预测准确的节点参数放入特征数据库的训练样本集。根据当前各个节点运行参数以及节点特征数据库的训练模型,合理分配计算、存储资源,保证资源的合理利用。需要说明的是,用户创建作业并将创建的作业提交的步骤之前,包括:s0:构建节点的特征数据库。具体的,构建节点的特征数据库的步骤包括:s01:提取不同的维度的特征,并确定该特征对结果的影响方向、权重;其中影响方向包括正向影响和负向影响;s02:根据提取的特征准备训练样本集;s03:对训练样本集的数据进行归一化处理。用于根据特征数据库的训练样本集计算出该节点特征值到各个训练样本数据的方差,方便进一步选择出最优节点。基于构建节点的特征数据库的步骤,具体举例说明如下:首先根据超算中心设备的特点从不同的维度的特征值,并确定该特征值对结果的影响方向、权重。其中影响方向分为正、负,权重值为0-1之间。提取的特征如表1所示;表1特征正/负向影响权重cpu数量正0.6cpu频率正1运行任务数正0.8挂起任务数负0.8总内存(gb)正0.2已用内存(gb)负0.4基于以上提取的特征及准备训练样本集,其中目标向量的取值范围为1-5,准备的样本数据如表2所示;表2对样本数据集进行归一化处理,归一化处理后的数据如表3所示;表3在有些实施例中,步骤s2,获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点的步骤包括:s21:获取当前计算集群下各个节点对应特征的实时数据;s22:对实时数据进行归一化处理;s23:根据特征数据库的训练样本集计算出该节点特征值到各个训练样本数据的方差,按照方差值进行排序,根据排序后的结果,取出前k条记录,找出k条记录中的性能优先级出现概率最高的一个值作为该节点的优先级;s24:输出选择的最优节点。在有些实施例中,步骤s:4,监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确,并将节点性能预测准确的节点参数放入特征数据库的训练样本集的步骤包括:s41:监控作业的运行参数;s42:根据作业的运行参数判断,若作业的执行时长小于作业的预估时长,且作业的挂起时长小于设定的时间阈值,则认为该节点性能预测准确;s43:将节点性能预测准确的节点参数放入特征数据库的训练样本集。判断节点的执行时长与预估执行时长差距,用于进行判断该节点性能预测的准确性,不断补充训练样本集。需要说明的是,运行参数包括作业的执行时长、作业的挂起时长。执行时长与预估运行时长比较,判断节点的执行时长与预估执行时长差距,基于这个差值设置阈值,用于进行判断该节点性能预测的准确性,不断补充训练样本集。如图2所示,本发明实施例提供一种计算集群节点调度装置,包括作业创建模块、节点选择模块、集群调度模块和作业监控模块;作业创建模块,用于用户通过作业创建模块创建作业并将创建的作业提交到集群调度模块;节点选择模块,用于获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点;集群调度模块,接收提交的作业,并将接收到的作业分发给选择的最优节点执行;作业监控模块,用于监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确;并将节点性能预测准确的节点参数放入特征数据库的训练样本集。需要说明的是,该装置还包括特征数据库构建模块,特征数据库构建模块,用于构建节点的特征数据库。在有些实施例中,特征数据库构建模块包括特征提取单元、训练样本集准备单元、训练样本集处理单元;特征提取单元,用于提取不同的维度的特征,并确定该特征对结果的影响方向、权重;其中影响方向包括正向影响和负向影响;训练样本集准备单元,用于根据提取的特征准备训练样本集;训练样本集处理单元,用于对训练样本集的数据进行归一化处理。在有些实施例中,节点选择模块包括实时数据获取单元、实时数据处理单元、训练处理单元和输出单元;实时数据获取单元,用于获取当前计算集群下各个节点对应特征的实时数据;实时数据处理单元,用于对实时数据进行归一化处理;训练处理单,用于根据特征数据库的训练样本集计算出该节点特征值到各个训练样本数据的方差,按照方差值进行排序,根据排序后的结果,取出前k条记录,找出k条记录中的性能优先级出现概率最高的一个值作为该节点的优先级;输出单元,用于输出选择的最优节点。在有些实施例中,作业监控模块包括监控单元和判断单元;监控单元,用于监控作业的运行参数;判断单元,用于根据作业的运行参数判断,若作业的执行时长小于作业的预估时长,且作业的挂起时长小于设定的时间阈值,则认为该节点性能预测准确。其中,运行参数包括作业的执行时长、作业的挂起时长。如图3所示,本发明实施例提供一种电子设备,该电子设备可以包括:处理器(processor)、通信接口(communicationsinterface)、存储器(memory)和总线,其中,处理器,通信接口,存储器通过总线完成相互间的通信。总线可以用于电子设备与传感器之间的信息传输。处理器可以调用存储器中的逻辑指令,以执行如下方法:s1:用户创建作业并将创建的作业提交;s2:获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点;s3:接收提交的作业,并将接收到的作业分发给选择的最优节点执行;s4:监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确,并将节点性能预测准确的节点参数放入特征数据库的训练样本集。此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述方法实施例所述的方法,例如包括:s1:用户创建作业并将创建的作业提交;s2:获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点;s3:接收提交的作业,并将接收到的作业分发给选择的最优节点执行;s4:监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确,并将节点性能预测准确的节点参数放入特征数据库的训练样本集。尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本
技术领域:
的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。当前第1页1 2 3 
技术特征:1.一种计算集群节点调度方法,其特征在于,包括如下步骤:
用户创建作业并将创建的作业提交;
获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点;
接收提交的作业,并将接收到的作业分发给选择的最优节点执行;
监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确,并将节点性能预测准确的节点参数放入特征数据库的训练样本集。
2.根据权利要求1所述的计算集群节点调度方法,其特征在于,用户创建作业并将创建的作业提交的步骤之前,包括:
构建节点的特征数据库。
3.根据权利要求2所述的计算集群节点调度方法,其特征在于,构建节点的特征数据库的步骤包括:
提取不同的维度的特征,并确定该特征对结果的影响方向、权重;其中影响方向包括正向影响和负向影响;
根据提取的特征准备训练样本集;
对训练样本集的数据进行归一化处理。
4.根据权利要求2所述的计算集群节点调度方法,其特征在于,获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点的步骤包括:
获取当前计算集群下各个节点对应特征的实时数据;
对实时数据进行归一化处理;
根据特征数据库的训练样本集计算出该节点特征值到各个训练样本数据的方差,按照方差值进行排序,根据排序后的结果,取出前k条记录,找出k条记录中的性能优先级出现概率最高的一个值作为该节点的优先级;
输出选择的最优节点。
5.根据权利要求4所述的计算集群节点调度方法,其特征在于,监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确,并将节点性能预测准确的节点参数放入特征数据库的训练样本集的步骤包括:
监控作业的运行参数;
根据作业的运行参数判断,若作业的执行时长小于作业的预估时长,且作业的挂起时长小于设定的时间阈值,则认为该节点性能预测准确;
将节点性能预测准确的节点参数放入特征数据库的训练样本集。
6.根据权利要求5所述的计算集群节点调度方法,其特征在于,运行参数包括作业的执行时长、作业的挂起时长。
7.一种计算集群节点调度装置,其特征在于,包括作业创建模块、节点选择模块、集群调度模块和作业监控模块;
作业创建模块,用于用户通过作业创建模块创建作业并将创建的作业提交到集群调度模块;
节点选择模块,用于获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点;
集群调度模块,接收提交的作业,并将接收到的作业分发给选择的最优节点执行;
作业监控模块,用于监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确;并将节点性能预测准确的节点参数放入特征数据库的训练样本集。
8.根据权利要求7所述的计算集群节点调度装置,其特征在于,该装置还包括特征数据库构建模块,特征数据库构建模块,用于构建节点的特征数据库。
9.一种电子设备,其特征在于,包括存储器和处理器,存储器和处理器通过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至6任一所述的计算集群节点调度方法。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行如权利要求1至6任一项所述的计算集群节点调度方法。
技术总结本发明提供一种计算集群节点调度方法、装置、设备、产品,所述方法包括如下步骤:用户创建作业并将创建的作业提交;获取当前计算集群下各个节点对应特征的实时数据,并将获取的实时数据进行处理选择最优节点;接收提交的作业,并将接收到的作业分发给选择的最优节点执行;监控作业的运行参数,并根据作业的运行参数判断该最优节点选择是否准确,并将节点性能预测准确的节点参数放入特征数据库的训练样本集。保证作业被分配到合适的节点执行,充分利用了算力。
技术研发人员:何万县;段谊海;王晓通;郭锋
受保护的技术使用者:苏州浪潮智能科技有限公司
技术研发日:2020.11.09
技术公布日:2021.03.12