CN117707763A - 分层算力调度方法、***、设备及存储介质 - Google Patents
分层算力调度方法、***、设备及存储介质 Download PDFInfo
- Publication number
- CN117707763A CN117707763A CN202311696998.9A CN202311696998A CN117707763A CN 117707763 A CN117707763 A CN 117707763A CN 202311696998 A CN202311696998 A CN 202311696998A CN 117707763 A CN117707763 A CN 117707763A
- Authority
- CN
- China
- Prior art keywords
- server
- task
- scheduling
- servers
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000004364 calculation method Methods 0.000 title claims abstract description 37
- 238000012216 screening Methods 0.000 claims abstract description 16
- 238000001914 filtration Methods 0.000 claims description 22
- 238000000605 extraction Methods 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 238000005192 partition Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 description 18
- 238000004422 calculation algorithm Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 4
- 239000000463 material Substances 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了分层算力调度方法、***、设备及存储介质,本发明的方法包括利用算力调度***接收并解析用户算力请求以确定请求类别;根据请求类别确定对应用户算力请求的任务类型;基于任务类型将用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求;响应调用请求,以基于子任务的优先级信息和任务类型进行分层筛选确定执行任务调度的最终服务器。本发明通过分层筛选服务器,能够避免低配置要求任务占用高配置服务器,造成高配置要求任务阻塞的情况。
Description
技术领域
本发明涉及云计算大数据边缘计算和人工智能技术领域,特别是涉及分层算力调度方法、***、设备及存储介质。
背景技术
通用算力测算路径为,接受目标用户算力设备请求信息->根据服务器当前指标对设备集群进行过滤,得到目标集群->根据服务器当前指标对目标集群中的服务器进行评分->返回最高评分服务器供目标用户算力设备请求进行调用。例如:根据算力设备信息中的CPU使用率、带宽使用率、剩余CPU核数、剩余内存和带宽成本等通用指标对算力设备进行过滤,得到目标算力设备集;采用预设评分法则,对目标算力设备集中的算力设备进行打分,得分最高的算力设备确定为目标用户对应的目标算力设备。
现有最接近的技术方案,《可灵活配置的算力调度实现方法、装置及存储介质》,申请公布号:CN 114461382 A。现有技术方案存在以下缺点:第一,只考虑设备下限,未考虑设备上限,存在小算力需求算法占用高配置服务器,造成高算力要求算法等待等算力浪费的场景的发生;只考虑向下路径选择,未考虑由于网络或其他场景导致的调用失败补偿场景。第二、只考虑服务器性能,未考虑网络可达性,网络质量。第三、资源的使用情况不够精细化,仅考虑资源利用率,未考虑资源平衡性、资源成本,响应时间。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明提出了一种分层算力调度方法,为服务器资源利用率的提升和***整体成本的优化提供了有效的技术解决方案,虑资源空闲率、资源负载情况、资源价格和响应速度等服务器性能参数,首先通过资源空闲率和资源负载情况全面地衡量资源利用率,再基于资源价格降低资源整体成本,最后通过响应速度综合衡量当前服务器性能。
本发明的另一个目的在于提出一种分层算力调度***。
本发明的第三个目的在于提出一种计算机设备。
本发明的第四个目的在于提出一种非临时性计算机可读存储介质。
为达上述目的,本发明一方面提出一种分层算力调度方法,包括:
利用算力调度***接收并解析用户算力请求以确定请求类别;
根据所述请求类别确定对应所述用户算力请求的任务类型;
基于所述任务类型将所述用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求;
响应所述调用请求,以基于所述子任务的优先级信息和所述任务类型进行分层筛选确定执行任务调度的最终服务器。
本发明实施例的分层算力调度方法还可以具有以下附加技术特征:
在本发明的一个实施例中,所述任务类型,包括聚类任务、人物聚类任务、事物聚类任务和特征提取任务;所述算力调度***,包括原子AI能力预设模块、任务调度模块和CPU分层算力调度模块中的多种。
在本发明的一个实施例中,基于所述任务类型将所述用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求,包括:
基于任务类型信息以利用所述原子AI能力预设模块确定多个待调度任务,并下发对应所述多个待调度任务的调度指令;
响应所述调度指令,利用所述任务调度模块将用户算力请求拆分成对应的子任务,并根据子任务的预设的优先级信息向所述CPU分层算力调度模块下发所述多个待调度任务的任务调度的调用请求。
在本发明的一个实施例中,所述方法还包括:响应所述调用请求,以利用所述CPU分层算力调度模块判断服务器参数是否满足预设要求,以根据判断结果对所有服务器进行筛选得到目标调度服务器集群,包括:
利用所述CPU分层算力调度模块筛选所有服务器的最后一次上报时间,判断上报时间是否超时,并将不可达的服务器进行过滤以得到第一服务器集合;
判断所述第一服务器集合中服务器的空闲CPU和内存是否满足使用需求,并将不满足需求的服务器进行过滤以得到第二服务器集合;
判断第二服务器集合中服务器是否进入内存和CPU压力状态,并将内存和CPU使用率超过预设百分比的服务器进行过滤得到目标调度服务器集群,以得到第三服务器集合。
在本发明的一个实施例中,基于所述子任务的优先级信息和所述任务类型进行分层筛选确定执行任务调度的最终服务器,包括:
基于余弦相似度和服务器参数对目标调度服务器集群中的服务器进行分组以划分得到不同组别服务器,并对所述不同组别服务器的服务器参数进行评分以根据评分结果得到第四服务器集合;
基于当前用户和第四服务器集合中服务器的距离得到第五服务器集合,并根据任务类型标签对第五服务器集合中的服务器进行评分排序以根据排序结果匹配任务类型标签得到第六服务器集合,以及根据子任务的优先级信息确定确认执行任务调度的最终服务器。
在本发明的一个实施例中,根据任务类型标签对第五服务器集合中的服务器进行评分排序以根据排序结果匹配任务类型标得到第六服务器集合,包括:
根据当前用户IP地址确定第五服务器集合中服务器的地理位置,并根据任务类型标签确定当前用户倾向的服务器类型;
根据倾向的服务器类型以按评分对第五服务器集合中的服务器进行倒序排序得到倒序排序结果;
根据所述倒序排序结果匹配任务类型标签以得到服务器匹配结果,并基于所述服务器匹配结果得到第六服务器集合,以及输出第六服务器集合中所述地理位置相近的服务器数量。
在本发明的一个实施例中,基于余弦相似度和服务器参数对目标调度服务器集群中的服务器进行分组以划分得到不同组别服务器,包括:
基于服务器参数得到服务器指标向量,并将所述服务器指标向量与业务需求指标向量进行余弦相似度计算得到余弦相似度值;
基于所述余弦相似度值对所述第三服务器集合中的服务器进行排序划分以划分得到不同组别服务器。
为达上述目的,本发明另一方面提出一种分层算力调度***,包括:
请求类别确定模块,用于利用算力调度***接收并解析用户算力请求以确定请求类别;
任务类型确定模块,用于根据所述请求类别确定对应所述用户算力请求的任务类型;
调用请求下发模块,用于基于所述任务类型将所述用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求;
任务调度执行模块,用于响应所述调用请求,以基于所述子任务的优先级信息和所述任务类型进行分层筛选确定执行任务调度的最终服务器。
本发明实施例的分层算力调度方法和***,考虑通过分层筛选服务器,能够避免低配置要求任务占用高配置服务器,造成高配置要求任务阻塞的情况。
为达上述目的,本申请第三方面实施例提出了一种计算机设备,包括:处理器和存储器;其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如第一方面实施例所述的分层算力调度方法。
为达上述目的,本申请第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面实施例所述的分层算力调度方法。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本发明实施例的一种分层算力调度方法的流程图;
图2是根据本发明实施例的又一种分层算力调度方法的流程图;
图3是根据本发明实施例的一种分层算力调度***的结构示意图;
图4是根据本发明实施例的又一种分层算力调度***的结构示意图;
图5是根据本发明实施例的另一种分层算力调度***的结构示意图;
图6是根据本发明实施例的再一种分层算力调度***的结构示意图;
图7是根据本发明实施例的计算机设备。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
下面参照附图描述根据本发明实施例提出的分层算力调度方法、***、设备及存储介质。
图1是根据本发明实施例的分层算力调度方法的流程图,如图1所示,该方法包括但不限于以下步骤:
S1,利用算力调度***接收并解析用户算力请求以确定请求类别。
可以理解的是,本发明利用算力调度***接收用户算力请求信息,并解析出请求的类别。
示例性地,算力调度***可以包括原子AI能力预设模块、任务调度模块和CPU分层算力调度模块分别用于本发明实施例的信息的获取和下发。
示例性地,***解析用户请求信息中的请求类别,可以包括多种AI请求类别,例如aiType=0、aiType=1、aiType=2和aiType=3。
本发明实施例的分层算力调度方法,通过算力调度***解析并确定请求的类别,可以提高海量用户算力请求的解析速度,提升解析效率。
S2,根据请求类别确定对应用户算力请求的任务类型。
可以理解的是,本发明基于请求类别,可以评估对应于请求的任务类型和调度顺序。
示例性地,任务类型,包括聚类任务、人物聚类任务、事物聚类任务和特征提取任务;分别对应上述的aiType=0、aiType=1、aiType=2和aiType=3类型。即,类别为aiType=0,表明为聚类任务,类别为aiType=1表明为人物聚类任务,类别为aiType=2,表明为事物聚类任务,类别为aiType=3表明为特征提取任务。
本发明实施例的分层算力调度方法,通过具体分类的任务类别确定对应的任务类型,可以有效清楚的确定任务类型,为后续算力调度***获取各个任务类型的信息提供条件。
S3,基于任务类型将用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求。
在本发明的一个实施例中,基于任务类型信息以利用原子AI能力预设模块确定多个待调度任务,并下发对应多个待调度任务的调度指令;响应调度指令,利用任务调度模块将用户算力请求拆分成对应的子任务,并根据子任务的预设的优先级信息向CPU分层算力调度模块下发多个待调度任务的任务调度的调用请求。
可以理解的是,本发明分布式任务调度,将AI请求根据AI能力预设模块自定义的子任务流程,更小颗粒度的进行调度,提升并发度。
示例性地,当确定类别为aiType=0,表明的聚类任务;算力调度***中的原子AI能力预设模块,基于采集到的任务类型信息,返回枚举列表(ANALYSIS,1),(PEOPLE,2),(THING,2),进而,AI能力预设模块下发对应的调度指令,令任务调度模块将该请求拆分成3个子任务,并根据子任务的预设优先级信息,下发对应待调度任务的任务调度的调用请求,进行任务调度。其中,任务的优先级排序为,优先调度ANALYSIS任务,ANALYSIS任务调度完成获得响应结果后,并发调度PEOPLE任务和THING任务。
示例性地,当确定类别为aiType=1,则表明的人物聚类任务;算力调度***中的原子AI能力预设模块,基于采集到的任务类型信息,返回枚举列表(ANALYSIS,1),(PEOPLE,2),进而,AI能力预设模块下发对应的调度指令,令任务调度模块将该请求拆分成2个子任务,并根据子任务的预设优先级信息,下发对应待调度任务的任务调度的调用请求,进行任务调度。其中,任务的优先级排序为,优先调度ANALYSIS任务,ANALYSIS任务调度完成获得响应结果后,调度PEOPLE任务。
示例性地,当确定类别为aiType=2,则表明的事物聚类任务,算力调度***中的原子AI能力预设模块,基于采集到的任务类型信息,返回枚举列表(ANALYSIS,1),(THING,2),进而,AI能力预设模块下发对应的调度指令,令任务调度模块将该请求拆分成2个子任务,并根据子任务的预设优先级信息,下发对应待调度任务的任务调度的调用请求,进行任务调度。其中,任务的优先级排序为,优先调度ANALYSIS任务,ANALYSIS任务调度完成获得响应结果后,调度THING任务。
示例性地,当确定类别为aiType=3,则表明为特征提取任务,算力调度***中的原子AI能力预设模块,基于采集到的任务类型信息,返回枚举列表(ANALYSIS,1),进而,AI能力预设模块下发对应的调度指令,令任务调度模块将该请求拆分成1个子任务。
可以理解的是,本发明实现了分布式任务调度,可以在AI能力预设模块自定义子任务流程,根据自定义的进行任务拆分和子任务调度,当请求超时,自动进行再调度,保障请求成功率。
S4,响应调用请求,以基于子任务的优先级信息和任务类型进行分层筛选确定执行任务调度的最终服务器。
具体地,本申请响应下发的任务调用请求,基于子任务优先级以及任务类型,然后筛选服务器,并分组,对服务器进行评分,最后通过结合任务类型、调度当前用户和服务器的距离,得到最终能够执行任务的服务器。该分层方案,可以优化调度路径,减少请求排队时间。
具体地,可以根据服务器最后一次上报时间、服务器空闲CPU和内存是否满足使用需求,服务器是否进入内存和CPU压力状态等,对服务器进行筛选,得到可用的服务器集合。
具体地,可以根据服务器CPU剩余核数,剩余内存,剩余磁盘值,为服务器指标向量,与业务需求指标向量做余弦相似度计算,将筛选出的服务器集合中的所有服务器划分为不同的组别。
具体地,对上述一组服务器计算资源空闲率、资源负载、价格指数、响应速度的评分,并得到服务器的总评分,将服务器的总评分结合任务类型、调度当前用户和服务器的距离,得到最终能够执行任务的服务器。
根据本发明实施例的分层算力调度方法,利用算力调度***接收并解析用户算力请求以确定请求类别;根据请求类别确定对应所述用户算力请求的任务类型;基于任务类型将所述用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求;响应调用请求,以基于子任务的优先级信息和任务类型进行分层筛选确定执行任务调度的最终服务器。本发明通过分层方案,优化调度路径,减少请求排队时间。
图2为本发明实施例的另一种分层算力调度方法,如图2所示,该方法,包括:
S210,利用算力调度***接收并解析用户算力请求以确定请求类别。
S220,根据请求类别确定对应用户算力请求的任务类型。
S230,基于任务类型将用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求。
需要说明的是,步骤S210-S230的具体实现方式可以参照上述实施例,在此不进行赘述。
S240,响应调用请求,利用CPU分层算力调度模块筛选所有服务器的最后一次上报时间,判断上报时间是否超时,并将不可达的服务器进行过滤以得到第一服务器集合。
具体地,响应调用请求,利用CPU分层算力调度模块,筛选服务器最后一次上报时间,评估上报时间是否超时(网络是否可达),将不可达的服务器过滤,得到第一服务器集合即可达服务器集R1。
本发明实施例的分层算力调度方法,在服务器预选阶段,不仅考虑服务器本身指标要求,还考虑服务器可达性,提出网络不可达服务器,将不可达的服务器过滤,提高实际应用效率。
S250,判断第一服务器集合中服务器的空闲CPU和内存是否满足使用需求,并将不满足需求的服务器进行过滤以得到第二服务器集合。
具体地,在R1服务器集的基础上,利用***检查服务器空闲CPU和内存是否满足使用需求,将不满足需求的服务器过滤,得到第二服务器集合即服务器集合R2。
S260,判断第二服务器集合中服务器是否进入内存和CPU压力状态,并将内存和CPU使用率超过预设百分比的服务器进行过滤得到目标调度服务器集群,以得到第三服务器集合。
具体地,在服务器集合R2的基础上,检查服务器是否进入内存和CPU压力状态,将内存和CPU使用率超过85%的的服务器过滤,完成过滤后剩余的服务器集群为目标调度服务器集群,得到第三服务器集合即服务器集合R3。
S270,基于余弦相似度和服务器参数对目标调度服务器集群中的服务器进行分组以划分得到不同组别服务器,并对不同组别服务器的服务器参数进行评分以根据评分结果得到第四服务器集合。
在本发明的一个实施例中,基于服务器参数,包括如CPU剩余核数,剩余内存等得到服务器指标向量,并与业务需求指标向量进行余弦相似度计算得到余弦相似度值,对第三服务器集合中的服务器进行排序划分以划分得到不同组别服务器。
首先,对服务器集合R3中的所有服务器根据余弦相似度进行分组,根据服务器参数,将服务器划分为不同的组别。
示例性地,以服务器参数包括服务器CPU剩余核数,剩余内存,剩余磁盘值,为服务器指标向量,与业务需求指标向量做余弦相似度计算,取余弦相似度值正向排序前θ-(30%+/-α)的服务器作为备选服务器,(其中θ,α为0-10%)的随机抖动值),向下取整。以对第三服务器集合中的服务器进行排序划分以划分得到不同组别服务器。则余弦相似度值的公式如下:
进一步地,选择不同组别服务器中的一组服务器,对该组服务器的性能进行详细评估。基于实时上报的服务器参数例如CPU剩余核数,剩余内存,网络,剩余磁盘,服务器价格,最近一小时平均响应时长进行评估评分,根据评分结果确定可用于执行用户任务的服务器,得到第四服务器集合即服务器集合R4。
本发明实施例的分层算力调度方法,优选公式加入资源负载情况,通过资源价格和资源响应时间的考量,可以提高集群资源使用率,并降低整体成本。
具体地,针对服务器参数,资源空闲率进行评分,使用熵权法获取指标权重。假定m个指标,n个节点,其中Ri,j为第i个节点,第j项指标的值(i=1,...n,j=1,...m).其中,j={1,2,3,......m},分别表示CPU剩余核数,剩余内存,剩余磁盘资源指标,rj表示任务所需资源,Tj表示当前服务器资源总数,Uj表示当前服务器使用资源数,ωj表示资源权重,Pi为资源单价,Vm表示有效集群中的每台服务器的平均响应时长/h。假定m个指标,n个节点,其中Ri,j为第i个节点,第j项指标的值(i=1,...n,j=1,...m)
计算第j项指标下第i个节点值占该指标的比重:
第j项指标的熵值:
计算熵冗余度:di=1-ei,i=1,...n
计算出相应指标的权重:
资源空闲率评分:
资源负载评分:
价格指数评分:
响应速率评分:
总评分:
本发明实施例的分层算力调度方法,计算的服务器评分不仅考虑资源空闲率、资源平衡性,同时在提升任务响应的同时,尽可能提高资源使用率;还考虑资源成本,尽可能节约成本;以及考虑响应时间,提升请求响应速度。
S280,基于当前用户和第四服务器集合中服务器的距离得到第五服务器集合,并根据任务类型标签对第五服务器集合中的服务器进行评分排序以根据排序结果匹配任务类型标签得到第六服务器集合,以及根据子任务的优先级信息确定确认执行任务调度的最终服务器。
在本发明的一个实施例中,根据当前用户IP地址确定第五服务器集合中服务器的地理位置,并根据任务类型标签确定当前用户倾向的服务器类型;以按评分对第五服务器集合中的服务器进行倒序排序得到倒序排序结果;匹配任务类型标签以得到服务器匹配结果以得到第六服务器集合,以及输出第六服务器集合中地理位置相近的服务器数量。
首先,根据任务类型,和调度当前用户和第四服务器集合的服务器的距离,最终确认能够执行任务的第五服务器集合即服务器结合R5。
具体地,评估用户和服务器的距离和服务器擅长执行任务的能力,得到符合条件的服务器;再根据用户IP地址确定其地理位置,根据任务类型标签确定倾向服务器类型,如高GPU性能型,高存储容量型,I/O优化型,对R5集群中的服务器按评分倒序排序得到倒序排序结果,根据倒序排序结果依次匹配任务类型标签得到服务器匹配结果,匹配成功后基于服务器匹配结果得到第六服务器集合即集群R6,返回R6中地理位置临近的服务器即确定输出返回的服务器的数量。
进一步地,确定子任务是否由1个服务器执行,如果不是,那么,怎么组合满足条件的服务器执行任务;子任务拆分后独立运行,可并行或合并资源需求选择最优服务器,若请求并发量达到阈值,将在调度层对同类型,IP临近请求进行调度合并,合并其资源需求,进行同一调度。最后,根据请求任务的时间以及服务器执行完。
本发明实施例的分层算力调度方法,实现分层调度,提升了算法服务器的匹配度和使用效率,降低小算力需求算法占用高配置服务器,造成高算力要求任务等待低算力要求任务浪费的场景的发生。
在本发明的一个实施例中,基于上述的实施过程,选取最终需求的服务器。基于接收到任务调度模块的调用请求,通过下述第一阶段预选阶段、第二阶段分层阶段和第三阶段优选阶段,从多个服务器中选择满足实际调度需求的服务器。首先服务器性能满足的要求:CPU需求2核,内存需求8G,磁盘需求100G。
其中,第一阶段预选阶段,CPU分层算力调度模块执行过程包括:1)检查服务器最后一次上报时间是否超时(网络是否可达),将不可达服务器过滤;服务器全部心跳成功2)检查服务器空闲CPU和内存磁盘是否满足使用需求,将不满足需求的服务器过滤,排除服务6;3)检查服务器是否进入内存和CPU压力状态,将内存和CPU使用率超过85%的的服务器过滤,排除服务器5,11,完成过滤后剩余的服务器集群为目标调度服务器集群。
其中,第二阶段分层阶段,CPU分层算力调度模块执行过程包括:以服务器CPU剩余核数,剩余内存,剩余磁盘,为分组指标,进行自动分组,第一组匹配剩余CPU处于(3,4],内存处于(12,16],磁盘处于(150,200],服务器数量为0,第二组匹配剩余CPU处于(3,5],内存处于(12,20],磁盘处于(150,250],服务器数量为0,第三组匹配剩余CPU处于(3,6],内存处于(12,24],磁盘处于(150,300],服务器数量为1,目标服务器集群为[4,10]。
第三阶段优选阶段:
权重计算:
CPU,内存,磁盘的ri分别为2,8,100,分别为(6+6)/2=6,(20+24)/2=22,(300+200)/2=150,求得权重分别为:25%,27%,48%;
服务器4,CPU,内存,磁盘的Ti分别为16,64,900,ui分别为,6,20,300,计算得RScore=6.6;
服务器10,CPU,内存,磁盘的Ti分别为16,64,900,ui分别为,6,24,200,计算得RScore=5.4;
资源负载评分:
服务器4,CPU,内存,磁盘的Ti分别为16,64,900,ui分别为,6,20,300,计算得LScore=9.9;
服务器10,CPU,内存,磁盘的Ti分别为16,64,900,ui分别为,6,24,200,计算得LScore=9.6;
价格指数评分:
服务器4,CPU,内存,磁盘的Pi分别为300,25,0.1,计算得PScore=0;
服务器10,CPU,内存,磁盘的Ti分别为250,25,0.3,计算得PScore=1;
响应速度评分:
服务器4,计算得VScore=(10000-3009)/10000*10=7;
服务器10,计算得VScore=(10000-10000)/10000*10=0;
总评分:
服务器4,计算得Score=(6.6+9.9+0+7)/4=5.9;
服务器10,计算得Score=(5.4+9.6+1+0)/4=4;
选取服务器4为任务执行β目标服务器。
由此,通过分层方案优化调度路径,减少请求排队时间,并通过分层筛选得到最终的服务器,可避免低配置要求任务占用高配置服务器,造成高配置要求任务阻塞的情况,还可以有效避免高算力要求算法等待等算力浪费的场景的发生,并对资源的使用情况进行高度精细化。
本发明实施例的分层算力调度方法,实现了分布式任务调度,可以在AI能力预设模块自定义子任务流程,根据自定义的进行任务拆分和子任务调度,当请求超时,自动进行再调度,保障请求成功率。同时实现分层调度,提升了算法服务器的匹配度和使用效率,降低小算力需求算法占用高配置服务器,造成高算力要求任务等待低算力要求任务浪费的场景的发生。以及考虑资源空闲率和资源负载情况全面衡量资源利用率,资源价格降低资源整体成本,响应速度综合衡量当前服务器性能。
为了实现上述实施例,如图3所示,本实施例中还提供了分层算力调度***10,该***10包括,请求类别确定模块100、任务类型确定模块200、调用请求下发模块300和任务调度执行模块400。
请求类别确定模块100,用于利用算力调度***接收并解析用户算力请求以确定请求类别;
任务类型确定模块200,用于根据请求类别确定对应用户算力请求的任务类型;
调用请求下发模块300,用于基于任务类型将用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求;
任务调度执行模块400,用于响应调用请求,以基于子任务的优先级信息和任务类型进行分层筛选确定执行任务调度的最终服务器。
进一步地,任务类型,包括聚类任务、人物聚类任务、事物聚类任务和特征提取任务;所述算力调度***,包括原子AI能力预设模块、任务调度模块和CPU分层算力调度模块中的多种。
进一步地,如图4所示,调用请求下发模块300,包括:
调度指令下发单元301,用于基于任务类型信息以利用原子AI能力预设模块确定多个待调度任务,并下发对应所述多个待调度任务的调度指令;
调用请求下发单元302,用于响应调度指令,利用所述任务调度模块将用户算力请求拆分成对应的子任务,并根据子任务的预设的优先级信息向所述CPU分层算力调度模块下发多个待调度任务的任务调度的调用请求。
进一步地,如图5所示,任务调度执行模块400,还用于响应调用请求,以利用CPU分层算力调度模块判断服务器参数是否满足预设要求,以根据判断结果对所有服务器进行筛选得到目标调度服务器集群,包括:
第一服务器集群确定单元401,用于利用所述CPU分层算力调度模块筛选所有服务器的最后一次上报时间,判断上报时间是否超时,并将不可达的服务器进行过滤以得到第一服务器集合;
第二服务器集群确定单元402,用于判断所述第一服务器集合中服务器的空闲CPU和内存是否满足使用需求,并将不满足需求的服务器进行过滤以得到第二服务器集合;
第三服务器集群确定单元403,用于判断第二服务器集合中服务器是否进入内存和CPU压力状态,并将内存和CPU使用率超过预设百分比的服务器进行过滤得到目标调度服务器集群,以得到第三服务器集合。
进一步地,如图6所示,任务调度执行模块400,还包括:
第四服务器集群确定单元404,用于基于余弦相似度和服务器参数对目标调度服务器集群中的服务器进行分组以划分得到不同组别服务器,并对所述不同组别服务器的服务器参数进行评分以根据评分结果得到第四服务器集合;
最终服务器集群确定单元405,用于基于当前用户和第四服务器集合中服务器的距离得到第五服务器集合,并根据任务类型标签对第五服务器集合中的服务器进行评分排序以根据排序结果匹配任务类型标签得到第六服务器集合,以及根据子任务的优先级信息确定确认执行任务调度的最终服务器。
进一步地,上述最终服务器集群确定单元405,还用于:
根据当前用户IP地址确定第五服务器集合中服务器的地理位置,并根据任务类型标签确定当前用户倾向的服务器类型;
根据倾向的服务器类型以按评分对第五服务器集合中的服务器进行倒序排序得到倒序排序结果;
根据所述倒序排序结果匹配任务类型标签以得到服务器匹配结果,并基于所述服务器匹配结果得到第六服务器集合,以及输出第六服务器集合中所述地理位置相近的服务器数量。
进一步地,上述第四服务器集群确定单元404,还用于:
基于服务器参数得到服务器指标向量,并将服务器指标向量与业务需求指标向量进行余弦相似度计算得到余弦相似度值;
基于余弦相似度值对所述第三服务器集合中的服务器进行排序划分以划分得到不同组别服务器。
本发明实施例的分层算力调度***,实现了分布式任务调度,可以在AI能力预设模块自定义子任务流程,根据自定义的进行任务拆分和子任务调度,当请求超时,自动进行再调度,保障请求成功率。同时实现分层调度,提升了算法服务器的匹配度和使用效率,降低小算力需求算法占用高配置服务器,造成高算力要求任务等待低算力要求任务浪费的场景的发生。以及考虑资源空闲率和资源负载情况全面衡量资源利用率,资源价格降低资源整体成本,响应速度综合衡量当前服务器性能。
为了实现上述实施例的方法,本发明还提供了一种计算机设备,如图7所示,该计算机设备600包括存储器601、处理器602;其中,所述处理器602通过读取所述存储器601中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现上文所述方法的各个步骤。
为了实现上述实施例,本申请还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现如前述实施例所述的方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
Claims (16)
1.一种分层算力调度方法,其特征在于,所述方法包括:
利用算力调度***接收并解析用户算力请求以确定请求类别;
根据所述请求类别确定对应所述用户算力请求的任务类型;
基于所述任务类型将所述用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求;
响应所述调用请求,以基于所述子任务的优先级信息和所述任务类型进行分层筛选确定执行任务调度的最终服务器。
2.根据权利要求1所述的方法,其特征在于,所述任务类型,包括聚类任务、人物聚类任务、事物聚类任务和特征提取任务;所述算力调度***,包括原子AI能力预设模块、任务调度模块和CPU分层算力调度模块中的多种。
3.根据权利要求2所述的方法,其特征在于,基于所述任务类型将所述用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求,包括:
基于任务类型信息以利用所述原子AI能力预设模块确定多个待调度任务,并下发对应所述多个待调度任务的调度指令;
响应所述调度指令,利用所述任务调度模块将用户算力请求拆分成对应的子任务,并根据子任务的预设的优先级信息向所述CPU分层算力调度模块下发所述多个待调度任务的任务调度的调用请求。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:响应所述调用请求,以利用所述CPU分层算力调度模块判断服务器参数是否满足预设要求,以根据判断结果对所有服务器进行筛选得到目标调度服务器集群,包括:
利用所述CPU分层算力调度模块筛选所有服务器的最后一次上报时间,判断上报时间是否超时,并将不可达的服务器进行过滤以得到第一服务器集合;
判断所述第一服务器集合中服务器的空闲CPU和内存是否满足使用需求,并将不满足需求的服务器进行过滤以得到第二服务器集合;
判断第二服务器集合中服务器是否进入内存和CPU压力状态,并将内存和CPU使用率超过预设百分比的服务器进行过滤得到目标调度服务器集群,以得到第三服务器集合。
5.根据权利要求4所述的方法,其特征在于,基于所述子任务的优先级信息和所述任务类型进行分层筛选确定执行任务调度的最终服务器,包括:
基于余弦相似度和服务器参数对目标调度服务器集群中的服务器进行分组以划分得到不同组别服务器,并对所述不同组别服务器的服务器参数进行评分以根据评分结果得到第四服务器集合;
基于当前用户和第四服务器集合中服务器的距离得到第五服务器集合,并根据任务类型标签对第五服务器集合中的服务器进行评分排序以根据排序结果匹配任务类型标签得到第六服务器集合,以及根据子任务的优先级信息确定确认执行任务调度的最终服务器。
6.根据权利要求5所述的方法,其特征在于,根据任务类型标签对第五服务器集合中的服务器进行评分排序以根据排序结果匹配任务类型标得到第六服务器集合,包括:
根据当前用户IP地址确定第五服务器集合中服务器的地理位置,并根据任务类型标签确定当前用户倾向的服务器类型;
根据倾向的服务器类型以按评分对第五服务器集合中的服务器进行倒序排序得到倒序排序结果;
根据所述倒序排序结果匹配任务类型标签以得到服务器匹配结果,并基于所述服务器匹配结果得到第六服务器集合,以及输出第六服务器集合中所述地理位置相近的服务器数量。
7.根据权利要求5所述的方法,其特征在于,基于余弦相似度和服务器参数对目标调度服务器集群中的服务器进行分组以划分得到不同组别服务器,包括:
基于服务器参数得到服务器指标向量,并将所述服务器指标向量与业务需求指标向量进行余弦相似度计算得到余弦相似度值;
基于所述余弦相似度值对所述第三服务器集合中的服务器进行排序划分以划分得到不同组别服务器。
8.一种分层算力调度***,其特征在于,包括:
请求类别确定模块,用于利用算力调度***接收并解析用户算力请求以确定请求类别;
任务类型确定模块,用于根据所述请求类别确定对应所述用户算力请求的任务类型;
调用请求下发模块,用于基于所述任务类型将所述用户算力请求拆分为若干个子任务,并根据子任务的优先级信息下发任务调度的调用请求;
任务调度执行模块,用于响应所述调用请求,以基于所述子任务的优先级信息和所述任务类型进行分层筛选确定执行任务调度的最终服务器。
9.根据权利要求8所述的***,其特征在于,所述任务类型,包括聚类任务、人物聚类任务、事物聚类任务和特征提取任务;所述算力调度***,包括原子AI能力预设模块、任务调度模块和CPU分层算力调度模块中的多种。
10.根据权利要求9所述的***,其特征在于,所述调用请求下发模块,包括:
调度指令下发单元,用于基于任务类型信息以利用所述原子AI能力预设模块确定多个待调度任务,并下发对应所述多个待调度任务的调度指令;
调用请求下发单元,用于响应所述调度指令,利用所述任务调度模块将用户算力请求拆分成对应的子任务,并根据子任务的预设的优先级信息向所述CPU分层算力调度模块下发所述多个待调度任务的任务调度的调用请求。
11.根据权利要求10所述的***,其特征在于,所述任务调度执行模块,还用于响应所述调用请求,以利用所述CPU分层算力调度模块判断服务器参数是否满足预设要求,以根据判断结果对所有服务器进行筛选得到目标调度服务器集群,包括:
第一服务器集群确定单元,用于利用所述CPU分层算力调度模块筛选所有服务器的最后一次上报时间,判断上报时间是否超时,并将不可达的服务器进行过滤以得到第一服务器集合;
第二服务器集群确定单元,用于判断所述第一服务器集合中服务器的空闲CPU和内存是否满足使用需求,并将不满足需求的服务器进行过滤以得到第二服务器集合;
第三服务器集群确定单元,用于判断第二服务器集合中服务器是否进入内存和CPU压力状态,并将内存和CPU使用率超过预设百分比的服务器进行过滤得到目标调度服务器集群,以得到第三服务器集合。
12.根据权利要求11所述的***,其特征在于,所述任务调度执行模块,还包括:
第四服务器集群确定单元,用于基于余弦相似度和服务器参数对目标调度服务器集群中的服务器进行分组以划分得到不同组别服务器,并对所述不同组别服务器的服务器参数进行评分以根据评分结果得到第四服务器集合;
最终服务器集群确定单元,用于基于当前用户和第四服务器集合中服务器的距离得到第五服务器集合,并根据任务类型标签对第五服务器集合中的服务器进行评分排序以根据排序结果匹配任务类型标签得到第六服务器集合,以及根据子任务的优先级信息确定确认执行任务调度的最终服务器。
13.根据权利要求12所述的***,其特征在于,所述最终服务器集群确定单元,还用于:
根据当前用户IP地址确定第五服务器集合中服务器的地理位置,并根据任务类型标签确定当前用户倾向的服务器类型;
根据倾向的服务器类型以按评分对第五服务器集合中的服务器进行倒序排序得到倒序排序结果;
根据所述倒序排序结果匹配任务类型标签以得到服务器匹配结果,并基于所述服务器匹配结果得到第六服务器集合,以及输出第六服务器集合中所述地理位置相近的服务器数量。
14.根据权利要求12所述的***,其特征在于,所述第四服务器集群确定单元,还用于:
基于服务器参数得到服务器指标向量,并将所述服务器指标向量与业务需求指标向量进行余弦相似度计算得到余弦相似度值;
基于所述余弦相似度值对所述第三服务器集合中的服务器进行排序划分以划分得到不同组别服务器。
15.一种计算机设备,其特征在于,包括处理器和存储器;
其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如权利要求1-7中任一项所述的基于分布式任务的分层算力调度方法。
16.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述的基于分布式任务的分层算力调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311696998.9A CN117707763A (zh) | 2023-12-11 | 2023-12-11 | 分层算力调度方法、***、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311696998.9A CN117707763A (zh) | 2023-12-11 | 2023-12-11 | 分层算力调度方法、***、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117707763A true CN117707763A (zh) | 2024-03-15 |
Family
ID=90161714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311696998.9A Pending CN117707763A (zh) | 2023-12-11 | 2023-12-11 | 分层算力调度方法、***、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117707763A (zh) |
-
2023
- 2023-12-11 CN CN202311696998.9A patent/CN117707763A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111427679B (zh) | 面向边缘计算的计算任务调度方法、***、装置 | |
US8392572B2 (en) | Method for scheduling cloud-computing resource and system applying the same | |
US8918792B2 (en) | Workflow monitoring and control system, monitoring and control method, and monitoring and control program | |
CN105487930A (zh) | 一种基于Hadoop的任务优化调度方法 | |
CN103092683A (zh) | 用于数据分析的基于启发式的调度 | |
CN113037877B (zh) | 云边端架构下时空数据及资源调度的优化方法 | |
CN109819047B (zh) | 一种基于激励机制的移动边缘计算资源分配方法 | |
CN103064744B (zh) | 一种基于SLA的面向多层Web应用的资源优化方法 | |
Adabi et al. | Bi-level fuzzy based advanced reservation of Cloud workflow applications on distributed Grid resources | |
CN111614754B (zh) | 面向雾计算的成本效率优化的动态自适应任务调度方法 | |
CN110502321A (zh) | 一种资源调度方法及*** | |
CN114253735B (zh) | 一种任务处理方法、装置及相关设备 | |
CN115421930B (zh) | 任务处理方法、***、装置、设备及计算机可读存储介质 | |
CN114356587A (zh) | 算力任务跨区域调度方法、***及设备 | |
CN112559135A (zh) | 一种基于QoS的容器云资源的调度方法 | |
CN116467076A (zh) | 一种基于集群可用资源的多集群调度方法及*** | |
CN114780244A (zh) | 容器云资源弹性分配方法、装置、计算机设备及介质 | |
Shukla et al. | Fault tolerance based load balancing approach for web resources in cloud environment. | |
CN116932201A (zh) | 一种面向深度学习训练任务的多资源共享调度方法 | |
CN112491742B (zh) | 一种边缘计算终端资源调度方法及装置 | |
CN117707759A (zh) | 一种多租户gpu集群弹性配额调度方法和*** | |
CN117149372A (zh) | 任务调度方法、装置、设备及存储介质 | |
CN116546028A (zh) | 服务请求的处理方法、装置、存储介质及电子设备 | |
CN117707763A (zh) | 分层算力调度方法、***、设备及存储介质 | |
CN115904708A (zh) | 一种ai平台动态加权调度方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |