由状态监控芯片在计算节点间进行任务调度的方法及系统技术方案

技术编号:34986602 阅读:14 留言:0更新日期:2022-09-21 14:31
本发明专利技术公开了一种由状态监控芯片在计算节点间进行任务调度的方法及系统,涉及芯片应用技术,方法包括:在当前计算节点的运行状态进入高负载状态时,由状态监控芯片获取当前计算节点的任务状态信息,并进行解析以获得多个任务状态记录;基于多个任务状态记录从多个任务中选择需要进行调度的至少一个调度任务;获取与当前计算节点相邻的每个相邻计算节点的节点状态信息,确定每个相邻计算节点的节点负载信息;在多个相邻计算节点中,为每个调度任务分别选择作为任务调度目的地的目标计算节点,并基于调度任务和目标计算节点生成用于在计算节点间进行任务调度的调度信息;以及基于调度信息将每个调度任务发送给相应的目标计算节点。算节点。算节点。

【技术实现步骤摘要】
由状态监控芯片在计算节点间进行任务调度的方法及系统


[0001]本专利技术涉及芯片应用技术,并且更具体地,涉及一种由状态监控芯片在计算节点间进行任务调度的方法及系统。

技术介绍

[0002]目前,在云计算、分布式计算等计算领域,通常使用多个计算节点来完成海量计算任务。计算平台或服务节点可能会将计算任务分为多个任务,并将每个任务分配给计算节点进行计算,从而通过多个计算节点的协同计算来完成任务。
[0003]然而,在实际运行中,部分计算节点的任务可能将较长时间段内处于高负载状态,导致这部分计算节点的响应延迟较大,并且由于这部分计算节点的任务完成较慢,不利于计算任务整体的完成时间。
[0004]此外,目前的任务调度方式通常是由计算平台或服务节点来完成,这种方式的处理延迟较大,并且容易造成多余的通信和数据传输成本。为此,需要一种改进的技术方案。

技术实现思路

[0005]为了解决现有技术中的问题,本申请利用计算节点内置的状态监控芯片,通过获取相邻计算节点的运行状态直接在计算节点间进行任务调度,并且在任务调度分配后,将调度信息上报给计算平台或服务节点。
[0006]根据本专利技术的一个方面,提供一种由状态监控芯片在计算节点间进行任务调度的方法,所述方法包括:在当前计算节点内置的状态监控芯片确定所述当前计算节点的运行状态进入高负载状态时,由所述状态监控芯片获取当前计算节点的任务状态信息,并对任务状态信息进行解析以获得多个任务状态记录;所述状态监控芯片对所述当前计算节点进入高负载状态后新接收的任务的接收时间进行记录,将新接收的任务存储在当前计算节点的本地缓存中并设置为挂起状态,使得所述当前计算节点暂停处理新接收的任务;基于所述多个任务状态记录,确定当前计算节点内处于处理状态中的多个任务中每个任务的任务信息,基于每个任务的任务信息从多个任务中选择需要进行调度的至少一个调度任务;所述状态监控芯片获取与当前计算节点相邻的每个相邻计算节点的节点状态信息,根据节点状态信息确定每个相邻计算节点的节点负载信息;在多个相邻计算节点中,为每个调度任务分别选择作为任务调度目的地的目标计算节点,并基于调度任务和目标计算节点生成用于在计算节点间进行任务调度的调度信息;以及由状态监控芯片将所述调度信息上传给服务节点,并基于所述调度信息将每个调度任务发送给相应的目标计算节点。
[0007]优选地,还包括,在时间进入当前时间区段后,所述状态监控芯片从服务节点接收所述当前计算节点的归属区域的与所述当前时间区段相邻的上一个时间区段的节点统计信息;所述状态监控芯片从所述节点统计信息中获取归属区域内每个计算节点在所述上一个时间区段内的运行统计信息;所述状态监控芯片根据归属区域内每个计算节点在所述上一个时间区段内的运行统计信息,确定当前计算节点的负载检测粒度。
[0008]优选地,在确定当前计算节点的负载检测粒度之后,还包括,状态监控芯片获取所述当前计算节点的运行数据;基于所述负载检测粒度对所述当前计算节点的运行数据进行处理,以生成经过处理的运行数据;基于所述经过处理的运行数据,计算所述当前计算节点的动态负载率;以及基于所述动态负载率确定当前计算节点的运行状态,所述运行状态包括:正常负载状态和高负载状态。
[0009]优选地,还包括,在所述上一个时间区段期满时,所述服务节点向归属区域内的每个计算节点发送信息上报指示;响应于接收到所述信息上报指示,每个计算节点将所述上一个时间区段内的运行统计信息发送给所述服务节点;所述服务节点将每个计算节点在所述上一个时间区段内的运行统计信息组成归属区域的上一个时间区段的节点统计信息;以及在时间进入当前时间区段,将归属区域的上一个时间区段的节点统计信息发送给归属区域内的每个计算节点。
[0010]优选地,其中,所述状态监控芯片根据归属区域内每个计算节点在所述上一个时间区段内的运行统计信息,确定当前计算节点的负载检测粒度,包括:所述状态监控芯片对归属区域内每个计算节点在所述上一个时间区段内的运行统计信息进行解析,以获取所述上一个时间区段内归属区域的每个计算节点的完成任务的数量和每个任务的处理时间;确定在上一个时间区段内,当前计算节点的完成任务的数量和每个任务的处理时间;根据当前计算节点的完成任务的数量和每个任务的处理时间,以及归属区域的每个计算节点的完成任务的数量和每个任务的处理时间,确定当前计算节点的负载检测粒度。
[0011]优选地,其中,根据当前计算节点的完成任务的数量和每个任务的处理时间,以及归属区域的每个计算节点的完成任务的数量和每个任务的处理时间,确定当前计算节点的负载检测粒度,包括:基于归属区域的每个计算节点的每个任务的处理时间,确定每个计算节点的任务的平均处理时间TA
i
、任务的处理时间的中位数TM
i
、处理时间大于第一时间阈值的任务的数量TL
i
、处理时间小于第二时间阈值的任务的数量TS
i
;通过以下公式计算当前计算节点的负载检测粒度:
当时,;当时,;当时,;其中,n为归属区域内计算节点的数量,i和n为自然数,,TA
c
为当前计算节点的任务的平均处理时间、TM
c
为当前计算节点的任务的处理时间的中位数、TL
c
为当前计算节点的处理时间大于第一时间阈值的任务的数量、TS
c
为当前计算节点的处理时间小于第二时间阈值的任务的数量、TA
i
为第i个计算节点的任务的平均处理时间、TM
i
为第i个计算节点的任务的处理时间的中位数、TL
i
为第i个计算节点的处理时间大于第一时间阈值的任务的数量、TS
i
为第i个计算节点的处理时间小于第二时间阈值的任务的数量;为预设检测粒度;为第一加权因子,为第二加权因子,。
[0012]优选地,其中,状态监控芯片获取所述当前计算节点的运行数据,包括:所述状态监控芯片获取所述当前计算节点的运行日志;将所述运行日志中位于上一个时间区段内的日志数据作为所述当前计算节点的运行数据,所述运行数据包括:以秒为统计单位的处理器使用率、以秒为统计单位的内存空闲率和磁盘的每秒输入输出量IOPS。
[0013]优选地,其中,基于所述负载检测粒度对所述当前计算节点的运行数据进行处理,以生成经过处理的运行数据,包括基于所述负载检测粒度确定用于运行数据的时间单元;基于以秒为统计单位的处理器使用率和时间单元,确定上一个时间区段内每个时间单元内的处理器使用率的均值;基于以秒为统计单位的内存空闲率和时间单元,确定上一个时间区段内每个时间单元内的内存空闲率的均值;基于磁盘的每秒输入输出量IOPS和时间单元,确定上一个时间区段内每个时间单元内的IOPS的均值;将上一个时间区段内每个时间单元内的处理器使用率的均值、内存空闲率的均值以及IOPS的均值,作为经过处理的运行数据。
[0014]优选地,其中,基于所述经过处理的运行数据,计算所述当前计算节点的动态负本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种由状态监控芯片在计算节点间进行任务调度的方法,所述方法包括:在当前计算节点内置的状态监控芯片确定所述当前计算节点的运行状态进入高负载状态时,由所述状态监控芯片获取当前计算节点的任务状态信息,并对任务状态信息进行解析以获得多个任务状态记录;所述状态监控芯片对所述当前计算节点进入高负载状态后新接收的任务的接收时间进行记录,将新接收的任务存储在当前计算节点的本地缓存中并设置为挂起状态,使得所述当前计算节点暂停处理新接收的任务;基于所述多个任务状态记录,确定当前计算节点内处于处理状态中的多个任务中每个任务的任务信息,基于每个任务的任务信息从多个任务中选择需要进行调度的至少一个调度任务;所述状态监控芯片获取与当前计算节点相邻的每个相邻计算节点的节点状态信息,根据节点状态信息确定每个相邻计算节点的节点负载信息;在多个相邻计算节点中,为每个调度任务分别选择作为任务调度目的地的目标计算节点,并基于调度任务和目标计算节点生成用于在计算节点间进行任务调度的调度信息;以及由状态监控芯片将所述调度信息上传给服务节点,并基于所述调度信息将每个调度任务发送给相应的目标计算节点;还包括,在时间进入当前时间区段后,所述状态监控芯片从服务节点接收所述当前计算节点的归属区域的与所述当前时间区段相邻的上一个时间区段的节点统计信息;所述状态监控芯片从所述节点统计信息中获取归属区域内每个计算节点在所述上一个时间区段内的运行统计信息;所述状态监控芯片根据归属区域内每个计算节点在所述上一个时间区段内的运行统计信息,确定当前计算节点的负载检测粒度。2.根据权利要求1所述的方法,在确定当前计算节点的负载检测粒度之后,还包括,状态监控芯片获取所述当前计算节点的运行数据;基于所述负载检测粒度对所述当前计算节点的运行数据进行处理,以生成经过处理的运行数据;基于所述经过处理的运行数据,计算所述当前计算节点的动态负载率;以及基于所述动态负载率确定当前计算节点的运行状态,所述运行状态包括:正常负载状态和高负载状态。3.根据权利要求1或2所述的方法,还包括,在所述上一个时间区段期满时,所述服务节点向归属区域内的每个计算节点发送信息上报指示;响应于接收到所述信息上报指示,每个计算节点将所述上一个时间区段内的运行统计信息发送给所述服务节点;所述服务节点将每个计算节点在所述上一个时间区段内的运行统计信息组成归属区域的上一个时间区段的节点统计信息;以及在时间进入当前时间区段,将归属区域的上一个时间区段的节点统计信息发送给归属区域内的每个计算节点。
4.根据权利要求1所述的方法,其中,所述状态监控芯片根据归属区域内每个计算节点在所述上一个时间区段内的运行统计信息,确定当前计算节点的负载检测粒度,包括:所述状态监控芯片对归属区域内每个计算节点在所述上一个时间区段内的运行统计信息进行解析,以获取所述上一个时间区段内归属区域的每个计算节点的完成任务的数量和每个任务的处理时间;确定在上一个时间区段内,当前计算节点的完成任务的数量和每个任务的处理时间;根据当前计算节点的完成任务的数量和每个任务的处理时间,以及归属区域的每个计算节点的完成任务的数量和每个任务的处理时间,确定当前计算节点的负载检测粒度。5.根据权利要求4所述的方法,其中,根据当前计算节点的完成任务的数量和每个任务的处理时间,以及归属区域的每个计算节点的完成任务的数量和每个任务的处理时间,确定当前计算节点的负载检测粒度,包括:基于归属区域的每个计算节点的每个任务的处理时间,确定每个计算节点的任务的平均处理时间TA
i
、任务的处理时间的中位数TM
i
、处理时间大于第一时间阈值的任务的数量TL
i
、处理时间小于第二时间阈值的任务的数量TS
i
;通过以下公式计算当前计算节点的负载检测粒度:当时,;当时,;当时,;其中,n为归属区域内计算节点的数量,i和n为自然数,,TA
c
为当前计算节点的任务的平均处理时间、TM
c
为当前计算节点的任务的处理时间的中位数、TL
c
为当前计算节点的处理时间大于第一时间阈值的任务的数量、TS
c
为当前计算节点的处理时间小于第二时间阈值的任务的数量、TA
i
为第i个计算节点的任务的平均处理时间、TM
i
为第i个计算节点的任务的处理时间的中位数、TL
i
为第i个计算节点的处理时间大于第一时间阈值的任务的数量、TS
i
为第i个计算节点的处理时间小于第二时间阈值的任务的数量;为预设检测粒度;为第一加权因子,为第二加权因子,。6.根据权利要求2所述的方法,其中,状态监控芯片获取所述当前计算节点的运行数据,包括:所述状态监控芯片获取所述当前计算节点的运行日志;将所述运行日志中位于上一个时间区段内的日志数据作为所述当前计算节点的运行数据,所述运行数据包括:以秒为统计单位的处理器使用率、以秒为统计单位的内存空闲率和磁盘的每秒输入输出量IOPS。7.根据权利要求6所述的方法,其中,基于所述负载检测粒度对所述当前计算节点的运行数据进行处理,以生成经过处理的运行数据,包括:基于所述负载检测粒度确定用于运行数据的时间单元;基于以秒为统计单位的处理器使用率和时间单元,确定上一个时间区段内每个时间单
元内的处理器使用率的均值;基于以秒为统计单位的内存空闲率和时间单元,确定上一个时间区段内每个时间单元内的内存空闲率的均值;基于磁盘的每秒输入输出量IOPS和时间单元,确定上一个时间区段内每个时间单元内的IOPS的均值;将上一个时间区段内每个时间单元内的处理器使用率的均值、内存空闲率的均值以及IOPS的均值,作为经过处理的运行数据。8.根据权利要求7所述的方法,其中,基于所述经过处理的运行数据,计算所述当前计算节点的动态负载率,包括:将所有时间单元中,处理器使用率的均值大于处理器使用率阈值的时间单元选择作为检测时间单元;将至少两个在时间上相邻的检测时间单元组成为候选时间区段,以获得多个候选时间区段;将所包括的检测时间单元的数量最多的候选时间区段,选择作为检测时间区段;基于检测时间区段内的经过处理的运行数据,计算所述当前计算节点的动态负载率。9.根据权利要求1所述的方法,所述当前计算节点的任务状态信息包括当前计算节点的多个任务状态记录;其中每个任务状态记录包括:任务信息、任务完成比率、任务的接收时间和任务标识符,当前计算节点的每个任务状态记录对应于当前计算节点中处理完成的或正在处理中的每个任务;所述任务信息包括:任务的总预设处理时间长度、关联任务的数量和关联任务的标识符。10.根据权利要求9所述的方法,所述当前计算节点的任务状态信息存储在当前计算节点的日志存储设备中。11.根据权利要求10所述的方法,其中,由所述状态监控芯片获取当前计算节点的任务状态信息,包括:所述状态监控芯片从日志...

【专利技术属性】
技术研发人员:王嘉诚张少仲张栩
申请(专利权)人:中诚华隆计算机技术有限公司
类型:发明
国别省市:

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

1