CN111597040A - 一种资源分配方法、装置、存储介质和电子设备 - Google Patents

一种资源分配方法、装置、存储介质和电子设备 Download PDF

Info

Publication number
CN111597040A
CN111597040A CN202010365726.0A CN202010365726A CN111597040A CN 111597040 A CN111597040 A CN 111597040A CN 202010365726 A CN202010365726 A CN 202010365726A CN 111597040 A CN111597040 A CN 111597040A
Authority
CN
China
Prior art keywords
data
data blocks
data block
resource allocation
information
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.)
Granted
Application number
CN202010365726.0A
Other languages
English (en)
Other versions
CN111597040B (zh
Inventor
吕静雅
王洋
须成忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Institute of Advanced Technology of CAS
Original Assignee
Shenzhen Institute of Advanced Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Institute of Advanced Technology of CAS filed Critical Shenzhen Institute of Advanced Technology of CAS
Priority to CN202010365726.0A priority Critical patent/CN111597040B/zh
Publication of CN111597040A publication Critical patent/CN111597040A/zh
Priority to PCT/CN2020/139755 priority patent/WO2021218208A1/zh
Application granted granted Critical
Publication of CN111597040B publication Critical patent/CN111597040B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Abstract

本申请适用于计算机技术领域,提供了一种资源分配方法、装置、存储介质和电子设备,包括:获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,M≥1,M为整数;根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级;基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配。本申请可提高并行处理过程中资源分配的有效性,加快响应速度。

Description

一种资源分配方法、装置、存储介质和电子设备
技术领域
本申请属于计算机技术领域,尤其涉及一种资源分配方法、装置、存储介质和电子设备。
背景技术
随着科技的发展,信息时代到来,大数据时代也随之而来。大数据的爆炸式增长使得对计算设备的要求越来越高。在处理大型数据集时,计算设备的内存压力也越来越大,如何将有限的缓存资源进行有效的分配,是当前需要解决的问题。
现有技术中,常用的缓存分配策略包括最近最少使用(Least Recently Used,LRU)策略、最近最久未使用(least frequently used,LFU)策略等。LRU策略与LFU策略的都是优先为最近被使用的数据分配缓存资源,这就导致,在可分配资源有限的情况下,有些最近未被使用但也确实需要缓存资源的数据可能无法得到资源分配,例如突发性任务或者周期性任务。现有的缓存分配方式不适用于偶然和定期处理的数据,在并行处理过程中缓存资源分配的有效性不高,易导致响应不及时。
发明内容
本申请实施例提供了一种资源分配方法、装置、存储介质和电子设备,可以解决现有的缓存分配方式不适用于偶然和定期处理的数据,在并行处理过程中缓存资源分配的有效性不高,易导致响应不及时的问题。
第一方面,本申请实施例提供了一种资源分配方法,包括:
获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,M≥1,M为整数;
根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级;
基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配。
在第一方面的一种可能的实现方式中,所述根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级的步骤,包括:
针对所述M个数据块中的每一数据块,根据所述数据块的子数据块信息,确定所述数据块的处理路径,并根据所述数据块的处理路径确定处理所述数据块的开销值;
根据所述M个数据块的开销值,确定所述M个数据块的资源分配优先级。
在第一方面的一种可能的实现方式中,所述根据各个数据块的资源分配优先级进行资源分配的步骤,包括:
获取当前可分配的资源上限值;
根据当前可分配的资源上限值,按所述资源分配优先级从高到低依次为所述M个数据块分配资源。
在第一方面的一种可能的实现方式中,所述M个数据块中存在N个数据块已分配资源,所述资源分配方法还包括:
根据所述N个数据块的子数据块信息,分别确定所述N个数据块的后继依赖信息,每个所述数据块的后继依赖信息用于描述所述数据块被所述数据块的子数据块访问的次数;
根据所述N个数据块的后继依赖信息,确定所述N个数据块的资源释放优先级;
根据所述N个数据块的资源释放优先级,释放所述N个数据块所占用的资源。
在第一方面的一种可能的实现方式中,所述M个数据块中存在N个数据块已分配资源,所述资源分配方法还包括:
根据所述N个数据块的子数据块信息,分别确定所述N个数据块的后继依赖信息,每个所述数据块的后继依赖信息用于描述所述数据块被所述数据块的子数据块访问的次数;
根据所述N个数据块的后继依赖信息与所述N个数据块的资源分配优先级,确定所述N个数据块的资源释放优先级;
根据所述N个数据块的资源释放优先级,释放所述N个数据块所占用的资源。
在第一方面的一种可能的实现方式中,所述数据处理任务携带任务类型标识,所述获取与所述数据处理任务中的M个数据块分别关联的子数据块信息的步骤,包括:
根据所述任务类型标识,确定所述数据处理任务的任务类型;
若所述数据处理任务的任务类型为周期任务,则获取所述数据处理任务对应的历史日志;
从所述历史日志中提取与所述数据处理任务中的M个数据块分别关联的子数据块信息。
第二方面,本申请实施例提供了一种资源分配装置,包括:
第一信息获取单元,用于获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,M≥1,M为整数;
分配优先级确定单元,用于根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级;
资源分配单元,用于基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配。
第三方面,本申请实施例提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的资源分配方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的资源分配方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行如上述第一方面所述的资源分配方法。
本申请实施例中,通过获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,然后根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级,可使得资源分配优先级的确定更为准确有效,再基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配,提高资源分配的有效性,进而加快响应速度,同时,增强资源分配的适用性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的资源分配方法的实现流程图;
图1.1是本申请实施例提供的资源分配方法中数据块及其关联子数据块的场景示意图;
图2是本申请实施例提供的资源分配方法中获取数据块关联的子数据块信息的具体实现流程图;
图3是本申请实施例提供的资源分配方法S102的具体实现流程图;
图3.1是本申请实施例提供的资源分配方法中有向无环图的结构示意图;
图3.2是本申请实施例提供的资源分配方法中确定数据块处理路径的场景示意图;
图4是本申请实施例提供的包括资源释放的资源分配方法的一种实现流程图;
图5是本申请实施例提供的包括资源释放的资源分配方法的另一种实现流程图;
图5.1是本申请实施例提供的资源分配方法的应用场景示意图;
图6是本申请实施例提供的资源分配装置的结构框图;
图7是本申请另一实施例提供的资源分配装置的结构框图;
图8是本申请实施例提供的电子设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例提供了一种资源分配方法适用于需要执行资源分配的各种类型的终端设备或者服务器,具体可以包括手机、平板电脑、可穿戴设备、笔记本电脑、车载设备、增强现实(AR)设备,虚拟现实(VR)设备、个人数字助理(Personal Digital Assistant,PDA)、数字电视等电子设备。
本发明实施例为了能够在数据并行处理过程中提高资源分配的有效性,通过获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,然后根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级,可使得资源分配优先级的确定更为准确有效,再基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配,可提高资源分配的有效性,加快响应速度,同时,增强资源分配的适用性。
下面结合具体实施例对本申请提供的资源分配方法进行示例性的说明。
图1示出了本申请实施例提供的资源分配方法的实现流程,该方法流程可以包括如下步骤S101至S103。
S101:获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,M≥1,M为整数。
在本申请实施例中,所述数据处理任务为并行系统下的电子设备接收的处理任务,所述数据处理任务包括多个数据块,如M个数据块,该M个数据块为待分配资源的数据块,该数据处理任务中的每一数据块存在与该数据块关联的子数据块信息。
在本申请实施例例中,资源的类型包括缓存、处理线程或者令牌,上述数据处理任务中M个数据块需求待分配的可以是缓存、处理线程以及令牌中的一种或者多种,在此不做限定。
在一种可能的实施方式中,数据块关联的子数据块信息包括该处理该数据块涉及的子数据块的数量,以及涉及的子数据块之间的关联关系。如图1.1所示,数据块A关联的子数据块包括子数据块p1、子数据块p2以及数据块r1,数据块K关联的子数据块包括数据块p2。
在一种可能的实施方式中,所述数据处理任务携带资源类型标识,所述资源类型标识用于标识所述数据处理任务中数据块需求的资源。根据所述资源类型标识,确定上述M个数据块待分配的资源的类型。
作为本申请的一个实施例,所述数据处理任务还包括任务类型标识,如图2所示,上述获取与所述数据处理任务中的M个数据块分别关联的子数据块信息的步骤,包括:
A1:根据所述任务类型标识,确定所述数据处理任务的任务类型。
具体地,所述任务类型包括周期任务和非周期任务,所述任务类型标识用于标识数据处理任务为周期任务还是非周期任务。例如,若所述任务类型标识为1,则所述数据处理任务为周期任务,若所述任务类型标识为0,则所述数据处理任务为非周期任务。
A2:若所述数据处理任务的任务类型为周期任务,则获取所述数据处理任务对应的历史日志。所述历史日志包括所述数据处理任务中数据块与子数据块的关联信息。
A3:从所述历史日志中提取与所述数据处理任务中的M个数据块分别关联的子数据块信息。
对于任务类型为周期任务的数据处理任务,由于该数据处理任务是周期执行处理,通过直接查询终端设备如服务器中所述数据处理任务对应的历史日志,即可快速确定所述数据处理任务中的M个数据块分别关联的子数据块信息。
在本申请实施例中,通过所述数据处理任务携带的任务类型标识,确定所述数据处理任务的任务类型,再根据所述数据处理任务的任务类型确定与所述数据处理任务中的M个数据块分别关联的子数据块信息,当任务类型为周期任务时,通过获取数据处理任务对应的历史日志,从历史日志中直接提取与所述数据处理任务中的M个数据块分别关联的子数据块信息,可提高数据块关联的子数据块信息获取的效率。
S102:根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级。
上述资源分配优先级用于指示M个数据块被分配资源的优先顺序。在一种可能的实施方式中,对于上述数据处理任务中的M个数据块,若数据块的资源分配优先级越高,则终端设备为其分配资源的顺序越靠前;若数据块的资源分配优先级越低,则终端设备为其分配资源的顺序越靠后。
作为本申请的一个实施例,图3示出了本申请实施例提供的资源分配方法步骤S102的具体实现流程,详述如下:
B1:针对所述M个数据块中的每一数据块,根据所述数据块的子数据块信息,确定所述数据块的处理路径,并根据所述数据块的处理路径确定处理所述数据块的开销值。
在本申请实施例中,上述处理路径根据处理所述数据块需要的子数据块信息确定。
在一种可能的实施方式中,根据数据块及其关联的子数据块信息,构建有向无环图。有向无环图((Directed acyclic graph,DAG)指的是一个无回路的有向图。所述有向无环图中包括数据块之间的单向连接,通过所述有向无环图可使得数据块之间的关联关系更为清楚明了。示例性地,图3.1为数据块A、数据块K和子数据块C、子数据块E、子数据块G构成的有向无环图,数据块A与子数据块C、子数据块E为单向连接。
基于上述有向无环图,分别确定M个数据块中每一数据块的处理路径,在有向无环图中,处理路径是指有向无环图中以数据块为起点、以最后访问的子数据块为终点的连接路径。如图3.1所示,数据块A的处理路径是指从数据块A到最终访问的子数据块G的连接路径A→C→E→G,数据块K的处理路径是指从数据块K到最终访问的子数据块G的连接路径K→E→G。
在本申请实施例中,数据块的开销值是指从该数据块到最后访问的子数据块的计算成本。具体地,所述开销值可根据所述处理路径中数据块及每一子数据块的输入/输出(Input/Output,I/O)代价值确定,I/O代价值表示数据在磁盘与内存间传递的总体时延。如图3.1所示,分别计算数据块A到子数据块G的各条路径的开销值,以及数据块K到子数据块G的开销值。
在一种可能的实施方式中,针对M个数据块,根据每一数据块及其处理路径中每一子数据块的I/O代价值的加权和,分别确定M个数据块的开销值。
B2:根据所述M个数据块的开销值,确定所述M个数据块的资源分配优先级。
具体地,根据数据块的开销值对应的资源分配优先级,确定该数据块的资源分配优先级。
在一种可能的实施方式中,M个数据块中任一数据块的处理路径的开销值越大,该数据块对应的资源分配优先级越高。具体地,比较M个数据块的处理路径的开销值,确定开销值最大的数据块的资源分配优先级最高。
示例性地,资源分配优先级包括一级、二级以及三级,其中,一级为最高的资源分配优先级,将数据块按开销值从大到小依次排序,将开销值最大的数据块对应的资源分配优先级确定为一级,将开销值最小的数据块对应的资源分配优先级确定为三级,而开销值既不是最大也不是最小的数据块对应的资源分配优先级确定为二级。
在一种可能的实施方式中,同一资源分配优先级对应的数据块不止一个。作为本申请一种可能的实施方式,预设资源优先级对应的开销值阈值区间,每一资源优先级对应一个开销值阈值区间。分别判断M个数据块的开销值对应哪一开销阈值区间,根据数据块的开销值对应的开销值阈值区间,确定该数据块对应的资源分配优先级。
例如,一级对应的开销值阈值区间为[2.5,3],二级对应的开销值阈值区间为[1.5,2.5),三级对应的开销值阈值区间为[0.5,1.5),若数据块A的开销值为2.5,则数据块A对应的资源分配优先级为一级;若数据块B的开销值为1.8,则数据块B对应的资源分配优先级为二级;若数据块C的开销值为0.6,则数据块C对应的资源分配优先级为三级。
在一种可能的实施方式中,同一数据块的处理路径可能不止一条,例如,如图3.2所示,数据块A的处理路径不止一条,第一条处理路径可以是路径A→B→D→F→G,第二条处理路径为A→B→E→G,第三条处理路径为A→C→E→G,第四条处理路径为A→C→G。在该种情形下,确定数据块开销值最大的处理路径为关键路径,并选择关键路径对应的开销值与M个数据块中的其他数据块的开销值进行比较。
在本申请实施例中,上述数据处理任务中的M个数据块最终都需要处理,即M个数据块最终都需要分配资源,优先为开销值最大的数据块分配资源,使得开销值最大的数据块优先获得处理响应,优先保证开销值最大的数据块的处理可有效减少数据处理任务的整体响应时间,从而提高响应速度。
S103:基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配。
在一种可能的实施方式中,预设分配优先级等级阈值,在可分配资源有限时,优先为M个数据块中资源分配优先级达到分配优先级等级阈值的数据块分配资源。
作为本申请的一个实施例,上述步骤S103具体包括:
C1:获取当前可分配的资源上限值。具体地,当前可分配的资源上限值是指系统当前最多可分配的资源数。
C2:根据当前可分配的资源上限值,按所述资源分配优先级从高到低依次为所述M个数据块分配资源。具体地,优先为资源分配优先级高的数据块分配资源,直到分配达到所述当前可分配的资源上限值。
由上可见,本申请实施例中,通过获取数据处理任务中待分配资源的M个数据块,以及M个数据块分别关联的子数据块信息,然后根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级,可使得资源分配优先级的确定更为准确有效,再基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配,提高资源分配的有效性,进而加快响应速度,同时,增强资源分配的适用性。
作为本发明的一个实施例,上述M个数据块中存在N个数据块已分配资源,图4示出了本发明实施例提供的一种包括资源释放的资源分配方法,详述如下:
S201:获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,M≥1,M为整数。
S202:根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级。
S203:基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配。
本实施例中,步骤S201至步骤S203的具体步骤参见上述实施例步骤S101至步骤S103,在此不再赘述。
S204:根据所述N个数据块的子数据块信息,分别确定所述N个数据块的后继依赖信息,每个所述数据块的后继依赖信息用于描述所述数据块被所述数据块的子数据块访问的次数。
如前所述,任一数据块的关联的子数据块是指该数据块的处理需访问的子数据块。在本申请实施例中,基于N个已分配资源的数据块的子数据块信息,分别确定N个数据块的后继依赖信息,也即分别获取该N个数据块被关联的子数据块访问的次数。
S205:根据所述N个数据块的后继依赖信息,确定所述N个数据块的资源释放优先级。
所述资源释放优先级用于标识N个已分配资源的数据块的资源释放顺序。具体地,根据N个数据块后续被子数据块访问的次数信息,确定这N个数据块的资源释放优先级。
在一种实施方式中,数据块的后继依赖信息值越大,即表示该数据块后续被子数据块访问的次数越多,数据块后续被访问的次数越多,其对应的资源释放优先级越低;数据块后续被访问的次数越少,其对应的资源释放优先级越高。
在一种可能的实施方式中,预设后继依赖信息与资源释放优先级的映射关系,根据数据块的后继依赖信息,确定该数据块对应的资源释放优先级。
示例性地,对于已分配资源的数据块A、数据块B以及数据块C,根据后续被子数据块访问的次数分别确定数据块A、数据块B以及数据块C的资源释放优先级。若数据块A后续被子数据块访问的次数为5,其对应的资源释放优先级为三级;数据块B后续被子数据块访问的次数为2,其对应的资源释放优先级为一级;数据块C后续被子数据块访问的次数为4,其对应的资源释放优先级为二级;则数据块A、数据块B以及数据块C的资源释放顺序为数据块B、数据块C以及数据块A。
本申请实施例中,优先释放已分配资源的N个数据块中后续被访问次数少的数据块所占用的资源,从而可避免任务处理出现异常。将后续被访问次数较多的数据块以单流水作业的方式保留其占用的资源。
S206:根据所述N个数据块的资源释放优先级,释放所述N个数据块所占用的资源。
本申请实施例中,将N个数据块按资源优先级排序,优先释放资源释放优先级高的数据块所占用的资源。
作为本发明的一个实施例,上述M个数据块中存在N个数据块已分配资源,图5示出了本发明实施例提供的另一种包括资源释放的资源分配方法,详述如下:
S301:获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,M≥1,M为整数。
S302:根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级。
S303:基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配。
S304:根据所述N个数据块的子数据块信息,分别确定所述N个数据块的后继依赖信息,每个所述数据块的后继依赖信息用于描述所述数据块被所述数据块的子数据块访问的次数。
本实施例中,步骤S301至步骤S304的具体步骤参见上述实施例步骤S201至步骤S204,在此不再赘述。
S305:根据所述N个数据块的后继依赖信息与所述N个数据块的资源分配优先级,确定所述N个数据块的资源释放优先级。
在本申请实施例中,已分配资源的N个数据块的资源释放优先级结合数据块的后继依赖信息与数据块的分配资源优先级确定。
具体地,若数据块的后继依赖信息值越大,且该数据块的资源分配优先级越高,则该数据块对应的资源释放优先级越低;若数据块的后继依赖信息值越小,且该数据块的资源分配优先级越高,则该数据块对应的资源释放优先级越高。
在本申请实施例中,上述资源分配优先级可用于标识数据块开销值,资源分配优先级越高,表示该数据块的开销值相对较大,资源分配优先级越低,表示该数据块的开销值相对越小。通过结合数据块的依赖信息与资源分配优先级来确定该数据块的资源释放优先级,可保证处理响应不受影响。
在一种可能的实施方式中,预先建立后继依赖信息阈值区间、资源分配优先级以及资源释放优先级三者之间的映射关系。根据该三者之间的映射关系,分别确定N个数据块的资源释放优先级。
示例性地,对于已分配资源的数据块A、数据块B以及数据块C,根据后续被子数据块访问的次数以及资源分配优先级分别确定数据块A、数据块B以及数据块C的资源释放优先级。若数据块A后续被子数据块访问的次数为5,其资源分配优先级为一级,则数据块A对应的资源释放优先级为三级;数据块B后续被子数据块访问的次数为2,其资源分配优先级为一级,则数据块B对应的资源释放优先级为二级;数据块C后续被子数据块访问的次数为2,其对应的资源分配优先级为三级,则数据块C其对应的资源释放优先级为一级;则数据块A、数据块B以及数据块C的资源释放顺序为数据块C、数据块B以及数据块A。
S306:根据所述N个数据块的资源释放优先级,释放所述N个数据块所占用的资源。
具体地,将N个数据块按资源释放优先级从高到低排序,依次释放N个数据块所占用的资源。
在一种可能的实施方式中,将N个数据块按资源释放优先级从高到低排序,并根据当前需要的资源数,依次释放L个数据块,L为整数,且L≥1,其中,所述L个数据块占用的资源数之和大于或等于所述当前需要的资源数。
在本申请实施例中,N个数据块的资源释放优先级的确定不仅与数据块的后继依赖信息有关,还与该数据块的资源分配优先级有关。数据块的后继依赖信息的值即便是最低的,若该数据块的资源分配优先级达到一级,则该数据块的资源释放优先级不一定是最高的。
以一个应用场景为例,如图5.1所示,当前占用资源的数据块包括A、B、C、D,图中三角形用于标识数据块的后继依赖信息,也即数据块后续被访问的次数信息,三角形越大,后续被访问的次数越多。在本应用场景中,数据块D后续被访问的次数最小,数据块D对应的资源释放优先级最高,数据块A、数据块B、数据块C、数据块D按资源释放优先级从高到低的排序为数据块D、数据块C、数据块B、数据块A,应优先释放数据块D占用的资源。然而,由于数据块D的资源分配优先级为一级,数据块D的处理路径为关键路径,数据块C的资源分配优先级为二级,保留数据块D占用的资源,优先释放资源释放优先级次高的数据块C占用的资源。
由上可见,在本申请实施例中,通过获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,然后根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级,可使得资源分配优先级的确定更为准确有效,再基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配,提高资源分配的有效性,进而加快响应速度,同时,增强资源分配的适用性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的资源分配方法,图6示出了本申请实施例提供的资源分配装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图6,该资源分配装置包括:第一信息获取单元61、分配优先级确定单元62,资源分配单元62,其中:
第一信息获取单元61,用于获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,M≥1,M为整数;
分配优先级确定单元62,用于根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级;
资源分配单元63,用于基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配。
在一种可能的实施方式中,所述数据处理任务携带任务类型标识,所述第一信息获取单元61包括:
任务类型确定模块,用于根据所述任务类型标识,确定所述数据处理任务的任务类型;
历史日志获取模块,用于若所述数据处理任务的任务类型为周期任务,则获取所述数据处理任务对应的历史日志;
关联信息提取模块,从所述历史日志中提取与所述数据处理任务中的M个数据块分别关联的子数据块信息。
在一种可能的实施方式中,所述资源分配单元63包括:
资源上限值获取模块,用于获取当前可分配的资源上限值;
资源分配模块,用于根据当前可分配的资源上限值,按所述资源分配优先级从高到低依次为所述M个数据块分配资源。
在一种可能的实施方式中,所述M个数据块中存在N个数据块已分配资源,如图7所示,所述资源分配装置还包括:
第二信息获取单元71,用于根据所述N个数据块的子数据块信息,分别确定所述N个数据块的后继依赖信息,每个所述数据块的后继依赖信息用于描述所述数据块被所述数据块的子数据块访问的次数;
第一释放优先级确定单元72,用于根据所述N个数据块的后继依赖信息,确定所述N个数据块的资源释放优先级;
第一资源释放单元73,用于根据所述N个数据块的资源释放优先级,释放所述N个数据块所占用的资源。
在一种可能的实施方式中,所述资源分配装置还包括:
第三信息获取单元,用于根据所述N个数据块的子数据块信息,分别确定所述N个数据块的后继依赖信息,每个所述数据块的后继依赖信息用于描述所述数据块被所述数据块的子数据块访问的次数;
第二释放优先级确定单元,用于根据所述N个数据块的后继依赖信息与所述N个数据块的资源分配优先级,确定所述N个数据块的资源释放优先级;
第二资源释放单元,用于根据所述N个数据块的资源释放优先级,释放所述N个数据块所占用的资源。
由上可见,在本申请实施例中,通过获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,然后根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级,可使得资源分配优先级的确定更为准确有效,再基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配,提高资源分配的有效性,进而加快响应速度,同时,增强资源分配的适用性。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如图1至图5表示的任意一种资源分配方法的步骤。
本申请实施例还提供一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现如图1至图5表示的任意一种资源分配方法的步骤。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在电子设备上运行时,使得电子设备执行实现如图1至图5表示的任意一种资源分配方法的步骤。
图7是本申请一实施例提供的电子设备的示意图。如图7所示,该实施例的电子设备7包括:处理器70、存储器71以及存储在所述存储器71中并可在所述处理器70上运行的计算机可读指令72。所述处理器70执行所述计算机可读指令72时实现上述各个资源分配方法实施例中的步骤,例如图1所示的步骤S101至S103。或者,所述处理器70执行所述计算机可读指令72时实现上述各装置实施例中各模块/单元的功能,例如图6所示单元61至63的功能。
示例性的,所述计算机可读指令72可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器71中,并由所述处理器70执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令72在所述电子设备7中的执行过程。
所述电子设备7可以是服务器。所述电子设备7可包括,但不仅限于,处理器70、存储器71。本领域技术人员可以理解,图7仅仅是电子设备7的示例,并不构成对电子设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备7还可以包括输入输出设备、网络接入设备、总线等。
所述处理器70可以是中央处理单元(CentraL Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(DigitaL SignaL Processor,DSP)、专用集成电路(AppLication Specific Integrated Circuit,ASIC)、现成可编程门阵列(FieLd–Programma bLe Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述电子设备7的内部存储单元,例如电子设备7的硬盘或内存。所述存储器71也可以是所述电子设备7的外部存储设备,例如所述电子设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure DigitaL,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述电子设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机可读指令以及所述电子设备所需的其他程序和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种资源分配方法,其特征在于,包括:
获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,M≥1,M为整数;
根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级;
基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配。
2.根据权利要求1所述的资源分配方法,其特征在于,所述根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级的步骤,包括:
针对所述M个数据块中的每一数据块,根据所述数据块的子数据块信息,确定所述数据块的处理路径,并根据所述数据块的处理路径确定处理所述数据块的开销值;
根据所述M个数据块的开销值,确定所述M个数据块的资源分配优先级。
3.根据权利要求1所述的资源分配方法,其特征在于,所述根据各个数据块的资源分配优先级进行资源分配的步骤,包括:
获取当前可分配的资源上限值;
根据当前可分配的资源上限值,按所述资源分配优先级从高到低依次为所述M个数据块分配资源。
4.根据权利要求1所述的资源分配方法,其特征在于,所述M个数据块中存在N个数据块已分配资源,所述资源分配方法还包括:
根据所述N个数据块的子数据块信息,分别确定所述N个数据块的后继依赖信息,每个所述数据块的后继依赖信息用于描述所述数据块被所述数据块的子数据块访问的次数;
根据所述N个数据块的后继依赖信息,确定所述N个数据块的资源释放优先级;
根据所述N个数据块的资源释放优先级,释放所述N个数据块所占用的资源。
5.根据权利要求1所述的资源分配方法,其特征在于,所述M个数据块中存在N个数据块已分配资源,所述资源分配方法还包括:
根据所述N个数据块的子数据块信息,分别确定所述N个数据块的后继依赖信息,每个所述数据块的后继依赖信息用于描述所述数据块被所述数据块的子数据块访问的次数;
根据所述N个数据块的后继依赖信息与所述N个数据块的资源分配优先级,确定所述N个数据块的资源释放优先级;
根据所述N个数据块的资源释放优先级,释放所述N个数据块所占用的资源。
6.根据权利要求1至5任一项所述的资源分配方法,其特征在于,所述数据处理任务携带任务类型标识,所述获取与所述数据处理任务中的M个数据块分别关联的子数据块信息的步骤,包括:
根据所述任务类型标识,确定所述数据处理任务的任务类型;
若所述数据处理任务的任务类型为周期任务,则获取所述数据处理任务对应的历史日志;
从所述历史日志中提取与所述数据处理任务中的M个数据块分别关联的子数据块信息。
7.一种资源分配装置,其特征在于,包括:
第一信息获取单元,用于获取数据处理任务,以及与所述数据处理任务中的M个数据块分别关联的子数据块信息,M≥1,M为整数;
分配优先级确定单元,用于根据所述M个数据块的子数据块信息,分别确定所述M个数据块的资源分配优先级;
资源分配单元,用于基于所述M个数据块的资源分配优先级,为所述M个数据块进行资源分配。
8.根据权利要求7所述的资源分配装置,其特征在于,所述M个数据块中存在N个数据块已分配资源,所述资源分配装置还包括:
第二信息获取单元,用于根据所述N个数据块的子数据块信息,分别确定所述N个数据块的后继依赖信息,每个所述数据块的后继依赖信息用于描述所述数据块被所述数据块的子数据块访问的次数;
第一释放优先级确定单元,用于根据所述N个数据块的后继依赖信息,确定所述N个数据块的资源释放优先级;
第一资源释放单元,用于根据所述N个数据块的资源释放优先级,释放所述N个数据块所占用的资源。
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的资源分配方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的资源分配方法。
CN202010365726.0A 2020-04-30 2020-04-30 一种资源分配方法、装置、存储介质和电子设备 Active CN111597040B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010365726.0A CN111597040B (zh) 2020-04-30 2020-04-30 一种资源分配方法、装置、存储介质和电子设备
PCT/CN2020/139755 WO2021218208A1 (zh) 2020-04-30 2020-12-26 一种资源分配方法、装置、存储介质和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010365726.0A CN111597040B (zh) 2020-04-30 2020-04-30 一种资源分配方法、装置、存储介质和电子设备

Publications (2)

Publication Number Publication Date
CN111597040A true CN111597040A (zh) 2020-08-28
CN111597040B CN111597040B (zh) 2022-09-16

Family

ID=72190976

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010365726.0A Active CN111597040B (zh) 2020-04-30 2020-04-30 一种资源分配方法、装置、存储介质和电子设备

Country Status (2)

Country Link
CN (1) CN111597040B (zh)
WO (1) WO2021218208A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112948079A (zh) * 2021-02-18 2021-06-11 北京百度网讯科技有限公司 任务调度方法、装置、设备和计算机存储介质
WO2021218208A1 (zh) * 2020-04-30 2021-11-04 中国科学院深圳先进技术研究院 一种资源分配方法、装置、存储介质和电子设备
CN114138685A (zh) * 2021-12-06 2022-03-04 海光信息技术股份有限公司 缓存的资源分配方法及装置、电子装置和存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116017742B (zh) * 2023-02-14 2024-01-30 广州爱浦路网络技术有限公司 基于多级nwdaf的数据处理方法、系统和存储介质
CN116468403A (zh) * 2023-04-19 2023-07-21 浪潮智慧科技有限公司 一种资源分配方法、设备及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080276242A1 (en) * 2004-11-22 2008-11-06 International Business Machines Corporation Method For Dynamic Scheduling In A Distributed Environment
US20110321051A1 (en) * 2010-06-25 2011-12-29 Ebay Inc. Task scheduling based on dependencies and resources
CN104239135A (zh) * 2014-05-19 2014-12-24 江苏科技大学 有向无环图的可重构系统的混合任务调度方法
CN106776036A (zh) * 2016-12-30 2017-05-31 广东欧珀移动通信有限公司 一种资源分配方法及装置
CN108279980A (zh) * 2018-01-22 2018-07-13 上海联影医疗科技有限公司 资源分配方法及系统和资源分配终端
CN109885388A (zh) * 2019-01-31 2019-06-14 上海赜睿信息科技有限公司 一种适用于异构系统的数据处理方法和装置
CN110058932A (zh) * 2019-04-19 2019-07-26 中国科学院深圳先进技术研究院 一种用于数据流驱动计算的存储方法和存储系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105589809A (zh) * 2014-10-24 2016-05-18 中国科学院深圳先进技术研究院 一种内存管理方法及装置
CN104965755B (zh) * 2015-05-04 2018-08-21 东南大学 基于预算约束的云服务工作流调度方法
CN107870807A (zh) * 2016-09-26 2018-04-03 平安科技(深圳)有限公司 一种跨平台的任务调度方法和装置
CN111597040B (zh) * 2020-04-30 2022-09-16 中国科学院深圳先进技术研究院 一种资源分配方法、装置、存储介质和电子设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080276242A1 (en) * 2004-11-22 2008-11-06 International Business Machines Corporation Method For Dynamic Scheduling In A Distributed Environment
US20110321051A1 (en) * 2010-06-25 2011-12-29 Ebay Inc. Task scheduling based on dependencies and resources
CN104239135A (zh) * 2014-05-19 2014-12-24 江苏科技大学 有向无环图的可重构系统的混合任务调度方法
CN106776036A (zh) * 2016-12-30 2017-05-31 广东欧珀移动通信有限公司 一种资源分配方法及装置
CN108279980A (zh) * 2018-01-22 2018-07-13 上海联影医疗科技有限公司 资源分配方法及系统和资源分配终端
CN109885388A (zh) * 2019-01-31 2019-06-14 上海赜睿信息科技有限公司 一种适用于异构系统的数据处理方法和装置
CN110058932A (zh) * 2019-04-19 2019-07-26 中国科学院深圳先进技术研究院 一种用于数据流驱动计算的存储方法和存储系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021218208A1 (zh) * 2020-04-30 2021-11-04 中国科学院深圳先进技术研究院 一种资源分配方法、装置、存储介质和电子设备
CN112948079A (zh) * 2021-02-18 2021-06-11 北京百度网讯科技有限公司 任务调度方法、装置、设备和计算机存储介质
CN112948079B (zh) * 2021-02-18 2022-06-28 北京百度网讯科技有限公司 任务调度方法、装置、设备和计算机存储介质
CN114138685A (zh) * 2021-12-06 2022-03-04 海光信息技术股份有限公司 缓存的资源分配方法及装置、电子装置和存储介质
CN114138685B (zh) * 2021-12-06 2023-03-10 海光信息技术股份有限公司 缓存的资源分配方法及装置、电子装置和存储介质

Also Published As

Publication number Publication date
WO2021218208A1 (zh) 2021-11-04
CN111597040B (zh) 2022-09-16

Similar Documents

Publication Publication Date Title
CN111597040B (zh) 一种资源分配方法、装置、存储介质和电子设备
CN109191287B (zh) 一种区块链智能合约的分片方法、装置及电子设备
CN111488135A (zh) 高并发系统的限流方法、装置、存储介质及设备
US20170177471A1 (en) Multi-section garbage collection system including real-time garbage collection scheduling
CN112214313A (zh) 内存分配方法及相关设备
CN110659905A (zh) 交易验证方法、装置、终端设备以及存储介质
CN115002046A (zh) 报文处理方法、numa节点、电子设备及存储介质
CN116414542B (zh) 任务调度方法、装置、设备及存储介质
CN115658561B (zh) 配电终端内存管理方法、装置、电子设备及存储介质
CN111679909B (zh) 数据处理方法、装置及终端设备
CN108139969B (zh) 一种内存配置方法、装置及系统
CN111708715B (zh) 内存分配方法、内存分配装置及终端设备
CN113204426A (zh) 资源池的任务处理方法及相关设备
CN112130974A (zh) 云计算资源配置方法、装置、电子设备与存储介质
CN113568733A (zh) 资源分配方法、装置、电子设备及存储介质
CN113535378A (zh) 一种资源调配方法、存储介质及终端设备
CN116431327B (zh) 一种任务限流处理方法及堡垒机
WO2021135763A1 (zh) 数据处理方法和装置、存储介质及电子装置
CN113419988B (zh) 异构多核数据的传输方法、装置、设备及存储介质
CN111290850B (zh) 一种数据存储方法、装置及设备
CN111625358B (zh) 一种资源分配方法、装置、电子设备及存储介质
CN111858074A (zh) 一种资源访问的方法、装置及设备
CN110221914B (zh) 文件处理方法及装置
CN109491948B (zh) 一种针对固态硬盘双端口的数据处理方法和装置
CN118034869A (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