CN112256420B - 任务分配方法、装置及电子设备 - Google Patents
任务分配方法、装置及电子设备 Download PDFInfo
- Publication number
- CN112256420B CN112256420B CN202011192388.1A CN202011192388A CN112256420B CN 112256420 B CN112256420 B CN 112256420B CN 202011192388 A CN202011192388 A CN 202011192388A CN 112256420 B CN112256420 B CN 112256420B
- Authority
- CN
- China
- Prior art keywords
- task
- node
- nodes
- target
- allocated
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供的任务分配方法、装置及电子设备中,该电子设备在各碎片节点所提供的资源剩余量均小于资源需求量的情况下,只要剩余的资源剩余的总和大于资源需求量时,则对待分配任务进行分配。由于该资源需求量允许在一定范围内调整,因此,对目标节点不会产生过于明显的影响,并且,能够提高对碎片资源利用率。
Description
技术领域
本申请涉及计算机领域,具体而言,涉及一种任务分配方法、装置及电子设备。
背景技术
随着待处理任务的增加,传统集中式架构的计算方式已经不能承担待处理任务增加所带来的算力需求。因此,产生了采用分而治之的思想的分布式架构。基于该分布式架构,将待处理任务分配到不同的计算节点。
然而,待处理任务的资源需求量与计算节点的资源剩余量之间的不匹配,会导致计算节点残留一部分不可以利用的计算资源。当计算节点的数量达到一定程度时,整个分布式架构会呈现剩余的大量计算资源,而不可用的现象。
发明内容
第一方面,本申请实施例提供一种任务分配方法,应用于电子设备,所述方法包括:
获得待分配任务;
将所述待分配任务分配至多个碎片节点中的目标节点,其中,各所述碎片节点的资源剩余量均小于所述待分配任务的资源需求量,所述多个碎片节点各自的资源剩余量的总和大于或者等于所述资源需求量。
在一种可能的实施方式中,所述将所述待分配任务分配至目标节点,包括:
从所述多个碎片节点中选取所述目标节点,其中,所述目标节点的资源剩余量为所述多个碎片节点中的最大值;
将所述待分配任务分配至所述目标节点。
在一种可能的实施方式中,所述将所述待分配任务分配至目标节点,包括:
获取各所述碎片节点的候选因子,其中,针对每个所述碎片节点,所述候选因子表征所述碎片节点中目标任务的任务完成率,所述目标任务表征所述碎片节点中任务完成率最大的已分配任务;
从所述候选因子中确定出最大的目标候选因子;
将所述目标候选因子对应的碎片节点,作为所述目标节点;
将所述待分配任务分配至所述目标节点。
在一种可能的实施方式中,所述获取各所述碎片节点的候选因子,包括:
针对每个所述碎片节点,获取所述碎片节点中已分配任务的运行时长以及任务类型;
针对每个所述已分配任务,计算所述已分配任务的运行时间与所述已分配任务的任务类型对应的时长阈值之间的比值;
从各所述已分配任务对应的比值中,选取最大的比值作为所述碎片节点的候选因子。
在一种可能的实施方式中,所述将所述待分配任务分配至目标节点之前,所述方法还包括:
获取所述待分配任务中的待处理数据;
降低所述待处理数据的数据维度。
在一种可能的实施方式中,所述将所述待分配任务分配至目标节点之前,所述方法包括:
获取多个待匹配节点的资源剩余量,以及所述待分配任务的资源需求量;
判断所述待匹配节点各自的资源剩余量的总和是否大于或者等于所述资源需求量;
若所述总和大于或者等于所述资源需求量,则判断所述待匹配节点中是否存在冗余节点,其中,所述冗余节点的资源剩余量大于或者等于所述资源需求量;
若存在所述冗余节点,则将所述待匹配节点分配至所述冗余节点;
若不存在所述冗余节点,则将所述多个待匹配节点作为所述多个碎片节点。
第二方面,本申请实施例提供一种任务分配装置,所述任务分配装置包括:
获取模块,用于获得待分配任务;
处理模块,用于将所述待分配任务分配至多个碎片节点中的目标节点,其中,各所述碎片节点的资源剩余量均小于所述待分配任务的资源需求量,所述多个碎片节点各自的资源剩余量的总和大于或者等于所述资源需求量。
在一种可能的实施方式中,所述处理模块,具体用于:
获取各所述碎片节点的候选因子,其中,针对每个所述碎片节点,所述候选因子表征所述碎片节点中目标任务的任务完成率,所述目标任务表征所述碎片节点中任务完成率最大的已分配任务;
从所述候选因子中确定出最大的目标候选因子;
将所述目标候选因子对应的碎片节点,作为所述目标节点;
将所述待分配任务分配至所述目标节点。
第三方面,本申请实施例提供一种电子设备,所述电子设备包括处理器以及存储器,所述存储器存储有计算机可执行指令,所述计算机可执行指令被所述处理器执行时,实现所述的任务分配方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,实现所述的任务分配方法。
相对于现有技术而言,本申请具有以下有益效果:
本申请实施例提供的任务分配方法、装置及电子设备中,该电子设备在各碎片节点所提供的资源剩余量均小于资源需求量的情况下,只要剩余的资源剩余的总和大于资源需求量时,则对待分配任务进行分配。由于该资源需求量允许在一定范围内调整,因此,对目标节点不会产生过于明显的影响,并且,能够提高对碎片资源利用率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的场景示意图;
图2为本申请实施例提供的电子设备的结构是意图;
图3为本申请实施例提供的任务分配方法的流程示意图之一;
图4为本申请实施例提供的任务分配方法的流程示意图之二;
图5为本申请实施例提供的任务分配方法的流程示意图之三;
图6为本申请实施例提供的任务分配方法的流程示意图之四;
图7为本申请实施例提供的任务分配装置的结构示意图。
图标:100-电子设备;200-碎片节点;300-客户端;1101-获取模块;1102-处理模块;110-任务分配装置;120-存储器;130-处理器;140-通信装置。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
相关技术中,产生了采用分而治之的思想的分布式架构。基于该分布式架构,将待处理任务分配到不同的计算节点。
然而,待处理任务的资源需求量与计算节点的资源剩余量之间的不匹配,会导致计算节点残留一部分不可以利用的计算资源。当计算节点的数量达到一定程度时,整个分布式架构会呈现剩余的大量计算资源,而不可用的现象。
鉴于此,本申请实施例提供一种应用于电子设备的任务分配方法。通过该任务分配方法,该电子设备在剩余资源总量大于资源需求量时,达到提高碎片资源利用率的目的。
应理解的是,待分配任务的资源需求量是一经验值。作为一种可能的实施方式,该资源需求量是通过单一的数值,表征计算机中CPU使用率、内存使用率、GPU使用率以及硬盘使用率等资源。例如,资源需求量为1,其代表该待分配任务在运行时,需要占用10%的CPU资源、20%的内存资源、10%的GPU资源以及15%的硬盘资源。经发明人研究发现,由于该资源需求量是一经验值,允许在一定范围内调整,因此,将待分配任务分配至剩余资源欠佳的碎片节点,并不会对碎片节点产生过于明显的影响。
需要说明的是,上述将待分配任务分配至剩余资源欠佳的碎片节点,并不会对碎片节点产生过于明显的影响的发现是在发明人做出了创造性的研究后得出的,因此,基于上述发现,用于解决上述技术问题的手段均因视为对本申请创造性的贡献。
其中,该电子设备可以是,但不限于,服务器以及个人电脑等。如图1所示,该电子设备100与客户端300以及多个碎片节点200通信连接,从客户端300接收待分配任务,并将待分配任务分配至多个碎片节点200中的目标节点。
以视频分析为例,该客户端300可以是图像采集装置。本申请实施例所提供的任务分配方法不仅限于视频分析,还可以是其他应用场景。相应的,该客户端300根据应用场景的变化,可以适应性变化。
关于图1中的电子设备100,作为一种可能的实施方式,请参照图2,该电子设备100包括任务分配装置110、存储器120、处理器130以通信装置140。
该存储器120、处理器130以及通信装置140各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。该任务分配装置110包括至少一个可以软件或固件(Firmware)的形式存储于存储器120中或固化在电子设备100的操作系统(Operating System,OS)中的软件功能模块。处理器130用于执行存储器120中存储的可执行模块,例如任务分配装置110所包括的软件功能模块及计算机程序等。其中,任务分配装置110对应的计算机可执行指令被处理器执行时,实现该任务分配方法。
其中,该存储器120可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器120用于存储程序,该处理器130在接收到执行指令后,执行该程序。该通信装置140用于通过网络建立电子设备100与碎片节点以及客户端之间的通信连接,并用于通过网络收发数据。
该处理器130可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
请参照图3,为本申请实施例提供的该任务分配方法的流程示意图,以下将对该方法包括各个步骤进行详细阐述。
步骤S100,获得待分配任务。
步骤S108,将待分配任务分配至多个碎片节点中的目标节点。
其中,各碎片节点的资源剩余量均小于待分配任务的资源需求量,多个碎片节点各自的资源剩余量的总和大于或者等于资源需求量。
本申请实施例中,正是考虑到该资源需求量是通过单一的数值,表征计算机中CPU使用率、内存使用率以及硬盘使用率等资源。由于该资源需求量允许在一定范围内调整,因此,对目标节点不会产生过于明显的影响。
由于,在各碎片节点所提供的资源剩余量均小于资源需求量的情况下,只要剩余的资源剩余的总和大于资源需求量时,则对待分配任务进行分配。因此,能够提高对碎片资源利用率。
针对该任务分配方法的上述步骤,下面提供一种可能的示例进行说明。现有5个碎片节点,分别的资源剩余量为2、1、2、3、1。待分配任务的资源需求量为5。上述5个碎片节点的资源剩余总量为9。即对于用户而言,用户所能感知到的资源剩余量大于资源需求量。
虽然,5个碎片节点中,每个碎片的资源剩余量均不满足待分配任务的资源需求量,但考虑到该资源需求量允许在一定范围内调整,因此,将待分配任务分配至其中一个目标节点,并不会给目标节点带来过于明显的影响,同时,能够提高对碎片资源的利用率。
其中,请参照图4,该电子设备在选取目标节点时,作为一种可能的实现方式,上述步骤S108,包括:
步骤S108-1A,从多个碎片节点中选取目标节点。
其中,目标节点的资源剩余量为多个碎片节点中的最大值。
步骤S108-2A,将待分配任务分配至目标节点。
通过该任务分配方法的上述步骤,该电子设备所选取的目标节点的资源剩余量,为所有碎片节点中的最大值。因此,相较于其他碎片节点,该目标节点能够为待分配任务提供更好的运行环境。
例如,下面提供一种可能的示例,对上述步骤进行示例性说明。现有5个碎片节点,其提供的资源剩余量分别为2、3、1、2、1。待分配任务的资源需求量为5。该电子设备将碎片节点的资源剩余量进行按照递减的顺序排序,得到3、2、2、1、1;并选取第一个资源剩余量3对应的碎片节点作为目标节点;将待分配认为分配至该目标节点。
请参照图5,该电子设备在选取目标节点时,作为另外一种可能的实现方式,上述步骤S108,包括:
步骤S108-1B,获取各碎片节点的候选因子。
其中,针对每个碎片节点,候选因子表征碎片节点中目标任务的任务完成率,目标任务表征碎片节点中任务完成率最大的已分配任务。
步骤S108-2B,从候选因子中确定出最大的目标候选因子。
步骤S108-3B,将目标候选因子对应的碎片节点,作为目标节点。
步骤S108-4B,将待分配任务分配至目标节点。
通过该任务分配方法的上述步骤,该电子设备所确定出的目标节点中的目标任务,为所有已分配任务中任务完成率最高的任务。由于该目标节点中的目标任务的任务完成率最高,则意味着该目标节点中的目标任务剩余的运行时间最短。因此,该电子设备将待分配任务分配至该目标节点,该目标节点能够在最短的时间内,空闲出更多的计算资源,因此,将待分配任务分配至该目标节点,有利于待分配任务的正常运行。
考虑到不同类型的任务,需要不同的运行时间。因此,本申请实施例中,针对不同类型的任务,分别设置对应的时长阈值。其中,该时长阈值表征对应类型的已分配任务,所需要的最大完成时间。
因此,作为一种可能的实施方式,步骤S-1B包括:
步骤S108-1B-1,针对每个碎片节点,获取碎片节点中已分配任务的运行时长以及任务类型。
步骤S108-1B-2,针对每个已分配任务,计算已分配任务的运行时间与已分配任务的任务类型对应的时长阈值之间的比值。
步骤S108-1B-3,从各已分配任务对应的比值中,选取最大的比值作为碎片节点的候选因子。
因此,通过该任务分配方法的上述步骤,该电子设备通过每个已分配任务的运行时长与所属任务类型对应的时长阈值之间比值,作为衡量任务完成率的标准。即该比值越大,该已分配任务的任务完成率越高。
并且,针对每个碎片节点,将该碎片节点已分配任务中,挑选最大的比值作为该节点的候选因子。
当然,本申请实施例还可以通过其他方式,用于衡量一个已分配任务的任务完成率,因此,本申请实施例不做具体的限定。
下面以视频分析场景为例,对上述将运行时长与时长阈值的比值作为候选因子的方式,进行示例性说明。
目前,在视频分析领域,常用的硬件为英伟达公司的T4显卡以及P4显卡。将T4显卡的处理能力量化为16,将P4显卡的处理能力量化为8。针对不同分辨率的视频,对其需要的算力依据经验进行量化。具体为,1080P的视频,所需要的算力为4;720P的视频,所需要的算力为2;480P的视频,所需要的算力为1。
并且,1080P的视频、720P的视频以及480P的视频,由于对应的数据量依次减少,因此,在分析处理时,需要的时长同样依次减少。
考虑到时长阈值的合理性,可以获取大量1080P的视频的完成时间,选取其中的最大时长或者平均时长,作为时长阈值。同理,720P的视频以及480P的视频的时长阈值,可以基于相同的方式获取。
针对每个碎片节点上所运行的已分配任务,该电子设备根据每个已分配任务所处理视频的分辨率,确定其对应的时长阈值;并根据每个待分配任务已经运行的时长,获得每个待分配任务的任务完成率。
当然,本申请实施例中,还考虑到碎片节点所体用的资源剩余量小于待分配认为的资源需求量。因此,为例使得待分配任务能够更好的在碎片节点上运行。请参照图6,在步骤S108之前,该任务分配方法还包括:
步骤S106,获取待分配任务中的待处理数据。
步骤S107,降低待处理数据的数据维度。
通过该任务分配方法的上述步骤,将降低维数据维度后的待处理任务,分配至目标节点,能够达到缓解目标节点资源剩余量欠佳,所带来的算力不足的问题。
针对该任务分配方法的上述步骤,下面以视频分析处理为例,进行示例性说明。现有待处理任务,所要处理的任务为1080P的视频数据。其中,针对1080P的视频数据,所需要的计算资源为3。然而,该待处理任务所分配的目标节点,当前的资源剩余量为2。因此,为了该待分配任务能够在目标节点上更好的运行,该电子设备将1080P的视频数据转换成720P的视频数据。
相较于每个碎片节点的资源剩余量,难以满足代分配任务的资源需求量。当存在满足资源需求量的待匹配节点时,该电子设备将待分配任务优先分配至满足资源需求量的待匹配节点。因此,请参照图6,在步骤S之前,该任务分配方法还包括:
步骤S101,获取多个待匹配节点的资源剩余量,以及待分配任务的资源需求量。
步骤S102,判断待匹配节点各自的资源剩余量的总和是否大于或者等于资源需求量。
步骤S103,若总和大于或者等于资源需求量,则判断待匹配节点中是否存在冗余节点,其中,冗余节点的资源剩余量大于或者等于资源需求量。
步骤S104,若存在冗余节点,则将待匹配节点分配至冗余节点。
步骤S105,若不存在冗余节点,则将多个待匹配节点作为多个碎片节点。
通过该任务分配方法的上述步骤,该电子设备先确定当前所有的资源剩余量是否满足待分配任务的资源需求量;当满足的情况下,查待匹配节点中,是否存在冗余节点;当存在冗余节点时,则将待分配任务分配至冗余节点。因此,该电子设备通过先分配冗余节点的方式,优先将待分配任务分配至计算资源冗余的节点,确保待分配任务能够有在充足计算资源的环境下运行。
为了减少碎片资源的产生,该电子设备在选取冗余节点时,优先选取资源剩余量等于资源需求量的冗余节点。
例如,在一种可能的示例中,多个待匹配节点的资源剩余量,分别为2、3、4、1、2以及4。待分配任务的资源需求量为3。其中,满足资源需求量的冗余节点有3个。为了避免碎片资源的产生,该电子设备优先将待分配任务分配至资源剩余量为3的冗余节点。
本申请实施例还提供一种任务分配装置,任务分配装置110包括至少一个可以软件形式存储于存储器120中的功能模块。请参照图7,从功能上划分,任务分配装置110可以包括:
获取模块1101,用于获得待分配任务。
在本申请实施例中,该获取模块1101对应的计算机可执行指令被处理器执行时,实现图3中的步骤S100。关于该获取模块1101的详细描述,可以参考步骤S100的详细描述。
处理模块1102,用于将待分配任务分配至多个碎片节点中的目标节点,其中,各碎片节点的资源剩余量均小于待分配任务的资源需求量,多个碎片节点各自的资源剩余量的总和大于或者等于资源需求量。
在本申请实施例中,该处理模块1102对应的计算机可执行指令被处理器执行时,实现图3中的步骤S108。关于该处理模块1102的详细描述,可以参考步骤S108的详细描述。
可选地,作为一种可能的实施方式,该处理模块1102,具体用于:
获取各碎片节点的候选因子,其中,针对每个碎片节点,候选因子表征碎片节点中目标任务的任务完成率,目标任务表征碎片节点中任务完成率最大的已分配任务;
从候选因子中确定出最大的目标候选因子;
将目标候选因子对应的碎片节点,作为目标节点;
将待分配任务分配至目标节点。
可选地,作为另外一种可能的实施方式,该处理模块1102,具体用于:
从多个碎片节点中选取目标节点,其中,目标节点的资源剩余量为多个碎片节点中的最大值;
将待分配任务分配至目标节点。
可选地,该处理模块1102获取候选因子的方式,包括:
针对每个碎片节点,获取碎片节点中已分配任务的运行时长以及任务类型;
针对每个已分配任务,计算已分配任务的运行时间与已分配任务的任务类型对应的时长阈值之间的比值;
从各已分配任务对应的比值中,选取最大的比值作为碎片节点的候选因子。
可选地,在将待分配任务分配至目标节点之前,该处理模块1102还用于:
获取待分配任务中的待处理数据;
降低待处理数据的数据维度。
可选地,在将待分配任务分配至目标节点之前,该处理模块1102还用于:
获取多个待匹配节点的资源剩余量,以及待分配任务的资源需求量;
判断待匹配节点各自的资源剩余量的总和是否大于或者等于资源需求量;
若总和大于或者等于资源需求量,则判断待匹配节点中是否存在冗余节点,其中,冗余节点的资源剩余量大于或者等于资源需求量;
若存在冗余节点,则将待匹配节点分配至冗余节点;
若不存在冗余节点,则将多个待匹配节点作为多个碎片节点。
本申请实施例还提供一种电子设备,电子设备包括处理器以及存储器,存储器存储有计算机可执行指令,计算机可执行指令被处理器执行时,实现的任务分配方法。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,实现的任务分配方法。
综上所述,本申请实施例提供的任务分配方法、装置及电子设备中,该电子设备在各碎片节点所提供的资源剩余量均小于资源需求量的情况下,只要剩余的资源剩余的总和大于资源需求量时,则对待分配任务进行分配。由于该资源需求量允许在一定范围内调整,因此,对目标节点不会产生过于明显的影响,并且,能够提高对碎片资源利用率。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述,仅为本申请的各种实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (7)
1.一种任务分配方法,其特征在于,应用于电子设备,所述方法包括:
获得待分配任务,其中,所述待分配任务对资源需求量是一经验值,允许在一定范围调整;
将所述待分配任务分配至多个碎片节点中的目标节点,其中,各所述碎片节点的资源剩余量均小于所述待分配任务的资源需求量,所述多个碎片节点各自的资源剩余量的总和大于或者等于所述资源需求量,包括:
获取各所述碎片节点的候选因子,其中,针对每个所述碎片节点,所述候选因子表征所述碎片节点中目标任务的任务完成率,所述目标任务表征所述碎片节点中任务完成率最大的已分配任务;
从所述候选因子中确定出最大的目标候选因子;
将所述目标候选因子对应的碎片节点,作为所述目标节点;
将所述待分配任务分配至所述目标节点。
2.根据权利要求1所述的任务分配方法,其特征在于,所述获取各所述碎片节点的候选因子,包括:
针对每个所述碎片节点,获取所述碎片节点中已分配任务的运行时长以及任务类型;
针对每个所述已分配任务,计算所述已分配任务的运行时间与所述已分配任务的任务类型对应的时长阈值之间的比值;
从各所述已分配任务对应的比值中,选取最大的比值作为所述碎片节点的候选因子。
3.根据权利要求1所述的任务分配方法,其特征在于,所述将所述待分配任务分配至多个碎片节点中的目标节点之前,所述方法还包括:
获取所述待分配任务中的待处理数据;
降低所述待处理数据的数据维度。
4.根据权利要求1所述的任务分配方法,其特征在于,所述将所述待分配任务分配至多个碎片节点中的目标节点之前,所述方法包括:
获取多个待匹配节点的资源剩余量,以及所述待分配任务的资源需求量;
判断所述待匹配节点各自的资源剩余量的总和是否大于或者等于所述资源需求量;
若所述总和大于或者等于所述资源需求量,则判断所述待匹配节点中是否存在冗余节点,其中,所述冗余节点的资源剩余量大于或者等于所述资源需求量;
若存在所述冗余节点,则将所述待匹配节点分配至所述冗余节点;
若不存在所述冗余节点,则将所述多个待匹配节点作为所述多个碎片节点。
5.一种任务分配装置,其特征在于,所述任务分配装置包括:
获取模块,用于获得待分配任务,其中,所述待分配任务对资源需求量是一经验值,允许在一定范围调整;
处理模块,用于将所述待分配任务分配至多个碎片节点中的目标节点,其中,各所述碎片节点的资源剩余量均小于所述待分配任务的资源需求量,所述多个碎片节点各自的资源剩余量的总和大于或者等于所述资源需求量,所述处理模块,具体用于:
获取各所述碎片节点的候选因子,其中,针对每个所述碎片节点,所述候选因子表征所述碎片节点中目标任务的任务完成率,所述目标任务表征所述碎片节点中任务完成率最大的已分配任务;
从所述候选因子中确定出最大的目标候选因子;
将所述目标候选因子对应的碎片节点,作为所述目标节点;
将所述待分配任务分配至所述目标节点。
6.一种电子设备,其特征在于,所述电子设备包括处理器以及存储器,所述存储器存储有计算机可执行指令,所述计算机可执行指令被所述处理器执行时,实现权利要求1-4任意一项所述的任务分配方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,实现权利要求1-4任意一项所述的任务分配方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011192388.1A CN112256420B (zh) | 2020-10-30 | 2020-10-30 | 任务分配方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011192388.1A CN112256420B (zh) | 2020-10-30 | 2020-10-30 | 任务分配方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112256420A CN112256420A (zh) | 2021-01-22 |
CN112256420B true CN112256420B (zh) | 2022-12-02 |
Family
ID=74269034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011192388.1A Active CN112256420B (zh) | 2020-10-30 | 2020-10-30 | 任务分配方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112256420B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116225669B (zh) * | 2023-05-08 | 2024-01-09 | 之江实验室 | 一种任务执行方法、装置、存储介质及电子设备 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9311146B2 (en) * | 2013-05-24 | 2016-04-12 | International Business Machines Corporation | Strategic placement of jobs for spatial elasticity in a high-performance computing environment |
CN103699445B (zh) * | 2013-12-19 | 2017-02-15 | 北京奇艺世纪科技有限公司 | 一种任务调度方法、装置及系统 |
CN108268318A (zh) * | 2016-12-30 | 2018-07-10 | 华为技术有限公司 | 一种分布式系统任务分配的方法和装置 |
CN109582447B (zh) * | 2018-10-15 | 2020-09-29 | 中盈优创资讯科技有限公司 | 计算资源分配方法、任务处理方法及装置 |
CN111124593B (zh) * | 2018-10-31 | 2023-07-21 | 中国移动通信有限公司研究院 | 信息处理方法及装置、网元及存储介质 |
US10963282B2 (en) * | 2018-12-11 | 2021-03-30 | Amazon Technologies, Inc. | Computing service with configurable virtualization control levels and accelerated launches |
CN110795234A (zh) * | 2019-09-25 | 2020-02-14 | 苏州浪潮智能科技有限公司 | 一种资源调度方法及装置 |
CN111176846B (zh) * | 2019-12-30 | 2023-06-13 | 云知声智能科技股份有限公司 | 任务分配方法及装置 |
CN111694655B (zh) * | 2020-03-12 | 2023-08-29 | 武汉大学 | 一种面向多任务的边缘计算资源分配方法 |
CN111506423B (zh) * | 2020-04-09 | 2023-06-30 | 网易(杭州)网络有限公司 | 一种资源的调度方法、装置、电子设备及存储介质 |
-
2020
- 2020-10-30 CN CN202011192388.1A patent/CN112256420B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112256420A (zh) | 2021-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108667748B (zh) | 一种控制带宽的方法、装置、设备和存储介质 | |
CN110351375B (zh) | 一种数据处理方法、装置及计算机装置、可读存储介质 | |
CN107205030B (zh) | 服务器资源调度方法及系统 | |
CN112269641B (zh) | 一种调度方法、装置、电子设备及存储介质 | |
CN107819797B (zh) | 访问请求处理方法和装置 | |
CN109960575B (zh) | 一种计算能力共享方法、系统及相关设备 | |
CN110244901B (zh) | 任务分配方法及装置、分布式存储系统 | |
CN110933136A (zh) | 一种服务节点选择方法、装置、设备及可读存储介质 | |
CN112256420B (zh) | 任务分配方法、装置及电子设备 | |
CN110035128B (zh) | 一种直播调度方法、装置、直播系统及存储介质 | |
CN111538572A (zh) | 任务处理方法、装置、调度服务器及介质 | |
CN112398892B (zh) | 服务分配方法、装置及设备 | |
CN111131375B (zh) | 接口服务获取方法、装置、计算机设备及存储介质 | |
CN112860421B (zh) | 用于作业处理的方法、设备和计算机程序产品 | |
CN112463361A (zh) | 一种分布式计算的弹性资源分配的方法和设备 | |
CN110708374B (zh) | 一种边缘节点的分配方法、分配装置及可读存储介质 | |
CN115794396A (zh) | 资源分配的方法、系统和电子设备 | |
CN110046040B (zh) | 分布式任务处理方法及系统和存储介质 | |
CN115080253A (zh) | Gpu任务的分配方法、装置、电子设备和存储介质 | |
CN112770138B (zh) | 解码资源管理方法、装置、解码设备及可读存储介质 | |
CN110278119B (zh) | 边缘节点的资源分配方法、资源分配装置 | |
CN114338690A (zh) | 服务器选择方法、装置及电子设备 | |
CN110083309B (zh) | 共享数据块处理方法、系统及可读存储介质 | |
CN112642154A (zh) | 云游戏控制方法、装置、网络设备及存储介质 | |
CN113535378A (zh) | 一种资源调配方法、存储介质及终端设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |