本发明涉及数据集群管理,具体为一种基于人工智能的集群数据监测评估系统及方法。
背景技术:
1、通过多个计算节点组成计算集群可以提高计算任务的执行效率,尤其在科学计算、深度学习和训练人工智能模型等领域存在广泛应用。例如,通过多个图形处理单元(gpu)组成协同处理计算任务的计算集群,可应对规模更大的神经网络模型的计算量。
2、当期应用场景中,计算集群中计算任务的编排调度存在缺陷,任务感知能力和对跨节点的任务协同调度能力存在不足,缺乏对计算节点精细化分配的调度方法;当前对计算集群的管理中,主要针对已有运行计划进行节点分配,缺乏针对不同任务,对计算资源进行弹性调整的手段,使得集群中的计算资源得不到充分使用。
技术实现思路
1、本发明的目的在于提供一种基于人工智能的集群数据监测评估系统及方法,以解决上述背景技术中提出的问题。
2、为了解决上述技术问题,本发明提供如下技术方案一种基于人工智能的集群数据监测评估方法,方法包括:
3、步骤s100:在一个包括至少两个计算节点的计算集群中,获取计算集群处理计算任务的历史记录,计算任务为通过至少两个计算节点协同处理的计算任务,得到不同计算任务的任务模板;
4、步骤s200:获取计算节点的协同工作的故障记录,获取计算集群中任意两个计算节点同时运行时的稳定系数;
5、步骤s300:对计算集群中当前运行的计算任务进行汇集,获取计算集群在不同时间段释放出的节点资源,将各个时间段空闲的计算节点汇集到空闲节点列表;
6、步骤s400:汇集对计算集群中新增的计算任务的请求,根据新增的计算任务的任务模板,匹配计算集群中处于空闲时间段的计算节点,根据任务模板与计算节点的匹配程度和计算节点的稳定系数,计算各个计算任务的匹配度;
7、步骤s500:根据各个计算任务的匹配度对新增的计算任务进行排列,获取计算集群提供的计算节点与计算任务对应的计算节点的差异,向相关管理人员提交计算节点申请。
8、进一步的,步骤s100包括:
9、步骤s101:从历史记录中获取某一种计算任务作为目标任务,获取目标任务在计算集群中的运行流程l,根据计算任务不同处理阶段占用的计算节点,将运行流程划分为若干个运算步骤,其中,sti表示在运行流程l中第i个运算步骤中运行目标任务的计算节点,sti中至少包括一个计算节点,当sti中多于一个计算节点时,sti中还包括计算节点的连接关系;
10、步骤s102:获取长度为t0的单位时间,提取目标任务的历史记录,获取各个运算步骤的运行时间,将运算步骤的运行时间划分为若干个单位时间;
11、步骤s103:获取运行流程l中第i个运算步骤,对应单位时间的数量ni,得到第i个运算步骤的子模板(sti,ni),按照运算步骤的顺序汇集目标任务的所有运算步骤的子模板,得到目标任务的任务模板。
12、进一步的,步骤s200包括:
13、步骤s201:从历史记录中获取任意两个存在串行协同或并行协同的计算节点组成节点对,获取节点对的历史运行记录;
14、步骤s202:获取节点对的正常状态运行时长t1,异常状态运行时长t2和维修总时长t3,计算稳定系数η,η=(t1-t2-t3)/t1;
15、其中,当节点对为并行协同时,正常状态运行时长t1、异常状态运行时长t2和维修总时长t3,分别为两个计算节点同时处于正常运行状态、异常运行状态或维修的时间;当节点对为串行协同时,正常状态运行时长t1为两个计算节点存在串行运算关系时,运行的总时长,异常状态运行时长t2和维修总时长t3,分别为节点对中后一计算节点的异常状态运行时长和维修时长;
16、一般认为,在一个计算集群中,计算集群正常运行的时间占计算集群总运行时间的大部分,异常运行时间和维修时长占总运行时长的少部分,在方案中t1、t2和t3满足条件:t1>t2+t3;
17、从历史记录中收集不同计算节点协同的关系,并将协同关系进行简化,转变为计算节点两两协同的关系,对计算节点的协同记录进行最大程度的遍历,获取两个计算节点同时工作的协同关系,对不适合协同工作的计算节点进行筛除,减少对计算任务的不良影响。
18、进一步的,步骤s300包括:
19、步骤s301:获取任务序列中各个计算任务的任务模板,根据任务模板中各个运算步骤占用计算节点的总量,获取计算任务的计算节点分配计划;
20、步骤s302:将计算节点执行运算任务的时间段记为工作时间段,将没有进行计算任务的时间段记为空闲时间段,获取每个计算节点的工作时间段和空闲时间段,汇集得到各个计算节点的任务计划;
21、步骤s303:以任务序列中第一个任务开始执行的时间作为时间起点,对计算节点的任务计划进行对齐,在时间起点后,对同一空闲时间段的计算节点进行分别汇集,得到各个单位时间处于空闲时间段的计算节点。
22、进一步的,步骤s400包括:
23、步骤s401:将新增的计算任务汇集至第一任务集合,获取第一任务集合中的任意计算任务taska;
24、步骤s402:从taska的任务模板中获取各个运算步骤对应的计算单元,以及各个运算步骤对应单位时间的数量,获取计算任务taska的第j个运算步骤对应的计算节点staj;
25、步骤s403:根据第j个运算步骤的运行时间,从空闲节点列表中获取满足staj中连接方式的计算节点,当第j个运算步骤的运行时间匹配到至少一个空闲时间段的计算节点时,汇入第j个运算步骤的节点备选集合hj,当第j个运算步骤的运行时间没有匹配到空闲时间段的计算节点时,将第j个运算步骤记为无匹配步骤;
26、步骤s404:获取hj中计算节点的数量为na,计算第j个运算步骤的匹配度αj,αj=na/naj,其中,naj表示staj中对应计算节点的数量,计算taska中所有运算步骤的匹配度的总和记为ra;
27、步骤s405:获取hj中各个节点的连接方式,并获取任意两个计算节点间的稳定系数,对hj中的稳定系数进行求和,将hj中稳定系数的总和记为kj;
28、稳定系数描述了两个节点间稳定工作的概率,将任意两个连接的节点的稳定系数进行累加,得到对hj整体稳定工作状态的评估值;
29、步骤s406:计算taska的匹配度ca,其中,ma表示taska中无匹配步骤的总数量,ma表示taska中运算步骤的总数量;
30、匹配度的计算过程分为三个部分,(ma-ma)/ma表示,计算模板中的若干个运算步骤中,存在匹配关系,也即对于某一个运算步骤,至少有一个计算节点满足匹配关系,当对于某一个运算步骤,在计算集群中没有匹配到计算节点时,在ma中产生计数;
31、ra针对各个运算步骤的匹配程度,尤其是通过计算节点进行并行运算的情况中,需要得到并行连接的计算节点的满足比例,对后续步骤中需要额外申请的计算节点产生影响,对于当前的计算集群中,尽可能利用现有的计算节点,将需要额外申请计算节点较少的计算任务优先输入计算集群;
32、表示对稳定系数进行求和当稳定系数越高时,说明计算节点间协同工作时越稳定,优选节点协同稳定的计算单元进行计算任务。
33、进一步的,步骤s500包括:
34、步骤s501:计算第一任务集合中各个计算任务的匹配度,根据匹配度从高到低进行排列,得到第二任务集合;
35、步骤s502:获取第二任务集合中第1个计算任务task21,获取task21中第p个运算步骤对应的计算节点st21p和节点备选集合h21p,将st21p和h21p进行比对,获取st21p中缺少的计算节点记为st21p2;
36、步骤s503:汇集计算任务task21中各个步骤缺少的计算节点,得到节点待配置列表,向相关管理人员发送新增计算节点申请,当计算节点对应增加后,将计算任务task21输入计算集群。
37、为了更好地实现上述方法,还提出一种基于人工智能的集群数据监测评估系统,系统包括:任务模板管理模块、稳定系数管理模块、空闲节点管理模块、任务匹配度管理模块和信息提醒模块,其中,任务模板管理模块用于管理计算任务的任务模板,稳定系数管理模块用于管理计算节点间的稳定系数,空闲节点管理模块用于管理各个时间段的空闲节点,任务匹配度管理模块用于管理新增任务的任务匹配度,信息提醒模块用于向相关管理人员进行信息提醒;
38、进一步的,任务模板管理模块包括:历史数据管理单元、运算步骤管理单元和模板汇集单元,历史数据管理单元用于管理计算集群中计算节点的历史运行记录,运算步骤管理单元用于管理运算步骤对应的子模板,模板汇集单元用于将子模板进行汇集得到任务模板;
39、进一步的,稳定系数管理模块包括:故障管理单元和稳定计算单元,其中,故障管理单元用于管理计算节点协同过程中的故障记录,稳定计算单元用于对计算节点间的稳定系数进行计算;
40、进一步的,空闲节点管理模块包括:节点计划管理单元和空闲节点管理单元,其中,节点计划管理单元用于管理计算任务的计算节点分配计划,空闲节点管理单元用于汇集空闲时段的计算节点得到空闲节点列表;
41、进一步的,任务匹配度管理模块包括:任务缓冲单元、步骤匹配单元、第一匹配度计算单元和第二匹配度计算单元,其中,任务缓冲单元用于对计算集群中新增的计算任务请求进行存储,步骤匹配单元用于获取计算任务的任务模板,获取各个运算步骤对应计算单元,在计算集群中进行匹配,第一匹配度计算单元用于计算运算步骤的匹配度,第二匹配度计算单元用于获取计算任务的匹配度;
42、进一步的,信息提醒模块包括:任务排序单元、缺少节点管理单元和节点申请单元,其中,任务排序单元用于对新增的计算任务进行排列,缺少节点管理单元用于获取各个运算步骤缺少的计算单元,节点申请单元用于根据缺少是计算单元生成新增计算节点的列表,向相关管理人员发送信息提醒。
43、与现有技术相比,本发明所达到的有益效果是:本发明通过采集历史数据形成不同计算任务的任务模板,通过对计算集群中已有计划进行稽核,找到存在空闲的计算节点,进一步比较计算节点的协同关系,为空闲的计算节点分配计算任务。本发明提供了基于细粒度的计算任务感知和计算节点调用方式,形成了面向多模式的算力调度能力,提升了gpu等主机资源利用率。