一种资源分配方法、系统、设备及计算机可读存储介质与流程

文档序号:24120303发布日期:2021-03-02 10:56阅读:65来源:国知局
一种资源分配方法、系统、设备及计算机可读存储介质与流程

[0001]
本申请涉及信息处理技术领域,更具体地说,涉及一种资源分配方法、系统、设备及计算机可读存储介质。


背景技术:

[0002]
目前高性能计算和ai平台领域中的系统已有相关一些计算资源分配技术实现,如:集群gpu(graphics processing unit,图形处理器)资源管理调度系统、方法以及计算机可读存储介质。其发明涉及一种集群gpu资源管理调度系统,只能对gpu类型资源进行处理。
[0003]
然而,现有资源分配方法中仅仅寻找到了在某一类型资源范围的局部最优解,没有充分发挥出集群系统中的硬件性能,降低了系统平台的总体资源使用效率。
[0004]
综上所述,如何提高资源使用效率是目前本领域技术人员亟待解决的问题。


技术实现要素:

[0005]
本申请的目的是提供一种资源分配方法,其能在一定程度上解决如何提高资源使用效率的技术问题。本申请还提供了一种资源分配系统、设备及计算机可读存储介质。
[0006]
为了实现上述目的,本申请提供如下技术方案:
[0007]
一种资源分配方法,包括:
[0008]
获取目标业务;
[0009]
确定所述目标业务所应用的资源类型;
[0010]
确定所述资源类型中各类资源间的目标交互影响信息;
[0011]
基于所述目标交互影响信息及所述资源类型,确定所述目标业务应用的各类资源的分配信息。
[0012]
优选的,所述目标交互影响信息的类型包括各类资源的物理链路间的交互影响信息,和/或各类资源的逻辑链路间的交互影响信息。
[0013]
优选的,所述基于所述目标交互影响信息及所述资源类型,确定所述目标业务应用的各类资源的分配信息,包括:
[0014]
计算所述资源类型中各类资源的单一资源分数;
[0015]
基于所述单一资源分数及所述目标交互影响信息计算总资源分数;
[0016]
基于所述总资源分数确定所述分配信息。
[0017]
优选的,所述基于所述总资源分数确定所述分配信息,包括:
[0018]
通过最大化所述总资源分数来确定所述分配信息。
[0019]
优选的,所述确定所述资源类型中各类资源间的目标交互影响信息,包括:
[0020]
基于预设的业务类型及交互影响信息间的对应关系,确定所述资源类型中各类资源间的所述目标交互影响信息。
[0021]
优选的,所述确定所述资源类型中各类资源间的目标交互影响信息,包括:
[0022]
基于预设的业务应用场景及交互影响信息间的对应关系,确定所述资源类型中各类资源间的所述目标交互影响信息。
[0023]
优选的,所述资源类型包括计算类资源、网络类资源、io类资源。
[0024]
一种资源分配系统,包括:
[0025]
第一获取模块,用于获取目标业务;
[0026]
第一确定模块,用于确定所述目标业务所应用的资源类型;
[0027]
第二确定模块,用于确定所述资源类型中各类资源间的目标交互影响信息;
[0028]
第三确定模块,用于基于所述目标交互影响信息及所述资源类型,确定所述目标业务应用的各类资源的分配信息。
[0029]
一种资源分配设备,包括:
[0030]
存储器,用于存储计算机程序;
[0031]
处理器,用于执行所述计算机程序时实现如上任一所述资源分配方法的步骤。
[0032]
一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述资源分配方法的步骤。
[0033]
本申请提供的一种资源分配方法,获取目标业务;确定目标业务所应用的资源类型;确定资源类型中各类资源间的目标交互影响信息;基于目标交互影响信息及资源类型,确定目标业务应用的各类资源的分配信息。本申请中,并非只根据资源类型来确定各类资源的分配信息,而是需要根据各类资源间的目标交互影响信息来确定分配信息,由此使得分配信息能够满足目标交互影响信息,避免了资源类型间交互影响对资源分配结果的影响,可以保证分配信息的准确性,进而可以提高资源使用效率。本申请提供的一种资源分配系统、设备及计算机可读存储介质也解决了相应技术问题。
附图说明
[0034]
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0035]
图1为本申请实施例提供的一种资源分配方法的流程图;
[0036]
图2为一种资源链路拓扑示意图;
[0037]
图3为交互影响信息的一种示意图;
[0038]
图4为交互影响信息的另一示意图;
[0039]
图5为本申请实施例提供的一种资源分配系统的结构示意图;
[0040]
图6为本申请实施例提供的一种风资源分配设备的结构示意图;
[0041]
图7为本申请实施例提供的一种风资源分配设备的另一结构示意图。
具体实施方式
[0042]
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本申请保护的范围。
[0043]
目前高性能计算和ai平台领域中的系统已有相关一些计算资源分配技术实现,如:集群gpu(graphics processing unit,图形处理器)资源管理调度系统、方法以及计算机可读存储介质。其发明涉及一种集群gpu资源管理调度系统,只能对gpu类型资源进行处理。再如:一种多核处理器资源分配计算方法、存储介质及终端设备。其发明公开了一种多核处理器资源分配计算方法,通过区域分割方式遍历查找到最优的资源分配方式,只是对一种cpu(central processing unit,中央处理器)单元节点资源进行了最优分配。此类技术仅实现了在某一种资源类型维度上的分配最优选择,特别集中讨论在某种计算资源(cpu、gpu等)如何分配。但其未从系统总体上考虑集群中的硬件类型和ai(artificial intelligence,人工智能)任务作业特点,没有实现真正意义上的多类型资源的联合优化分配。集群系统中运行的计算作业,数量多,场景多,不同的作业具有不同的资源类型(如计算资源:cpu、gpu;网络资源:各类型网卡设备;io(input/output,输入/输出)资源:各种存储和缓存等)要求。作业在某阶段,如:数据集拉取和处理,需要较多的cpu和网络资源等;作业在训练模型时,就需要较多的gpu和io资源等,按上述原有的单独优化gpu或cpu的分配方法,只是仅仅寻找到了在某一类型资源范围的局部最优解,没有充分发挥出集群系统中的硬件性能,降低了系统平台的总体资源使用效率。而本申请提供的资源分配方法可以提高资源使用效率。
[0044]
请参阅图1,图1为本申请实施例提供的一种资源分配方法的流程图。
[0045]
本申请实施例提供的一种资源分配方法,可以包括以下步骤:
[0046]
步骤s101:获取目标业务。
[0047]
实际应用中,可以先获取目标业务,目标业务的类型可以根据实际需要确定。
[0048]
步骤s102:确定目标业务所应用的资源类型。
[0049]
实际应用中,在获取目标业务之后,因为业务的执行需要依赖资源,所以需要确定目标业务所应用的资源类型,以便后续根据资源类型确定各类资源的分配信息。
[0050]
实际应用中,资源类型可以包括计算类资源、网络类资源、io类资源等。
[0051]
步骤s103:确定资源类型中各类资源间的目标交互影响信息。
[0052]
实际应用中,在目标业务的执行过程中,各类资源间是相互配合的关系,且一类资源会影响另一类资源的使用情况,所以在确定目标业务所应用的资源类型之后,还需确定资源类型中各类资源间的目标交互影响信息,以借助目标交互影响信息来表征各类资源间的交互影响关系。目标交互影响信息的类型及样式可以根据实际需要确定,比如目标交互影响信息的类型可以为连接速率、距离等,样式可以为表征交互影响的权重值等。
[0053]
步骤s104:基于目标交互影响信息及资源类型,确定目标业务应用的各类资源的分配信息。
[0054]
实际应用中,当为任务分配计算资源时,通常会同时使用多种类型计算资源,如作业要求使用多个cpu和gpu,同时,由于像ai训练作业从外部数据源拉取数据集时,又需要网卡设备资源,此时,在为业务分配计算和网络资源时,不仅要考虑处于同一拓扑层的资源的通信效率,还要考虑不同拓扑层资源之间的交互影响,从调度策略上看,就是在多维拓扑资源集合中,找到一种最佳的计算资源分布,充分提高资源的使用效率,发挥系统资源性能;所以在确定资源类型中各类资源间的目标交互影响信息之后,便可以基于目标交互影响信
息及资源类型,确定目标业务应用的各类资源的分配信息。应当指出,在此过程中,可能还需要获取各类资源的可用信息、已用信息等,本申请在此不对分配信息的过程做具体限定。
[0055]
本申请提供的一种资源分配方法,获取目标业务;确定目标业务所应用的资源类型;确定资源类型中各类资源间的目标交互影响信息;基于目标交互影响信息及资源类型,确定目标业务应用的各类资源的分配信息。本申请中,并非只根据资源类型来确定各类资源的分配信息,而是需要根据各类资源间的目标交互影响信息来确定分配信息,由此使得分配信息能够满足目标交互影响信息,避免了资源类型间交互影响对资源分配结果的影响,可以保证分配信息的准确性,进而可以提高资源使用效率。
[0056]
本申请实施例提供的一种资源分配方法中,目标交互影响信息的类型可以包括各类资源的物理链路间的交互影响信息,和/或各类资源的逻辑链路间的交互影响信息。为了便于理解,请参阅图2,图2为一种资源链路拓扑示意图,在图2中,不同gpu卡间的链路连接类型有numa(non uniform memory access,非统一内存访问)、nv-link、pcie(peripheral component interconnect express,高速串行计算机扩展总线标准)等;不同cpu之间的链路连接类型有numa、pcie等,如果把不同计算资源类型划为一层,那么cpu层和gpu层之间也是可以存在某些链路关联的,如:numa、pcie等;单从横向来看,相同类型的设备资源处于同一拓扑层,同类型不同设备之间的路径连接代表通信链路;单从纵向来看,不同色块代表着属于同一逻辑的链路类型,比如深色区域标识,该区域内的所有类型设备资源都属于同一个numa分组,如深色区域设备都属于numa组0,浅色区域设备都属于numa组1等,且各类资源间的交互影响信息不一定相同。
[0057]
本申请实施例提供的一种资源分配方法中,基于目标交互影响信息及资源类型,确定目标业务应用的各类资源的分配信息的过程中,可以计算资源类型中各类资源的单一资源分数;基于单一资源分数及目标交互影响信息计算总资源分数;基于总资源分数确定分配信息。
[0058]
实际应用中,在基于总资源分数确定分配信息的过程中,可以通过最大化总资源分数来确定分配信息。
[0059]
实际应用中,资源分数可以与交互影响关系成正相关,比如资源分数值越大,表示两个资源维度的关联密切程度越高,值越小,两者关联程度越低。资源相关分数数值为正数时,说明两个维度层面资源的联合分配为正向作用,能使最后的分数增加;资源相关分数数值为负数时,说明两个维度层面资源的联合分配为互斥作用,能使最后的分数减少。资源分数为0时,说明两个维度层面资源不相关,即没有链路连接等。
[0060]
为了便于理解,现假设资源类型有cpu、gpu和nic,且资源类型可以用res={cpu,gpu,nic}来表示;假设各类资源的链路类型有numa、pcie和nv-link,用align={numa,rcie,nv-link}表示,两类资源间的目标交互影响信息用rescol[i,j]表示,单一资源分数用resscore表示,总资源分数用toposcore表示,则单一资源分数的计算公式可以为:
[0061]
resscore(res,align)=max(score(res,n,align));
[0062]
其中,n表示该类资源的总数,n表示该类资源分配给目标业务的总数;
[0063]
总资源分数的计算公式可以为:
[0064]
[0065]
最大化总资源分数的过程可以用公式表示为:
[0066][0067]
应当指出,实际应用中,如果能确定业务资源使用场景,如cpu和gpu密集型任务,则可以使用numa和nv-link齐标准,确定公式中的k、l参数,则最大化总资源分数的过程可以用以下简化公式表示:
[0068]
bestfit=max(toposcore(k,l))。
[0069]
在此过程中,只需对公式进行求解,便可以得到满足要求的分配信息。
[0070]
本申请实施例提供的一种资源分配方法中,在确定资源类型中各类资源间的目标交互影响信息的过程中,可以基于预设的业务类型及交互影响信息间的对应关系,确定资源类型中各类资源间的目标交互影响信息;还可以基于预设的业务应用场景及交互影响信息间的对应关系,确定资源类型中各类资源间的目标交互影响信息;或者综合根据业务类型及业务应用场景来确定目标交互影响信息等。
[0071]
为了便于理解,现结合应用场景来对交互影响信息进行描述,假设应用场景侧重于cpu计算密集型,适用于一些复杂的、大量的逻辑运算和部分浮点运算场景,则此时交互影响信息中各类资源的链路影响优先级为numa>nv-link>pcie,此时,交互影响信息可以如图3所示;假设应用场景侧重于gpu计算密集型,适用于大量浮点运算场景,则此时交互影响信息中各类资源的链路影响优先级为nv-link>numa>pcie,此时,交互影响信息可以如图4所示等;而在数据集拉取、编解码等预处理操作的场景下,交互影响信息中各类资源的链路影响优先级可以为numa>pcie>nv-link等。
[0072]
请参阅图5,图5为本申请实施例提供的一种资源分配系统的结构示意图。
[0073]
本申请实施例提供的一种资源分配系统,可以包括:
[0074]
第一获取模块101,用于获取目标业务;
[0075]
第一确定模块102,用于确定目标业务所应用的资源类型;
[0076]
第二确定模块103,用于确定资源类型中各类资源间的目标交互影响信息;
[0077]
第三确定模块104,用于基于目标交互影响信息及资源类型,确定目标业务应用的各类资源的分配信息。
[0078]
本申请实施例提供的一种资源分配系统,目标交互影响信息的类型可以包括各类资源的物理链路间的交互影响信息,和/或各类资源的逻辑链路间的交互影响信息。
[0079]
本申请实施例提供的一种资源分配系统,第三确定模块可以包括:
[0080]
第一计算子模块,用于计算资源类型中各类资源的单一资源分数;
[0081]
第二计算子模块,用于基于单一资源分数及目标交互影响信息计算总资源分数;
[0082]
第一确定子模块,用于基于总资源分数确定分配信息。
[0083]
本申请实施例提供的一种资源分配系统,第一确定子模块可以包括:
[0084]
第一确定单元,用于通过最大化总资源分数来确定分配信息。
[0085]
本申请实施例提供的一种资源分配系统,第二确定模块可以包括:
[0086]
第二确定单元,用于基于预设的业务类型及交互影响信息间的对应关系,确定资源类型中各类资源间的目标交互影响信息。
[0087]
本申请实施例提供的一种资源分配系统,第二确定模块可以包括:
[0088]
第三确定单元,用于基于预设的业务应用场景及交互影响信息间的对应关系,确定资源类型中各类资源间的目标交互影响信息。
[0089]
本申请实施例提供的一种资源分配系统,资源类型包括计算类资源、网络类资源、io类资源。
[0090]
本申请还提供了一种资源分配设备及计算机可读存储介质,其均具有本申请实施例提供的一种资源分配方法具有的对应效果。请参阅图6,图6为本申请实施例提供的一种风资源分配设备的结构示意图。
[0091]
本申请实施例提供的一种资源分配设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:
[0092]
获取目标业务;
[0093]
确定目标业务所应用的资源类型;
[0094]
确定资源类型中各类资源间的目标交互影响信息;
[0095]
基于目标交互影响信息及资源类型,确定目标业务应用的各类资源的分配信息。
[0096]
本申请实施例提供的一种资源分配设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:目标交互影响信息的类型包括各类资源的物理链路间的交互影响信息,和/或各类资源的逻辑链路间的交互影响信息。
[0097]
本申请实施例提供的一种资源分配设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:计算资源类型中各类资源的单一资源分数;基于单一资源分数及目标交互影响信息计算总资源分数;基于总资源分数确定分配信息。
[0098]
本申请实施例提供的一种资源分配设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:通过最大化总资源分数来确定分配信息。
[0099]
本申请实施例提供的一种资源分配设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:基于预设的业务类型及交互影响信息间的对应关系,确定资源类型中各类资源间的目标交互影响信息。
[0100]
本申请实施例提供的一种资源分配设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:基于预设的业务应用场景及交互影响信息间的对应关系,确定资源类型中各类资源间的目标交互影响信息。
[0101]
本申请实施例提供的一种资源分配设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:资源类型包括计算类资源、网络类资源、io类资源。
[0102]
请参阅图7,本申请实施例提供的另一种资源分配设备中还可以包括:与处理器202连接的输入端口203,用于传输外界输入的命令至处理器202;与处理器202连接的显示单元204,用于显示处理器202的处理结果至外界;与处理器202连接的通信模块205,用于实现资源分配设备与外界的通信。显示单元204可以为显示面板、激光扫描使显示器等;通信模块205所采用的通信方式包括但不局限于移动高清链接技术(hml)、通用串行总线(usb)、高清多媒体接口(hdmi)、无线连接:无线保真技术(wifi)、蓝牙通信技术、低功耗蓝牙通信
技术、基于ieee802.11s的通信技术。
[0103]
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:
[0104]
获取目标业务;
[0105]
确定目标业务所应用的资源类型;
[0106]
确定资源类型中各类资源间的目标交互影响信息;
[0107]
基于目标交互影响信息及资源类型,确定目标业务应用的各类资源的分配信息。
[0108]
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:目标交互影响信息的类型包括各类资源的物理链路间的交互影响信息,和/或各类资源的逻辑链路间的交互影响信息。
[0109]
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:计算资源类型中各类资源的单一资源分数;基于单一资源分数及目标交互影响信息计算总资源分数;基于总资源分数确定分配信息。
[0110]
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:通过最大化总资源分数来确定分配信息。
[0111]
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:基于预设的业务类型及交互影响信息间的对应关系,确定资源类型中各类资源间的目标交互影响信息。
[0112]
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:基于预设的业务应用场景及交互影响信息间的对应关系,确定资源类型中各类资源间的目标交互影响信息。
[0113]
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:资源类型包括计算类资源、网络类资源、io类资源。
[0114]
本申请所涉及的计算机可读存储介质包括随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质。
[0115]
本申请实施例提供的资源分配系统、设备及计算机可读存储介质中相关部分的说明请参见本申请实施例提供的资源分配方法中对应部分的详细说明,在此不再赘述。另外,本申请实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
[0116]
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在
包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0117]
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1