CN114416352A - 算力资源分配方法、装置、电子设备及储存介质 - Google Patents
算力资源分配方法、装置、电子设备及储存介质 Download PDFInfo
- Publication number
- CN114416352A CN114416352A CN202111645466.3A CN202111645466A CN114416352A CN 114416352 A CN114416352 A CN 114416352A CN 202111645466 A CN202111645466 A CN 202111645466A CN 114416352 A CN114416352 A CN 114416352A
- Authority
- CN
- China
- Prior art keywords
- sub
- resource
- algorithm
- resource pool
- computing
- 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
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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5011—Pool
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
Abstract
本发明提供了一种算力资源分配方法、装置、电子设备及储存介质。方法包括:根据多个算法各自的算法属性,确定所述多个算法各自的算力需求特征,根据多个算法各自的算力需求特征,对算力平台的资源池进行资源规划,获得多个子资源池。因此可以对算力平台的算力资源进行更精细的规划,并且使得规划后的算力资源与实际使用环境更匹配。获取多个算法各自的软件镜像文件,并部署于多个算法各自匹配的子资源池,获取用户的算法应用需求,从多个子资源池中确定与算法应用需求匹配的目标子资源池。本申请能够根据算法自身对特定算力资源的需求,对算力资源池进行合理的管理和划分。并且由于对平台的算力资源规划更精细,进行算力资源分配时会更快更准确。
Description
技术领域
本发明涉及云计算技术领域,尤其涉及一种算力资源分配方法、装置、电子设备及储存介质。
背景技术
算力资源是可调用计算资源的总和,包含软件和硬件,本地及远程资源。硬件包括PC,工作站和服务器等物理计算设备,智能仪器(比如示波器),以及其配套附件。软件包括操作***(Windows系列,Linux等),开发环境(IDE,编译器等),行业软件(如Matlab,CAD等),办公等其他辅助类工具。通过在算力服务器中进行配置,从而实现算力资源的分配。并在所算力服务器中进行各类智能分析算法的部署,并执行对应的计算任务。而现有的算力服务器中,算法与算力服务器的绑定方式为紧耦合方式。
相关技术中,算法与算力服务器的采用紧耦合方式会使得算力资源使用不均衡,造成算力资源严重碎片化,从而使得算力资源无法充分利用。
发明内容
本发明实施例提供一种算力资源分配方法、装置、电子设备及储存介质,旨在解决上述背景技术中存在的问题。
为了解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种算力资源分配方法,所述方法包括:
根据多个算法各自的算法属性,确定所述多个算法各自的算力需求特征;
根据所述多个算法各自的算力需求特征,对算力平台的资源池进行资源规划,获得多个子资源池;其中,一个子资源池的算力资源与一类算法的算力需求特征匹配;
获取所述多个算法各自的软件镜像文件,并部署于所述多个算法各自匹配的子资源池,其中,所述软件镜像文件包括多种应用软件;
获取用户的算法应用需求,从所述多个子资源池中确定与所述算法应用需求匹配的目标子资源池。
可选地,所述算力平台包括多个服务区域,每个所述服务区域多个子资源池,每个所述子资源池匹配一种算法。
可选地,从所述多个子资源池中确定与所述算法应用需求匹配的目标子资源池的步骤包括:
获取所述用户的算法应用需求中的算法类型需求和用户的定位信息;
根据所述用户的定位信息,在所述算力平台上确定本次算法应用需求的目标服务区域;
根据所述算法类型需求指示的算法类型,在所述目标服务区域中确定与所述算法类型匹配的目标子资源池。
可选地,在确定算法应用需求的目标子资源池之后,所述方法还包括:
在所述目标子资源池中,基于所述算法类型从所述多种应用软件中确定目标软件;
在所述目标软件执行计算任务,并生成所述计算任务对应的计算结果;
将所述计算结果生成响应信息并反馈至用户。
可选地,所述方法还包括:
监控所述多个子资源池中的算力资源的占用情况;
确定所述多个子资源池中的算力资源占用小于预设阈值的第一子资源池,并对所述第一子资源池进行持续监控;
若所述第一子资源池的算力资源在所述持续监期间内仍然小于预设阈值,则将所述第一子资源池的算力资源回收至备用算力资源池。
可选地,所述方法还包括:
监控所述多个子资源池中的算力资源的占用情况;
确定所述多个子资源池中的算力资源占用大于预设阈值的第二子资源池,并对所述第二子资源池进行持续监控;
若所述第二子资源池的算力资源在所述持续监期间内仍然大于预设阈值,则调用所述备用算力资源池中的算力资源,对所述第二子资源池的算力资源进行扩充。
可选地,所述多个算法各自的软件镜像文件部署于所述多个算法各自匹配的子资源池所采用的部署方式为:容器部署方式或虚拟机部署方式。
本发明实施例第二方面提出一种算力资源分配装置,所述装置包括:
需求确定单元,用于根据多个算法各自的算法属性,确定所述多个算法各自的算力需求特征;
规划单元,用于根据所述多个算法各自的算力需求特征,对算力平台的资源池进行资源规划,获得多个子资源池;其中,一个子资源池的算力资源与一类算法的算力需求特征匹配;
获取单元,用于获取所述多个算法各自的软件镜像文件,并部署于所述多个算法各自匹配的子资源池,其中,所述软件镜像文件包括多种应用软件;
分配单元,用于获取用户的算法应用需求,从所述多个子资源池中确定与所述算法应用需求匹配的目标子资源池。
发明实施例第三方面提出一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现本发明实施例第一方面提出方法步骤。
本发明实施例第四方面提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例第一方面提出方法。
本发明实施例包括以下优点:根据多个算法各自的算法属性,确定所述多个算法各自的算力需求特征,根据多个算法各自的算力需求特征,对算力平台的资源池进行资源规划,获得多个子资源池。因此可以对算力平台的算力资源进行更精细的规划,并且使得规划后的算力资源与实际使用环境更匹配。获取多个算法各自的软件镜像文件,并部署于多个算法各自匹配的子资源池,获取用户的算法应用需求,从多个子资源池中确定与算法应用需求匹配的目标子资源池。相比于现有技术,本申请能够根据算法自身对特定算力资源的需求,对算力资源池进行合理的管理和划分。在接收到用户的算法应用请求后,能够快速分配服务区域和算力资源,提升了客户算法的应用场景适配性并且提高了平台的计算效率。并且本发明由于对平台的算力资源规划更精细,当进行算力资源分配时会更快更准确,从而提高智能分析的响应效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中算力资源分配***的***架构图;
图2是本发明实施例中一种算力资源分配方法的步骤流程图;
图3是本发明实施例中一种算力资源分配装置的模块示意图;
图4是本发明实施例中电子设备的功能模块示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
相关技术中,现有的算力平台接收用户的算力资源请求,并根据算力资源请求在算力平台的算力服务器中执行相应的计算任务,并将相应的计算结果通过网络反馈给用户。而现有的算力平台中,与预存的算法为紧耦合的绑定方式。即现有的算力算力平台中,以一台算力服务器为例,将其对应的CPU(central processing unit,中央处理器)资源A、GPU(graphics processing unit,图像处理器)资源B以及MEM(Memory,内存)资源C,当然还包括其他算力资源,如显存等进行平均配置,获得多个子服务器,每个子服务器上部署了各个类型的算法。用户在请求算力平台的服务时,算力平台资源的分配原则为先到先得分配,当某种类型的算法对某种算力资源(即资源A、B、C的某一种)占用耗尽时,客户只能等待。而对算力资源的扩充需要在平台的物理资源建设扩充,因此周期长,成本高。
基于此,发明人提出了本申请的发明构思:根据算法对算力资源的需求特征进行合理规划,在客户向算力平台获取不同算法需求的时候,根据用户的算法需求快速分配对应的算法资源。
如图1所示的算力资源管理***,***包括:算法管理模块、算力平台以及资源管理模块,其中,所述算法管理模块用于管理录入算法的算力需求特征、软件镜像以及算法属性。资源管理模块包括资源部署子模块、资源监控子模块以及资源监控子模块,资源部署子模块用于根据预先录入算法的算力需求特征进行资源匹配规划,并从算法管理模块获取先录入算法的软件镜像。资源监控子模块用于实施监控各个子资源池中的算力资源的占用情况,当所述子资源池中的算力资源的占用大于预设阈值或小于预设阈值时,通过所述资源部署子模块对所述子资源池中的算力资源进行扩充或者回收。算力平台包括多个边缘算力服务器,边缘算力服务器包括多个子资源池,每个子资源池匹配对应的匹配需求算法,用来执行对应的目标算法。
本发明实施例提供了一种算力资源分配方法,基于本申请的算力资源管理***进行应用。参见图2,图2示出了本申请实施例一种算力资源分配方法的步骤流程图,所述方法包括:
步骤S201:根据多个算法各自的算法属性,确定所述多个算法各自的算力需求特征。
在本实施方式中,在算法管理模块进行算法录入的过程中,提取目标算法的算法属性、软件镜像、算法的算力需求特征。算法属性用于对算法标识,即算法管理模块在算法录入的过程中,根据其算法属性来确定其属性什么类型的算法。作为示例的,当算法管理模块识别到算法1的算法属性为A时,则确定算法1对应的算法类型为粒子集群算法,当算法管理模块识别到算法2的算法属性为B时,则确定算法2对应的算法类型为退火算法……,当算法管理模块识别到算法n的算法属性为M时,则确定算法n对应的算法类型为m算法。而对于不同的算法,算法各自的算力需求特征也不相同,算力需求特征是指算法对CPU资源、GPU资源以及MEM资源的应用需求。作为示例的,算法1对CPU资源的需求为8核16线程,对GPU资源的需求为0,对MEM资源的需求为20GB;算法2对CPU资源的需求为0,对GPU资源的需求为GeForce RTX 2080Ti加速卡以及10GB显存,对MEM资源的需求为10GB;算法3对CPU资源的需求为4核4线程,GeForce GTX970加速卡以及2GB显存,对MEM资源的需求为100GB。算法4对CPU资源的需求为9核18线程,对GPU资源的需求为0,对MEM资源的需求为30GB;算法5对CPU资源的需求为0,对GPU资源的需求为GeForce RTX 2080加速卡以及12GB显存,对MEM资源的需求为15GB;算法6对CPU资源的需求为4核4线程,GeForce GTX980加速卡以及4GB显存,对MEM资源的需求为100GB。从上述可知,算法1和算法4对CPU资源的需求更高,算法2和算法5对GPU资源的需求更高,算法3和算法6对MEM资源的需求更高,即不同的算法类别对算力资源的需求是不相同的。
步骤S202:根据所述多个算法各自的算力需求特征,对算力平台的资源池进行资源规划,获得多个子资源池;其中,一个子资源池的算力资源与一类算法的算力需求特征匹配。
在本实施方式中,对应不同的边缘算力服务器,其包含的算力资源是固定且有限的。作为示例的,对于边缘算力服务器A包含的资源为:128核256线程的CPU资源,多个GeForce RTX 2080Ti显存16G的GPU资源以及20TB的MEM资源。边缘算力服务器A包含的算力资源即为一个资源池,在获取到每个录入算法的算力需求特征后,则需要根据不同算法算力需求对算力资源池进行资源规划。对应算法1和算法4,其对CPU资源的需求为8核16线程,对GPU资源的需求为0,对MEM资源的需求为20GB和对CPU资源的需求为9核18线程,对GPU资源的需求为0,对MEM资源的需求为30GB,则从算力资源池中分配至少满足算法1和算法4的算力资源,从而生成子资源池1,子资源池1中的算力资源与算法1和算法4的需求算力资源匹配。对应算法2和算法5,其对CPU资源的需求为0,对GPU资源的需求为GeForce RTX2080Ti加速卡以及10GB显存和对CPU资源的需求为0,对GPU资源的需求为GeForce RTX2080加速卡以及12GB显存,对MEM资源的需求为10GB。则从算力资源池中分配相应的算力资源给算法2和算法5,生成子资源池2,子资源池2中的算力资源与算法2和算法5需求算力资源匹配。对应算法3和算法6,其对CPU资源的需求为4核4线程,GeForce GTX 970加速卡以及2GB显存,对MEM资源的需求为100GB和CPU资源的需求为4核4线程,GeForce GTX980加速卡以及4GB显存,对MEM资源的需求为100GB。则从算力资源池中分配相应的算力资源给算法3和算法6,生成子资源池3,子资源池3中的算力资源与算法3和算法6需求算力资源匹配。在对所有的录入算法的m种进行资源分配后,生成n个子资源池,n个子资源池中的算力资源加起来之后,即是边缘算力服务器的全部的算力资源。算法1和算法4属于同一类算法,即对CPU资源要求比较高的算法类别,因此可以都指向到CPU配比高的资源池,共用一个子资源池。算法2和算法5属于同一类算法,即对GPU资源要求比较高的算法类别,因此可以都指向到GPU配比高的资源池,共用一个子资源池。算法3和算法6属于同一类算法,即对MEM资源要求比较高的算法类别,因此可以都指向到MEM配比高的资源池,共用一个子资源池。根据每种算法对算力资源需求的侧重不同,合理的对算力资源池的算力资源进行划分,从而使得子资源池中的算力资源与一类算法的算力需求特征匹配。
步骤S203:获取所述多个算法各自的软件镜像文件,并部署于所述多个算法各自匹配的子资源池,其中,所述软件镜像文件包括多种应用软件。
在本实施方式中,将算力平台的资源池进行资源规划,得到多个子资源池之后,算法管理模块获取先录入算法的软件镜像。软件镜像文件和ZIP压缩包类似,它将特定的一系列文件按照一定的格式制作成单一的文件,包含了各种应用软件。对算力平台的资源池进行资源规划的过程是一个硬件部署的过程,在将硬件部署完成后,将每种算法各自的软件镜像文件部署到对应的子资源池的过程,是一个软件的部署的过程。当硬件部署和软件部署都完成后,即实现对算法应用环境的部署。
步骤S204:获取用户的算法应用需求,从所述多个子资源池中确定与所述算法应用需求匹配的目标子资源池。
在本实施方式中,在应用阶段,算力平台接收用户的算法的应用需求,并提取算法的应用需求中的相关参数,基于相关参数从已经规划和配置好的子资源池中为用户匹配对应的目标子资源池,并利用目标子资源池中的算力资源执行相应的计算任务。
在上述步骤S201至步骤S204对应的实施方式中,通过根据算法自身对特定算力资源的需求,对算力平台的算力资源进行合理的管理和划分。在接收到用户的算法应用请求后,能够快速分配服务区域和算力资源,从而提高了算力平台的计算效率。并且对算力资源规划更精细,当进行算力资源分配时会更快更准确,从而智能分析的响应效率。
在一种可行的实施方式中,所述算力平台包括多个服务区域,每个所述服务区域多个子资源池,每个所述子资源池匹配一种算法。
在实施方式中,算力平台包括多个服务区域,每个服务区域对应的一个边缘算力服务器。作为示例的,算力平台包含4台边缘算力服务器,每台边缘算力服务器根据其分配的任务。边缘算力服务器1设置在北京,其服务的区域为A片区;边缘算力服务器2设置在成都,其服务的区域为B片区;边缘算力服务器3设置在福建,其服务的区域为C片区;边缘算力服务器2设置在上海,其服务的区域为D片区。边缘算力服务器1-4上都的子资源池的配置都相同,也可以根据地区对算法需求的差异,配置不同的子资源池。并在子资源池中部署对应的特定算法。若边缘算力服务器1-4上都的子资源池的配置都相同,则边缘算力服务器1-4都包含n个子资源池,n个子资源池中部署相同的m个算法,子资源池1匹配算法类别A,子资源池2匹配算法类别B……,子资源池n匹配算法类别N。若边缘算力服务器1-4上都的子资源池的配置不相同,则边缘算力服务器1和2包含n个子资源池,n个子资源池中部署n个算法类别,子资源池1匹配算法类别A,子资源池2匹配算法类别B……,子资源池n匹配算法类别N;缘算力服务器3和4包含m个子资源池,m个子资源池中部署m个类别算法,子资源池1匹配算法类别A,子资源池2匹配算法类别B……,子资源池m匹配算法类别M。并且边缘算力服务器1和2中的算法类别A与边缘算力服务器3和4中的算法类别A所属的类别不相同。
在一种可行的实施方式中,步骤S204中,多个子资源池中确定与所述算法应用需求匹配的目标子资源池的步骤包括以下子步骤:
步骤S204-1:获取所述用户的算法应用需求中的算法类型需求和用户的定位信息;
步骤S204-2:根据所述用户的定位信息,在所述算力平台上确定本次算法应用需求的目标服务区域;
步骤S204-3:根据所述算法类型需求指示的算法类型,在所述目标服务区域中确定与所述算法类型匹配的目标子资源池。
在步骤S204-1至S204-3的实施方式中,当用户向算力平台发送算法应用需求,算法应用需求中至少包括用户的算法类型需求和用户的定位信息,用户的定位信息用于表征用户的所属区域信息。作为示例的,位于成都的用户在向算力平台发送算法应用需求时,其应用需求中携带有表征用户属于成都的标识信息,当算力平台检测到用户属于成都的标识信息后,成都属于B片区,因此将用户的算法应用需求对应的计算任务将发送给边缘算力服务器2。在边缘算力服务器2中,再获取算法应用需求中的算法类型需求。在边缘算力服务器2的n个子资源池中,根据算法类型需求确定目标子资源池。作为示例的,若用户算法类型需求中的算法为退火算法,而在边缘算力服务器2中,退火算法部署在子资源池a中,则将子资源池a确定为本次算法应用需求的目标子资源池。即通过用户算法应用需求中的算法+用户的定位信息快速的为用户分配目标子资源池,并利用目标子资源池满足用户的计算需求。在算法应用需求中还可以包括用户的场景应用需求,场景应用需求是指用户对计算任务的时延要求和对边缘算力服务器并发量的要求,作为示例的,如果要求响应速度快或者并发量大,那势必要对使用算力的优先级更高。从而基于优先级进行目标子资源池的分配。提升了算力资源的利用率,并且也提高了响应速度。
在一种可行的实施方式中,在确定算法应用需求的目标子资源池之后,所述方法还包括以下步骤:
步骤S204-4:在所述目标子资源池中,基于所述算法类型从所述多种应用软件中确定目标软件;
在本步骤中,当根据步骤S204-1至步骤S204-3确定出用户本次算法应用需求的目标子资源池之后,此时的目标子资源池可以将其理解为一台PC机,而在该PC机上根据算法软件镜像预装了满足PC机运行和算法运行的多种软件。因此在执行算法任务时,在目标子资源池中的软件中确定执行本次计算任务的目标软件。
步骤S204-5:在所述目标软件执行计算任务,并生成所述计算任务对应的计算结果;
在本步骤中,在执行本次计算任务的目标软件将本次计算任务的初始参数输入到目标软件中,将初始参数带入到算法模型中,从而得到本次计算任务的计算结果。
步骤S204-6:将所述计算结果生成响应信息并反馈至用户。
在本步骤中,将在子资源池中执行计算任务对应的计算结果封装成响应数据包,在根据用户的定位信息将响应数据包发送给用户,从而实现整个计算任务的闭环。
在一种可行的实施方式中,所述方法还包括对子资源池的算力资源的监控,其具体包括以下步骤:
步骤S205-1:监控所述多个子资源池中的算力资源的占用情况;
步骤S205-2:确定所述多个子资源池中的算力资源占用小于预设阈值的第一子资源池,并对所述第一子资源池进行持续监控;
步骤S205-3:若所述第一子资源池的算力资源在所述持续监期间内仍然小于预设阈值,则将所述第一子资源池的算力资源回收至备用算力资源池。
在步骤S205-1至步骤S205-3所述的实施方式中,资源监控子模块用于监控各个子资源池的算力资源的占用情况。作为示例的,对应边缘算力服务器1中的n个子资源池,当n个子资源池中的编号为m子资源池由于执行的计算任务对算力的需求较小,因此使得m子资源池中的算力资源占用小于预设阈值,这里的预设阈值为阈值下限值,阈值下限值可以为百分之五,阈值下限值可以根据实际情况进行调整,本申请对此不进行限定。将算力资源占用低于百分之五的子资源池定义为第一子资源池,资源监控子模块对第一子资源池的算力资源占用情况进行实时监控,若在预设的时间T内,其算力资源占用都小于预设的百分之五,则说明第一子资源池中的算力资源都处于闲置未使用的状态。因此,可以将所有第一子资源池中的算力资源都进行回收,并将其都储存在备用算力资源池中。通过监控各个子资源池中的算力资源的使用情况,动态的进行调整并回收,充分的利用了算力资源。
同理,资源监控子模块还用于监控和调整各个子资源池的算力资源的占用大于预设上限阈值,其具体包括以下步骤:
步骤S205-4:监控所述多个子资源池中的算力资源的占用情况;
步骤S205-5:确定所述多个子资源池中的算力资源占用大于预设阈值的第二子资源池,并对所述第二子资源池进行持续监控;
步骤S205-6:若所述第二子资源池的算力资源在所述持续监期间内仍然大于预设阈值,则调用所述备用算力资源池中的算力资源,对所述第二子资源池的算力资源进行扩充。
在步骤S205-4至步骤S205-6所述的实施方式中,作为示例的,对应边缘算力服务器1中的n个子资源池,当n个子资源池中的编号为p子资源池由于执行的计算任务对算力的需求较大,因此使得p子资源池中的算力资源占用大于预设阈值,这里的预设阈值为阈值上限值,阈值上限值可以为百分之九十五,阈值上限值可以根据实际情况进行调整,本申请对此不进行限定。将算力资源占用高于百分之九十五的子资源池定义为第二子资源池,资源监控子模块对第二子资源池的算力资源占用情况进行实时监控,若在预设的时间T内,其算力资源占用都高于预设的百分之九十五,则说明第二子资源池中的算力资源都处于满负荷运行状态。如果按照满负荷运行状态进行持续运行,可能会出现将资源耗尽,而当出现需要使用p子资源池中的算力资源的用户时,用户需要进行等待的情况出现。因此,可以调用并储存在备用算力资源池中的算力资源,对p子资源池进行算力资源的扩展,从而满足高算力需求。通过监控各个子资源池中的算力资源的使用情况,在算力资源处于用尽状态时,调用备用算力资源池中的算力资源以及算法镜像进行快速扩充,充分的利用了算力资源。从而提高了算力平台的快速部署能力。
在一种可行的实施方式中,多个算法各自的软件镜像文件部署于所述多个算法各自匹配的子资源池所采用的部署方式为:容器部署方式或虚拟机部署方式。
在本实施方式中,采用虚拟机部署方式主要包括以下优点:虚拟机可减少在服务器设备上的支出,可以利用一个物理服务器资源切分成多个独立的虚拟机来完成许多工作。可以利用虚拟机管理程序的集中功能高效地管理所有虚拟环境。并且这些***完全相互独立,这意味着可以在不同的虚拟机里安装不同的***环境。最重要的是,虚拟机与主机操作***隔离,是进行实验和开发应用程序的安全场所。而采用容器部署方式主要包括以下优点:容器占用的大小比虚拟机小很多,甚至可以小到10MB,可以轻松限制容器的内存和CPU使用率。与部署应用需要部署整个操作***的虚拟机相比,容器非常轻巧且启动迅速。因此可以快速扩展容器并添加相同的容器。因此,选择容器部署方式或虚拟机部署方式可以基于应用的场景进行选择,本申请对此不进行限定。
本发明实施例还提供了一种算力资源分配装置,参照图3,示出了本发明一种算力资源分配装置的功能模块图,该装置可以包括以下模块:
需求确定单元301,用于根据多个算法各自的算法属性,确定所述多个算法各自的算力需求特征;
规划单元302,用于根据所述多个算法各自的算力需求特征,对算力平台的资源池进行资源规划,获得多个子资源池;其中,一个子资源池的算力资源与一类算法的算力需求特征匹配;
部署单元303,用于获取所述多个算法各自的软件镜像文件,并部署于所述多个算法各自匹配的子资源池,其中,所述软件镜像文件包括多种应用软件;
分配单元304,用于获取用户的算法应用需求,从所述多个子资源池中确定与所述算法应用需求匹配的目标子资源池。
在一种可行的实施方式中,所述分配单元304包括:
获取子单元,用于获取所述用户的算法应用需求中的算法类型需求和用户的定位信息;
确定子单元,用于根据所述用户的定位信息,在所述算力平台上确定本次算法应用需求的目标服务区域;
匹配子单元,用于根据所述算法类型需求指示的算法类型,在所述目标服务区域中确定与所述算法类型匹配的目标子资源池。
在一种可行的实施方式中,所述分配单元304还包括:
定位子单元,用于在所述目标子资源池中,基于所述算法类型从所述多种应用软件中确定目标软件;
执行子单元,用于在所述目标软件执行计算任务,并生成所述计算任务对应的计算结果;
反馈子单元,用于将所述计算结果生成响应信息并反馈至用户。
在一种可行的实施方式中,所述装置还包括:监控调度单元,所述监控调度单元包括:
第一监控子单元,用于监控所述多个子资源池中的算力资源的占用情况;
第一确定子单元,用于确定所述多个子资源池中的算力资源占用小于预设阈值的第一子资源池,并对所述第一子资源池进行持续监控;
回收子单元,用于若所述第一子资源池的算力资源在所述持续监期间内仍然小于预设阈值,则将所述第一子资源池的算力资源回收至备用算力资源池。
在一种可行的实施方式中,所述监控调度单元还包括:
第二监控子单元,用于监控所述多个子资源池中的算力资源的占用情况;
第二监控子单元,用于确定所述多个子资源池中的算力资源占用大于预设阈值的第二子资源池,并对所述第二子资源池进行持续监控;
扩充子单元,用于若所述第二子资源池的算力资源在所述持续监期间内仍然大于预设阈值,则调用所述备用算力资源池中的算力资源,对所述第二子资源池的算力资源进行扩充。
在一种可行的实施方式中,所述部署单元303包括:
第一监控子单元,用于采用虚拟机部署方式多个算法各自的软件镜像文件部署于所述多个算法各自匹配的子资源池。
第二监控子单元,用于采用容器部署方式将多个算法各自的软件镜像文件部署于所述多个算法各自匹配的子资源池。
基于同一发明构思,本发明另一实施例提供一种电子设备,如图4所示,包括处理器41、通信接口42、存储器43和通信总线44,其中,处理器41,通信接口42,存储器43通过通信总线44完成相互间的通信,
存储器43,用于存放计算机程序;
处理器41,用于执行存储器43上所存放的程序时,实现本发明实施例第一方面的步骤。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读储存介质,包含本申请实施例第二方面所述的算力资源分配装置。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用储存介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。“和/或”表示可以选择两者之中的任意一个,也可以两者都选择。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种算力资源分配方法、装置、电子设备及储存介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种算力资源分配方法,其特征在于,所述方法包括:
根据多个算法各自的算法属性,确定所述多个算法各自的算力需求特征;
根据所述多个算法各自的算力需求特征,对算力平台的资源池进行资源规划,获得多个子资源池;其中,一个子资源池的算力资源与一类算法的算力需求特征匹配;
获取所述多个算法各自的软件镜像文件,并部署于所述多个算法各自匹配的子资源池,其中,所述软件镜像文件包括多种应用软件;
获取用户的算法应用需求,从所述多个子资源池中确定与所述算法应用需求匹配的目标子资源池。
2.根据权利要求1所述的方法,其特征在于,所述算力平台包括多个服务区域,每个所述服务区域多个子资源池,每个所述子资源池匹配一种算法。
3.根据权利要求2所述的方法,其特征在于,从所述多个子资源池中确定与所述算法应用需求匹配的目标子资源池的步骤包括:
获取所述用户的算法应用需求中的算法类型需求和用户的定位信息;
根据所述用户的定位信息,在所述算力平台上确定本次算法应用需求的目标服务区域;
根据所述算法类型需求指示的算法类型,在所述目标服务区域中确定与所述算法类型匹配的目标子资源池。
4.根据权利要求3所述的方法,其特征在于,在确定算法应用需求的目标子资源池之后,所述方法还包括:
在所述目标子资源池中,基于所述算法类型从所述多种应用软件中确定目标软件;
在所述目标软件执行计算任务,并生成所述计算任务对应的计算结果;
将所述计算结果生成响应信息并反馈至用户。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
监控所述多个子资源池中的算力资源的占用情况;
确定所述多个子资源池中的算力资源占用小于预设阈值的第一子资源池,并对所述第一子资源池进行持续监控;
若所述第一子资源池的算力资源在所述持续监期间内仍然小于预设阈值,则将所述第一子资源池的算力资源回收至备用算力资源池。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
监控所述多个子资源池中的算力资源的占用情况;
确定所述多个子资源池中的算力资源占用大于预设阈值的第二子资源池,并对所述第二子资源池进行持续监控;
若所述第二子资源池的算力资源在所述持续监期间内仍然大于预设阈值,则调用所述备用算力资源池中的算力资源,对所述第二子资源池的算力资源进行扩充。
7.根据权利要求1所述的方法,其特征在于,所述多个算法各自的软件镜像文件部署于所述多个算法各自匹配的子资源池所采用的部署方式为:容器部署方式或虚拟机部署方式。
8.一种算力资源分配装置,其特征在于,所述装置包括:
需求确定单元,用于根据多个算法各自的算法属性,确定所述多个算法各自的算力需求特征;
规划单元,用于根据所述多个算法各自的算力需求特征,对算力平台的资源池进行资源规划,获得多个子资源池;其中,一个子资源池的算力资源与一类算法的算力需求特征匹配;
获取单元,用于获取所述多个算法各自的软件镜像文件,并部署于所述多个算法各自匹配的子资源池,其中,所述软件镜像文件包括多种应用软件;
分配单元,用于获取用户的算法应用需求,从所述多个子资源池中确定与所述算法应用需求匹配的目标子资源池。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111645466.3A CN114416352A (zh) | 2021-12-29 | 2021-12-29 | 算力资源分配方法、装置、电子设备及储存介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111645466.3A CN114416352A (zh) | 2021-12-29 | 2021-12-29 | 算力资源分配方法、装置、电子设备及储存介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114416352A true CN114416352A (zh) | 2022-04-29 |
Family
ID=81268995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111645466.3A Pending CN114416352A (zh) | 2021-12-29 | 2021-12-29 | 算力资源分配方法、装置、电子设备及储存介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114416352A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115048224A (zh) * | 2022-08-13 | 2022-09-13 | 北京蔚领时代科技有限公司 | 一种基于多个云服务商的算力复用管理方法及其装置 |
CN115051988A (zh) * | 2022-06-07 | 2022-09-13 | 瞳见科技有限公司 | 一种基于分布式算力的融合调度*** |
CN115550370A (zh) * | 2022-12-01 | 2022-12-30 | 浩鲸云计算科技股份有限公司 | 一种基于多因素策略的算力资源最优调度分配方法 |
CN115643263A (zh) * | 2022-12-08 | 2023-01-24 | 阿里巴巴(中国)有限公司 | 云原生平台资源分配方法、存储介质和电子设备 |
WO2023216500A1 (zh) * | 2022-05-09 | 2023-11-16 | 苏州元脑智能科技有限公司 | 智算中心的算力资源部署方法、装置、设备及存储介质 |
CN117421130A (zh) * | 2023-12-18 | 2024-01-19 | 成都凌亚科技有限公司 | 一种云算力分配***及方法 |
CN117611425A (zh) * | 2024-01-17 | 2024-02-27 | 之江实验室 | 图形处理器算力配置方法、装置、计算机设备和存储介质 |
-
2021
- 2021-12-29 CN CN202111645466.3A patent/CN114416352A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023216500A1 (zh) * | 2022-05-09 | 2023-11-16 | 苏州元脑智能科技有限公司 | 智算中心的算力资源部署方法、装置、设备及存储介质 |
CN115051988A (zh) * | 2022-06-07 | 2022-09-13 | 瞳见科技有限公司 | 一种基于分布式算力的融合调度*** |
CN115048224A (zh) * | 2022-08-13 | 2022-09-13 | 北京蔚领时代科技有限公司 | 一种基于多个云服务商的算力复用管理方法及其装置 |
CN115048224B (zh) * | 2022-08-13 | 2022-11-29 | 北京蔚领时代科技有限公司 | 一种基于多个云服务商的算力复用管理方法及其装置 |
CN115550370A (zh) * | 2022-12-01 | 2022-12-30 | 浩鲸云计算科技股份有限公司 | 一种基于多因素策略的算力资源最优调度分配方法 |
CN115643263A (zh) * | 2022-12-08 | 2023-01-24 | 阿里巴巴(中国)有限公司 | 云原生平台资源分配方法、存储介质和电子设备 |
CN115643263B (zh) * | 2022-12-08 | 2023-03-21 | 阿里巴巴(中国)有限公司 | 云原生平台资源分配方法、存储介质和电子设备 |
CN117421130A (zh) * | 2023-12-18 | 2024-01-19 | 成都凌亚科技有限公司 | 一种云算力分配***及方法 |
CN117611425A (zh) * | 2024-01-17 | 2024-02-27 | 之江实验室 | 图形处理器算力配置方法、装置、计算机设备和存储介质 |
CN117611425B (zh) * | 2024-01-17 | 2024-06-11 | 之江实验室 | 图形处理器算力配置方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114416352A (zh) | 算力资源分配方法、装置、电子设备及储存介质 | |
US11704144B2 (en) | Creating virtual machine groups based on request | |
CN113110938B (zh) | 一种资源分配方法、装置、计算机设备及存储介质 | |
CN112465146B (zh) | 一种量子与经典混合云平台以及任务执行方法 | |
CN112214329A (zh) | 内存管理方法、装置、设备及计算机可读存储介质 | |
CN109417488A (zh) | 虚拟网络功能资源管理的方法和设备 | |
CN111309440B (zh) | 一种多类型gpu的管理调度的方法和设备 | |
CN109032788B (zh) | 预留资源池动态调度方法、装置、计算机设备及存储介质 | |
CN112148468A (zh) | 一种资源调度方法、装置、电子设备及存储介质 | |
CN110633130A (zh) | 一种基于内存热插拔技术的虚拟内存管理方法和装置 | |
CN113674131A (zh) | 硬件加速器设备管理方法、装置及电子设备和存储介质 | |
CN112529309A (zh) | 一种云数据中心智能管理*** | |
CN112148467A (zh) | 计算资源的动态分配 | |
CN112214321B (zh) | 一种新增微服务的节点选择方法、装置及微服务管理平台 | |
CN111813541B (zh) | 一种任务调度方法、装置、介质和设备 | |
CN116483546B (zh) | 分布式训练任务调度方法、装置、设备及存储介质 | |
CN116881003A (zh) | 资源分配方法、装置、服务设备及存储介质 | |
CN112988383A (zh) | 一种资源分配方法、装置、设备以及存储介质 | |
CN113691575A (zh) | 通信方法、装置及*** | |
CN110955644A (zh) | 一种存储***的io控制方法、装置、设备及存储介质 | |
CN117785486B (zh) | 环境资源调配方法、装置、设备和介质 | |
CN115168057B (zh) | 基于k8s集群的资源调度方法及装置 | |
CN106775917B (zh) | 一种虚拟机启动的方法及*** | |
CN115686744A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN113268346A (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 |