CN117176722A - 动态重构方法、装置及服务器 - Google Patents
动态重构方法、装置及服务器 Download PDFInfo
- Publication number
- CN117176722A CN117176722A CN202210585822.5A CN202210585822A CN117176722A CN 117176722 A CN117176722 A CN 117176722A CN 202210585822 A CN202210585822 A CN 202210585822A CN 117176722 A CN117176722 A CN 117176722A
- Authority
- CN
- China
- Prior art keywords
- task
- computing
- constraint
- calculation
- type
- 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 96
- 238000004364 calculation method Methods 0.000 claims abstract description 162
- 238000012545 processing Methods 0.000 claims abstract description 99
- 230000015654 memory Effects 0.000 claims description 38
- 238000004891 communication Methods 0.000 claims description 15
- 230000008685 targeting Effects 0.000 claims description 2
- 238000007726 management method Methods 0.000 description 32
- 238000005457 optimization Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000013468 resource allocation Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000005012 migration Effects 0.000 description 3
- 238000013508 migration Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- RYAUSSKQMZRMAI-YESZJQIVSA-N (S)-fenpropimorph Chemical compound C([C@@H](C)CC=1C=CC(=CC=1)C(C)(C)C)N1C[C@H](C)O[C@H](C)C1 RYAUSSKQMZRMAI-YESZJQIVSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提出了一种动态重构方法、装置及服务器,所述方法包括:获取计算任务的算力需求;实时更新当前算力资源;根据所述计算任务的算力需求和所述当前算力资源建立任务时延约束、任务类型约束和计算资源约束,以计算费用最小化为目标确定处理所述计算任务的目标异构设备。实现了在满足各计算任务延迟要求的前提下,充分利用异构设备的计算能力完成计算任务,且计算花费最小。
Description
【技术领域】
本申请实施例涉及算力网络技术领域,尤其涉及的一种动态重构方法、装置及服务器。
【背景技术】
随着智能互联的物联网(IoT)设备的激增,终端设备获得和需要处理的数据量越来越大,对终端设备的计算,存储和电池寿命方面要求愈加严苛。移动边缘计算(MEC)通过将任务部署在附近的边缘服务器上,解决了终端设备所面临的问题。边缘计算的核心能力之一是网络,可以在网络边缘融合网络、计算、存储、应用等能力,低算力的任务在终端直接完成,而算力要求高的任务被安排在边缘服务器上处理。
目前已知的方法中,算力网络的动态重构、任务部署大多采用固定的策略,例如根据用户所处的位置,将用户数据上传至离用户最近的计算资源,尽可能快的执行任务,并根据资源池的编排及负载情况以及调度策略,进行任务的调度。这样的方法虽然能够完成计算任务,但并不能确保算力网络的整体最优。例如仅采用算力资源作为约束条件,以最小算力回价作为目标,未考虑算力网络内某些应用对延迟时间敏感、网络设备异构以及计算任务的计算花费大的问题。因此,提供一种能够完成任务且计算费用低的动态重构方法是目前亟需解决的问题。
【发明内容】
本申请实施例提供了一种动态重构方法,实现了在满足各计算任务延迟要求的前提下,充分利用异构设备的计算能力完成计算任务,且计算花费最小。
第一方面,本申请实施例提供了一种动态重构方法,应用于算力网络,所述算力网络包括异构设备,所述方法包括:获取计算任务的算力需求,所述计算任务的算力需求包括计算任务的任务类型、时延要求和内存占用;实时更新当前算力资源,所述当前算力资源包括当前算力网络的空闲算力资源类型和数量、任务部署延迟、以及不同异构设备处理单位不同类型计算任务的处理时间和费用;根据所述计算任务的算力需求和所述当前算力资源建立任务时延约束、任务类型约束和计算资源约束,以计算费用最小化为目标确定处理所述计算任务的目标异构设备。
第一方面的有益效果,通过获取计算任务的算力需求、动态管理算力网络内异构设备空闲算力的数量及类型,根据任务类型/时延要求/内存占用/工作模式,以计算任务需要的算力数量及类型、计算任务对延迟的容忍度、各异构设备的计算能力及任务部署延迟等为限制条件,以计算费用最小化为目标,将计算任务分解给算力网络内最优的异构设备,实现了在满足各计算任务延迟要求的前提下,充分利用异构设备的计算能力完成计算任务,且计算花费最小。
在一种可能的实现方式中,所述获取计算任务的算力需求,包括:解析应用的需求获得计算任务的任务类型、时延要求和内存占用;对所述计算任务的任务类型、时延要求和内存占用进行描述,获得计算任务的算力需求。
在一种可能的实现方式中,所述根据所述计算任务的算力需求和所述当前算力资源建立任务时延约束、任务类型约束和计算资源约束,以计算费用最小化为目标确定处理所述计算任务的目标异构设备,包括:建立所述任务时延约束、任务类型约束和计算资源约束的公式包括:约束1:表示应用a的t型计算任务是否分配给算力网络中的异构设备m;约束2:/>表示异构设备m是否位于算力网络l位置处;约束3:/>表示算力网络l位置处是否存在处理应用a产生的t型计算任务的异构设备m;约束4:/> 表示算力网络l位置处是否存在应用a产生的t型计算任务;约束5:/>表示一个异构设备最多部署在算力网络的一个位置;约束6:/>表示算力网络的一个位置最多部署一个异构设备;约束7:/>表示应用a的t型计算任务最多部署到一个异构设备m上;约束8:/>表示应用a部署到算力网络内的计算任务需要的算力介于算力网络内所有异构设备的空闲算力资源的范围内,其中/>表示处理应用a的t型计算任务所需要的算力,/>分别表示分配给应用a的l位置处的异构设备m的t型算力的最小值与最大值;约束9:/>表示所有应用部署到算力网络内的计算任务需要的算力资源不能超出算力网络内处理t型计算任务的总的计算资源;约束10:/> 表示计算任务只能分配给有效异构设备;约束11:/>表示每一个t型计算任务都映射到能处理t型任务的应用a上;约束12:/> 表示l位置处的异构设备处理t型计算任务的总延迟要小于应用a处理t型计算任务的最大延迟/>其中/>表示l位置处的异构设备处理t型计算任务的网络延迟,/>表示l位置处的异构设备处理t型计算任务的计算延迟,l位置处的异构设备处理t型计算任务的总延迟为网络延迟与计算延迟之和;其中计算/>的公式为:其中/>表示异构设备m单位时间内能处理t型计算任务的能力,/>表示l位置处的应用产生的t型计算任务的任务量,/>表示处理延时,/>表示排队延时;建立所述计算费用最小化计算的公式包括:/>其中/>表示异构设备m是否部署到算力网络l位置处,Fl表示异构设备部署在l位置处的费用,R表示异构设备处理单位算力的费用,Bm表示异构设备m的总处理量,/>表示异构设备m在l位置处处理计算任务的通信费用;根据所述任务时延约束、任务类型约束和计算资源约束的公式,以及所述计算费用最小化计算的公式求解出目标异构设备。
在一种可能的实现方式中,当所述计算任务包括任务管理队列中的多个计算任务时,所述根据所述任务时延约束、任务类型约束和计算资源约束的公式,以及所述计算费用最小化计算的公式求解出目标异构设备,包括:(1)针对每一个计算任务求解满足所述任务时延约束、任务类型约束和计算资源约束的公式的任务分配方法,使用计算费用最小化计算的公式计算每一个任务分配方法的计算花费;(2)将每一个计算任务分配得到的计算花费进行分组与不分组排序,若分组排序中某一计算任务的任务分配方法不足两种,则优先对其进行分配,否则在不分组排序中选取序列中计算花费最少的任务分配方法,作为该计算任务的任务分配方法;(3)将已分配的计算任务剔除出任务管理队列并更新算力网络内各异构设备的状态;(4)循环进行第(2)、(3)步骤,直至所有计算任务分配完成;(5)若有新的计算任务加入任务管理队列,则对所有的未计算的计算任务重复上述步骤(1)-(4)。
在一种可能的实现方式中,所述动态重构方法还包括:实时记录各个异构设备的空闲算力及正在处理的计算任务,建立计算任务处理队列,当异构设备离开所述算力网络时,根据所述计算任务处理队列将所述异构设备未处理完的计算任务按照当前算力资源重新分配;当某类型计算任务超出算力网络内能处理该类型计算的空闲算力资源时,将该计算任务部署到边缘服务器上,以任务计算费用最小化为目标选择要部署的边缘服务器。
第二方面,本申请实施例提供一种动态重构装置,应用于算力网络,所述算力网络包括异构设备,所述装置包括:计算任务获取模块,用于获取计算任务的算力需求,所述计算任务的算力需求包括计算任务的任务类型、时延要求和内存占用;计算资源管理模块,用于实时更新当前算力资源,所述当前算力资源包括当前算力网络的空闲算力资源类型和数量、任务部署延迟、以及不同异构设备处理单位不同类型计算任务的处理时间和费用;计算任务分配模块,用于根据所述计算任务的算力需求和所述当前算力资源建立任务时延约束、任务类型约束和计算资源约束,以计算费用最小化为目标确定处理所述计算任务的目标异构设备。
在一种可能的实现方式中,所述计算任务分配模块包括:约束公式建立子模块,用于建立所述任务时延约束、任务类型约束和计算资源约束的公式包括:约束1:表示应用a的t型计算任务是否分配给算力网络中的异构设备m;约束2:/>表示异构设备m是否位于算力网络l位置处;约束3:/>表示算力网络l位置处是否存在处理应用a产生的t型计算任务的异构设备m;约束4:/>表示算力网络l位置处是否存在应用a产生的t型计算任务;约束5:/>表示一个异构设备最多部署在算力网络的一个位置;约束6:/>表示算力网络的一个位置最多部署一个异构设备;约束7:/>表示应用a的t型计算任务最多部署到一个异构设备m上;约束8:/>表示应用a部署到算力网络内的计算任务需要的算力介于算力网络内所有异构设备的空闲算力资源的范围内,其中/>表示处理应用a的t型计算任务所需要的算力,/>分别表示分配给应用a的l位置处的异构设备m的t型算力的最小值与最大值;约束9:/>表示所有应用部署到算力网络内的计算任务需要的算力资源不能超出算力网络内处理t型计算任务的总的计算资源;约束10:/>表示计算任务只能分配给有效异构设备;约束11:/>表示每一个t型计算任务都映射到能处理t型任务的应用a上;约束12:/>表示l位置处的异构设备处理t型计算任务的总延迟要小于应用a处理t型计算任务的最大延迟/>其中/>表示l位置处的异构设备处理t型计算任务的网络延迟,/>表示l位置处的异构设备处理t型计算任务的计算延迟,l位置处的异构设备处理t型计算任务的总延迟为网络延迟与计算延迟之和;其中计算/>的公式为:/> 其中/>表示设备m单位时间内能处理t型计算任务的能力,/>表示l位置处的应用产生的t型计算任务的任务量,/>表示处理延时,/>表示排队延时;计算公式建立子模块,用于建立计算费用最小化计算的公式包括:/>其中表示异构设备m是否部署到算力网络l位置处,Fl表示异构设备部署在l位置处的费用,R表示异构设备处理单位算力的费用,Bm表示异构设备m的总处理量,/>表示异构设备m在l位置处处理计算任务的通信费用;异构设备求解子模块,用于根据所述任务时延约束、任务类型约束和计算资源约束的公式,以及所述计算费用最小化计算的公式求解出目标异构设备。
在一种可能的实现方式中,当所述计算任务包括任务管理队列中的多个计算任务时,所述异构设备求解子模块的工作方法包括:(1)针对每一个计算任务求解满足所述任务时延约束、任务类型约束和计算资源约束的公式的任务分配方法,使用计算费用最小化计算的公式计算每一个任务分配方法的计算花费;(2)将每一个计算任务分配得到的计算花费进行分组与不分组排序,若分组排序中某一计算任务的任务分配方法不足两种,则优先对其进行分配,否则在不分组排序中选取序列中计算花费最少的任务分配方法,作为该计算任务的任务分配方法;(3)将已分配的计算任务剔除出任务管理队列并更新算力网络内各异构设备的状态;(4)循环进行第(2)、(3)步骤,直至所有计算任务分配完成;(5)若有新的计算任务加入任务队列,则对所有的未计算的计算任务重复上述步骤(1)-(4)。
第三方面,本申请实施例提供一种服务器,包括:至少一个处理器;与所述处理器通信连接的至少一个通信接口和至少一个存储器,其中,所述通信接口用于所述服务器和其他设备或网络通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行第一方面提供的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行第一方面提供的方法
应当理解的是,本申请实施例的第二~四方面与本申请实施例的第一方面的技术方案一致,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
【附图说明】
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一种算力网络分布层级示意图;
图2为本申请实施例提供的一种动态重构方法的流程示意图;
图3为本申请实施例提供的一种动态重构装置的结构示意图;
图4为本申请实施例提供的一种服务器的结构示意图。
【具体实施方式】
为了更好的理解本说明书的技术方案,下面结合附图对本申请实施例进行详细描述。
应当明确,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本说明书保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
为便于本领域技术人员对本申请的技术方案进行理解,下面对本申请所涉及的技术术语进行说明。
(1)边缘计算:边缘计算指在靠近物或数据源头的一侧,采用网络、计算、存储、应用核心能力为一体的开放平台,就近提供最近服务。其应用程序在边缘侧发起请求,产生更快的网络服务响应,满足行业在实时业务、应用智能、安全与隐私保护等方面的基本需求。随着物联网设备的增加,数据量也在以惊人的速度增长,巨大的网络占用使传统云计算方案不再适用,边缘计算的出现能够减少网络流量,将一部分需求转移到边缘端解决。边缘计算处于物理实体和工业连接之间,被认为是5G与工业互联网、物联网等的重要结合点,能够推动相关产业带来飞跃性发展。
(2)算力网络:算力网络是当前面向计算与网络融合的新架构、新协议、新技术探索,将当前的计算能力状况和网络状况作为路由信息发布到网络,网络将计算任务报文路由到相应的计算节点,实现用户体验最优、计算资源利用率最优、网络效率最优。通过算力网络内建计算任务动态路由的能力,根据业务需求,基于实时的计算资源性能、网络性能、成本等多维因素,动态、灵活地调度计算任务,从而提高资源利用率,网络利用效率,提高业务用户体验。面向边缘计算场景,可通过算力网络实现边缘计算成网,实现边-边协作,利用服务的多实例、多副本特性,实现用户的就近接入和服务的负载均衡,以解决其部署复杂、效率低、资源复用率不高等问题,助力边缘计算规模部署。
(3)任务调度:任务调度是指在算力网络中,根据任务和资源的实际情况,将任务分配到最佳资源上进行执行的过程。在算力网络环境中,任务的类型、状态、数量随时变化,资源具有异构性和扩展性,可自由组合为不同的任务提供服务。性能良好的任务调度算法可以优化服务质量参数(QoS),如最大完工时间、响应时间、吞吐量、资源利用率、任务拒绝率、可靠性、可伸缩性、能耗、执行成本等,并可以在不违反服务级别协议(SLA)的前提下,考虑各类约束,例如截止日期、优先级、经济成本等,实现用户的硬指标约束,同时可避免负载不均衡的发生,这是一个典型的NP困难问题。任务调度算法的类型根据不同的分类方式具有不同的定义。根据任务的类型,可把任务调度分为独立任务调度和工作流调度,根据任务调度算法的特点,可将算法分为启发式、元启发式和混合式,根据任务运行的环境,可分为单网络环境调度和跨网络任务调度。
(4)动态服务部署:移动边缘计算网络通过动态服务部署技术更改业务应用的部署位置,以此来满足终端设备的服务需求。动态服务部署虽能保证服务的连续性,提升用户的服务质量,但同时会导致额外的服务迁移传输时延,服务重新部署过程时延,以及额外的迁移代价。动态服务器部署技术就能够在如何提升用户移动性预测准确率,提高网络的负载均衡性能及降低服务迁移代价三者之间根据不同需求取得平衡。
(5)简单网络管理协议(Simple Network Management Protocol,SNMP):是一种基于TCP/IP协议族的网络管理标准,在IP网络中管理网络节点(如服务器、工作站、路由器、交换机等)的标准协议。SNMP能够使网络管理员提高网络管理效能,及时发现并解决网络问题以及规划网络的增长。网络管理员还可以通过SNMP接收网络节点的通知消息以及告警事件报告等来获知网络出现的问题。
(6)非确定性不等式(Non-deterministic polynomial,NP):所谓非确定性,就是指可以用一定数量的运算去解决多项式时间内可解决的问题。NP问题通俗来说是其解的正确性能够被“很容易检查”的问题,这里“很容易检查”指的是存在一个多项式检查算法。这类问题难以求解,但是可在多项式时间内验证你给出的答案是否正确。
参见图1,图1为本申请实施例提供的一种算力网络分布层级示意图,如图1所示,算力组网层将各种计算设备组网,形成统一的计算网络,能够根据用户的任务类型、算力需求自动将计算任务编排到网络中最合适的设备上执行。当算力网络不足以处理计算任务时,将计算任务部署到附近的边缘服务器进行计算;当遇到更大算力的计算任务时则需要将计算任务部署到云端执行。其中,部署位置邻近的终端设备利用无线传输组成网络,利用同一网络内的物联网设备的空闲算力资源,解决了单一终端算力不充足及将任务部署到边缘服务器存在延迟的问题。将低算力及隐私任务在算力网络内计算,高算力问题部署到边缘服务器上进行计算。
目前算力网络由于某些应用对延迟时间敏感、网络内设备异构导致了计算任务完成不理想的问题,另外也存在计算任务的计算花费大等问题。基于以上问题,本申请实施例提供一种动态重构方法,以解决上述存在的问题。
图2为本申请实施例提供的一种动态重构方法的流程示意图,如图1所示,所述动态重构方法可以包括:
步骤101:获取计算任务的算力需求,所述计算任务的算力需求包括计算任务的任务类型、时延要求和内存占用。
需要说明的是,获取计算任务的算力需求可以通过用户应用程序接口(Application Programming Interface,API)实现,例如用户端通过API将任务需求传送至算力网络系统中,任务需求可以包含任务类型/任务指标等信息,用户端还可以通过API接收计算结果。当用户通过给定的API将需求传入到算力网络中后,算力网络可以自动进行部署。
步骤102:实时更新当前算力资源,所述当前算力资源包括当前算力网络的空闲算力资源类型和数量、任务部署延迟、以及不同异构设备处理单位不同类型计算任务的处理时间和费用。
需要说明的是,实时更新当前算力资源可以通过算力资源发现与管理模块实现。这里的异构设备,即真实异构资源设备,指的是各种资源的实体,可以是电脑,手机,路由器,智能终端等,也可以是网络附属存储NAS,私有云等。异构设备能够得到相应的计算任务,并对其进行处理,并将计算结果传递给任务发出的应用。同时异构设备需要接受算力资源发现与管理模块的管理,以实时确定异构设备是否加入算力网络,异构设备需要将自己实时的位置,空闲算力资源,计算能力,单位处理费用等信息传递给算力资源发现与管理模块。
这里,算力资源发现与管理模块实时更新算力资源可以结合简单网络管理协议(Simple Network Management Protocol,SNMP)对网络进行活动设备的检查,得到所有的活动设备,然后通过SNMP取得设备的基本信息,根据基本信息确定设备的类型,再根据设备的类型取得相应设备的详细信息,汇总成描述符待用。当计算任务请求使用算力资源时,可以进行寻址并调用。算力资源发现与管理模块可以根据异构设备的实时计算状况,更新算力网络中各异构设备的计算状况。
在一些实施例中,实时更新当前算力资源还可以通过异构设备算力记录表实现。异构设备拥有不同的计算能力(主要包括双精度、单精度和半精度下的算力),数据到达算力设备的时延,算力设备的内存以及MAC地址等信息。通过登记各个设备的计算能力,能够为实时更新算力资源提供基础数据。其中,浮点数是计算机上最常用的数据类型之一,常用的浮点数有双精度和单精度,半精度更多是为了降低数据传输和存储成本。双精度有64位,单精度32位,半精度则是16位。在分布式训练中,使用半精度比单精度节省一半传输成本。
步骤103:根据所述计算任务的算力需求和所述当前算力资源建立任务时延约束、任务类型约束和计算资源约束,以计算费用最小化为目标确定处理所述计算任务的目标异构设备。
需要说明的是,步骤103可以通过算力资源分配模块实现,算力资源分配模块接受用户API的计算任务,及当前算力资源的实时信息,根据算力网络内空闲算力资源的类型及数量、计算任务的类型及计算量、计算任务对延迟的容忍程度等约束,以计算费用最小为优化目标,将计算任务分配给不同的网络设备。
在一些实施例中,网络规模庞大时,每台路由器针对每个应用服务都需要获取全网信息后再独立进行路径的计算,此时,整个网络维护工作量是无法接受的,所以为了算力网络运行的可行性,我们需要对算力网络进行统一的管理,将信息的同步及路径的计算集中化,将服务路由表项完成计算后再下发给路由器,路由器只负责数据层面的业务报文转发。其中,路由表是指路由器或者其他互联网网络设备上存储的一张路由信息表,该表中存有到达特定网络终端的路径。
这里,网络管理员可以轻松地对网络中支持SNMP协议的设备进行管理。基于SNMP协议所提供的统一接口能够屏蔽不同设备间的差异,不必理会设备是什么类型、是哪个厂家生产的,从而实现自动化网络管理。
本申请实施例提供的动态重构方法,通过获取计算任务的算力需求、动态管理算力网络内异构设备空闲算力的数量及类型,根据任务类型/时延要求/内存占用/工作模式,以计算任务需要的算力数量及类型、计算任务对延迟的容忍度、各异构设备的计算能力及任务部署延迟等为限制条件,以计算费用最小化为目标,将计算任务分解给算力网络内最优的异构设备,实现了在满足各计算任务延迟要求的前提下,充分利用异构设备的计算能力完成计算任务,且计算花费最小。
在一些实施例中,步骤101中获取计算任务的算力需求,可以包括:解析应用的需求获得计算任务的任务类型、时延要求和内存占用;对所述计算任务的任务类型、时延要求和内存占用进行描述,获得计算任务的算力需求。
需要说明的是,接收到应用需求后,首先解析应用需求,通过分析获得计算任务的计算需求,综合任务类型/时延要求/内存占用等几项要求,对任务进行描述。使用键值对描述计算任务需求,用户需求解析完成之后,以JSON格式将任务描述发送给算力资源分配模块。上述方法解决了算力网络内设备异构的难题。
在一些实施例中,步骤103中所述根据所述计算任务的算力需求和所述当前算力资源建立任务时延约束、任务类型约束和计算资源约束,以计算费用最小化为目标确定处理所述计算任务的目标异构设备,可以根据任务类型/时延要求/内存占用/工作模式,以及当前算力网络内的设备的不同类型的空闲计算资源、任务部署延迟及不同设备的处理时间,建立任务时延约束及计算资源约束,通过计算费用最小化计算,将任务分配给最优的异构设备。详细的步骤可以包括:
首先,将算力网络内计算费用最小值作为优化目标,建立计算费用最小化计算的公式包括:其中/>表示异构设备m是否部署到算力网络l位置处,Fl表示异构设备部署在l位置处的费用,R表示异构设备处理单位算力的费用,Bm表示异构设备m的总处理量,/>表示异构设备m在l位置处处理计算任务的通信费用。
其次,算力网络的计算任务分配要在满足任务时延约束、任务类型约束和计算资源约束的约束条件,建立所述任务时延约束、任务类型约束和计算资源约束的公式进行优化可以包括:
约束1:表示应用a的t型计算任务是否分配给算力网络中位于l位置处的异构设备m上;
约束2:表示异构设备m是否位于算力网络中l位置处;
约束3:表示算力网络l位置处是否存在处理应用a产生的t型计算任务的异构设备m;
约束4:表示算力网络内l位置处是否存在应用a产生的t型计算任务;
约束5:表示一个异构设备最多部署在算力网络的一个位置;
约束6:表示算力网络的一个位置最多部署一个异构设备;
约束7:表示应用a的t型计算任务最多部署到一个异构设备m上;
约束8:表示应用a部署到算力网络内的计算任务需要的算力应介于算力网络内所有异构设备的空闲算力资源的范围内,其中表示处理应用a的t型计算任务所需要的算力,/>分别表示分配给应用a的l位置处的异构设备m的t型算力的最小值与最大值;
约束9:表示算力网络内所有应用部署到网络内的计算任务需要的算力资源不能超出算力网络内处理t型计算任务的总的计算资源;
约束10:表示计算任务只能分配给有效异构设备;
约束11:表示每一个t型计算任务都映射到能处理t型任务的应用a上;
约束12:表示l位置处的异构设备处理t型计算任务的总延迟要小于应用a处理t型计算任务的最大延迟/>其中/>表示l位置处的异构设备处理t型计算任务的网络延迟,/>表示l位置处的异构设备处理t型计算任务的计算延迟,l位置处的异构设备处理t型计算任务的总延迟为网络延迟与计算延迟之和;其中计算/>的公式为: 其中/>表示异构设备m单位时间内能处理t型计算任务的能力,/>表示l位置处的应用产生的t型计算任务的任务量,/>表示处理延时,/>表示排队延时;
最后,根据所述任务时延约束、任务类型约束和计算资源约束的公式,以及所述计算费用最小化计算的公式求解出目标异构设备。
传统算力网络计算资源分配方法以最小时间延迟为优化目标,未考虑异构设备能处理的计算任务的类型不同及异构设备的处理费用。本申请实施例通过时间延迟约束保证计算任务满足时间延迟,以最小计算花费为优化目标实现了算力网络花费最小的任务规划。任务规划过程考虑了不同设备处理不同类型的单位计算任务的费用,并以整个算力网络内的计算费用最小值为优化目标,建立了满足计算任务要求、应用延时容忍等约束条件下算力资源的调度问题。本申请实施例提供的方法综合考虑了算力网络内的时间延迟和计算花费,与现有方法不同并且具有很高的应用价值。
进一步的,上述问题是一个以约束1-约束12为约束条件,以计算费用最小化计算的公式为优化目标的非确定性多项式问题,难以同时求解多个不等式,得到最优解。针对这一问题本申请实施例提出了以下的优化策略:
当所述计算任务包括任务管理队列中的多个计算任务时,所述根据所述任务时延约束、任务类型约束和计算资源约束的公式,以及所述计算费用最小化计算的公式求解出目标异构设备,包括:
(1)针对每一个计算任务求解满足所述约束1-约束12的公式的任务分配方法,使用计算费用最小化计算的公式计算每一个任务分配方法的计算花费。
(2)将每一个计算任务分配得到的计算花费进行分组与不分组排序,若分组排序中某一计算任务的任务分配方法不足两种,则优先对其进行分配,否则在不分组排序中选取序列中计算花费最少的任务分配方法,作为该计算任务的任务分配方法。
其中,将每一个计算任务分配得到的计算花费进行分组排序是指:将每一个计算任务对应的多种任务分配方法进行单独排序;将每一个计算任务分配得到的计算花费进行不分组排序是指:将多个计算任务对应的多种任务分配方法进行混合排序。
(3)已分配的计算任务对后续计算任务的分配不会产生影响,将已分配的计算任务剔除出任务管理队列并更新算力网络内各异构设备的状态。
(4)循环进行第(2)、(3)步骤,直至所有计算任务分配完成。
(5)若有新的计算任务加入任务队列,则对所有的未计算的计算任务重复上述步骤(1)-(4)。
本申请实施例提出的算力网络计算资源部署问题是混合整数规划问题,传统的算法直接求解该问题,计算复杂度高,算力部署的延时长,本申请实施例提出了一种任务计算延时的计算方法,求得每个计算任务的计算延时,在保证每个计算任务能够完成的前提下,求解每一个计算任务的局部最优解,每次对最优任务进行部署,部署完一个任务进行一次网络结构与待部署任务更新,对每一个计算任务进行部署。针对新加入的任务,采用对所有未计算的任务重新进行任务部署优化的策略。本申请实施例提出的优化方法,考虑了网络的动态变化,采用贪心算法能够求得任务部署的局部最优解,有效优化了算力网络内计算任务的分配问题。
在一些实施例中,所述动态重构方法还包括:实时记录各个异构设备的空闲算力及正在处理的计算任务,建立计算任务处理队列,当异构设备离开所述算力网络时,根据所述计算任务处理队列将所述异构设备未处理完的计算任务按照当前算力资源重新分配。
需要说明的是:当算力资源分配模块将计算任务分配给算力网络内不同的计算设备时,任务记录模块同时采用队列的存储方式将待处理的计算任务和处理该任务的设备的IP值记录,并将记录的信息实时传递给算力资源发现与管理模块。若计算任务完成则在任务处理队列中删除该记录。
示例性的,针对异构设备随时加入或离开算力网络的情况,当算力资源分配模块调动某一设备空闲算力资源计算某一任务时,任务记录模块需要记录下相关信息,与算力资源发现与管理模块共同约束计算任务的执行情况,当异构设备在未完成计算任务离开时,任务记录模块需要将计算任务重新返回给算力资源分配模块。算力资源分配模块根据算力资源发现与管理模块提供的异构设备的基本信息,对异构设备及计算任务建立决策参数,确定所有任务是否在执行以及异构设备汇总剩余的空闲算力资源,算力资源分配模块将对该计算任务重新调度算力进行计算。
传统的算力网络未考虑异构设备的动态变化,以及动态变化可能引起的计算任务未完成的情况,而本申请实施例通过算力资源发现与管理模块与任务记录模块,实现了实时调整算力网络结构及更新算力任务部署情况的功能。算力资源发现与管理模块能够实时发现算力网络内的各种异构设备所在的位置、剩余不同类型的空闲计算资源、以及处理单位不同类型计算任务的费用。任务记录模块能够记录分配给不同异构设备的不同类型的计算任务,与算力资源发现与管理模块中异构设备所在位置求交集,即可确定该异构设备是否参与算力组网及分配的计算任务是否被计算。如异构设备离开网络,则任务记录模块能够将其未计算完成的计算任务的初始问题返还给算力资源分配模块。
在一些实施例中,所述动态重构方法还包括:当某类型计算任务超出算力网络内能处理该类型计算的空闲算力资源时,将该计算任务部署到边缘服务器上,以任务计算费用最小化为目标选择要部署的边缘服务器。
需要说明的是,若算力网络内的计算任务超出了算力网络的最大空闲计算资源,则需要将任务部署到距离应用位置最近的边缘服务器上。
示例性的,算力资源发现与管理模块实时更新算力网络内异构设备的空闲算力资源,用以实现任务管理队列内的任务分配。若某类型计算任务超出算力网络内能处理该类型计算的空闲算力资源,则需将该任务部署到边缘服务器上,以任务计算费用最小化为目标,选择要部署的边缘服务器。上述移动边缘服务器任务部署方法,降低了算力网络任务部署到边缘服务器上的费用。
图3为本申请实施例提供的一种动态重构装置的结构示意图,所述动态重构装置可以设置在服务器中,如图3所示,所述动态重构装置可以包括:计算任务获取模块201、计算资源管理模块202和计算任务分配模块203;
其中,计算任务获取模块201,用于获取计算任务的算力需求,所述计算任务的算力需求包括计算任务的任务类型、时延要求和内存占用;
计算资源管理模块202,用于实时更新当前算力资源,所述当前算力资源包括当前算力网络的空闲算力资源类型和数量、任务部署延迟、以及不同异构设备处理单位不同类型计算任务的处理时间和费用;
计算任务分配模块203,用于根据所述计算任务的算力需求和所述当前算力资源建立任务时延约束、任务类型约束和计算资源约束,以计算费用最小化为目标确定处理所述计算任务的目标异构设备。
在一些实施例中,所述计算任务分配模块包括:约束公式建立子模块,用于建立所述任务时延约束、任务类型约束和计算资源约束的公式包括:约束1:表示应用a的t型计算任务是否分配给算力网络中的异构设备m;约束2:/>表示异构设备m是否位于算力网络l位置处;约束3:/> 表示算力网络l位置处是否存在处理应用a产生的t型计算任务的异构设备m;约束4:/>表示算力网络l位置处是否存在应用a产生的t型计算任务;约束5:/>表示一个异构设备最多部署在算力网络的一个位置;约束6:/>表示算力网络的一个位置最多部署一个异构设备;约束7:/>表示应用a的t型计算任务最多部署到一个异构设备m上;约束8:/>表示应用a部署到算力网络内的计算任务需要的算力介于算力网络内所有异构设备的空闲算力资源的范围内,其中/>表示处理应用a的t型计算任务所需要的算力,/>分别表示分配给应用a的l位置处的异构设备m的t型算力的最小值与最大值;约束9:/>表示所有应用部署到算力网络内的计算任务需要的算力资源不能超出算力网络内处理t型计算任务的总的计算资源;约束10:表示计算任务只能分配给有效异构设备;约束11:/>表示每一个t型计算任务都映射到能处理t型任务的应用a上;约束12:/> 表示l位置处的异构设备处理t型计算任务的总延迟要小于应用a处理t型计算任务的最大延迟/>其中/>表示l位置处的异构设备处理t型计算任务的网络延迟,/>表示l位置处的异构设备处理t型计算任务的计算延迟,l位置处的异构设备处理t型计算任务的总延迟为网络延迟与计算延迟之和;其中计算/>的公式为:/>其中/>表示设备m单位时间内能处理t型计算任务的能力,/>表示l位置处的应用产生的t型计算任务的任务量,/>表示处理延时,/>表示排队延时;
计算公式建立子模块,用于建立计算费用最小化计算的公式包括:其中/>表示异构设备m是否部署到算力网络l位置处,Fl表示异构设备部署在l位置处的费用,R表示异构设备处理单位算力的费用,Bm表示异构设备m的总处理量,/>表示异构设备m在l位置处处理计算任务的通信费用;
异构设备求解子模块,用于根据所述任务时延约束、任务类型约束和计算资源约束的公式,以及所述计算费用最小化计算的公式求解出目标异构设备。
在一些实施例中,当所述计算任务包括任务管理队列中的多个计算任务时,所述异构设备求解子模块的工作方法包括:(1)针对每一个计算任务求解满足所述任务时延约束、任务类型约束和计算资源约束的公式的任务分配方法,使用计算费用最小化计算的公式计算每一个任务分配方法的计算花费;(2)将每一个计算任务分配得到的计算花费进行分组与不分组排序,若分组排序中某一计算任务的任务分配方法不足两种,则优先对其进行分配,否则在不分组排序中选取序列中计算花费最少的任务分配方法,作为该计算任务的任务分配方法;(3)将已分配的计算任务剔除出任务管理队列并更新算力网络内各异构设备的状态;(4)循环进行第(2)、(3)步骤,直至所有计算任务分配完成;(5)若有新的计算任务加入任务队列,则对所有的未计算的计算任务重复上述步骤(1)-(4)。
图3所示实施例提供的动态重构装置可用于执行本说明书图2所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
图4为本申请实施例提供的一种服务器的结构示意图,如图4所示,所述服务器可以是动态重构装置的又一种可能的结构,可以包括处理器301;与所述处理器301通信连接的通信接口302和存储器303、总线304,其中:处理器301用于对装置的动作进行控制管理,例如,执行上述方法实施例中所示的方法流程中的各个步骤,和/或用于执行本文所描述的技术的其它过程;通信接口302用于支持所述服务器和其他网络实体设备或网络通信;存储器303存储有可被处理器执行的程序指令,所述处理器调用所述程序指令能够执行本说明书图2所示实施例提供的动态重构方法。
其中,上述处理器301可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,单元和电路。该处理器可以是中央处理器,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,单元和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
存储器303可以包括易失性存储器,例如随机存取存储器;该存储器也可以包括非易失性存储器,例如只读存储器,快闪存储器,硬盘或固态硬盘;该存储器还可以包括上述种类的存储器的组合。
总线304可以是扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。总线304可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行本说明书图2所示实施例提供的动态重构方法。
上述计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(readonly memory,ROM)、可擦式可编程只读存储器(erasable programmable read onlymemory,EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、射频(radio frequency,RF)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本说明书操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(localarea network,LAN)或广域网(wide area network,WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本发明实施例的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本说明书的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本说明书的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本说明书的实施例所属技术领域的技术人员所理解。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
在本说明书所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本说明书各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(processor)执行本说明书各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
Claims (10)
1.一种动态重构方法,其特征在于,应用于算力网络,所述算力网络包括异构设备,所述方法包括:
获取计算任务的算力需求,所述计算任务的算力需求包括计算任务的任务类型、时延要求和内存占用;
实时更新当前算力资源,所述当前算力资源包括当前算力网络的空闲算力资源类型和数量、任务部署延迟、以及不同异构设备处理单位不同类型计算任务的处理时间和费用;
根据所述计算任务的算力需求和所述当前算力资源建立任务时延约束、任务类型约束和计算资源约束,以计算费用最小化为目标确定处理所述计算任务的目标异构设备。
2.根据权利要求1所述的方法,其特征在于,所述获取计算任务的算力需求,包括:
解析应用的需求获得计算任务的任务类型、时延要求和内存占用;
对所述计算任务的任务类型、时延要求和内存占用进行描述,获得计算任务的算力需求。
3.根据权利要求1所述的方法,其特征在于,所述根据所述计算任务的算力需求和所述当前算力资源建立任务时延约束、任务类型约束和计算资源约束,以计算费用最小化为目标确定处理所述计算任务的目标异构设备,包括:
建立所述任务时延约束、任务类型约束和计算资源约束的公式包括:
约束1:表示应用a的t型计算任务是否分配给算力网络中的异构设备m;
约束2:表示异构设备m是否位于算力网络l位置处;
约束3:表示算力网络l位置处是否存在处理应用a产生的t型计算任务的异构设备m;
约束4:表示算力网络l位置处是否存在应用a产生的t型计算任务;
约束5:表示一个异构设备最多部署在算力网络的一个位置;
约束6:表示算力网络的一个位置最多部署一个异构设备;
约束7:表示应用a的t型计算任务最多部署到一个异构设备m上;
约束8:表示应用a部署到算力网络内的计算任务需要的算力介于算力网络内所有异构设备的空闲算力资源的范围内,其中/>表示处理应用a的t型计算任务所需要的算力,/>分别表示分配给应用a的l位置处的异构设备m的t型算力的最小值与最大值;
约束9:表示所有应用部署到算力网络内的计算任务需要的算力资源不能超出算力网络内处理t型计算任务的总的计算资源;
约束10:表示计算任务只能分配给有效异构设备;
约束11:表示每一个t型计算任务都映射到能处理t型任务的应用a上;
约束12:表示l位置处的异构设备处理t型计算任务的总延迟要小于应用a处理t型计算任务的最大延迟/>其中/>表示l位置处的异构设备处理t型计算任务的网络延迟,/>表示l位置处的异构设备处理t型计算任务的计算延迟,l位置处的异构设备处理t型计算任务的总延迟为网络延迟与计算延迟之和;其中计算/>的公式为: 其中/>表示异构设备m单位时间内能处理t型计算任务的能力,/>表示l位置处的应用产生的t型计算任务的任务量,/>表示处理延时,/>表示排队延时;
建立所述计算费用最小化计算的公式包括: 其中/>表示异构设备m是否部署到算力网络l位置处,Fl表示异构设备部署在l位置处的费用,R表示异构设备处理单位算力的费用,Bm表示异构设备m的总处理量,/>表示异构设备m在l位置处处理计算任务的通信费用;
根据所述任务时延约束、任务类型约束和计算资源约束的公式,以及所述计算费用最小化计算的公式求解出目标异构设备。
4.根据权利要求3所述的方法,其特征在于,当所述计算任务包括任务管理队列中的多个计算任务时,所述根据所述任务时延约束、任务类型约束和计算资源约束的公式,以及所述计算费用最小化计算的公式求解出目标异构设备,包括:
(1)针对每一个计算任务求解满足所述任务时延约束、任务类型约束和计算资源约束的公式的任务分配方法,使用计算费用最小化计算的公式计算每一个任务分配方法的计算花费;
(2)将每一个计算任务分配得到的计算花费进行分组与不分组排序,若分组排序中某一计算任务的任务分配方法不足两种,则优先对其进行分配,否则在不分组排序中选取序列中计算花费最少的任务分配方法,作为该计算任务的任务分配方法;
(3)将已分配的计算任务剔除出任务管理队列并更新算力网络内各异构设备的状态;
(4)循环进行第(2)、(3)步骤,直至所有计算任务分配完成;
(5)若有新的计算任务加入任务管理队列,则对所有的未计算的计算任务重复上述步骤(1)-(4)。
5.根据权利要求1所述的方法,其特征在于,还包括:
实时记录各个异构设备的空闲算力及正在处理的计算任务,建立计算任务处理队列,当异构设备离开所述算力网络时,根据所述计算任务处理队列将所述异构设备未处理完的计算任务按照当前算力资源重新分配;
当某类型计算任务超出算力网络内能处理该类型计算的空闲算力资源时,将该计算任务部署到边缘服务器上,以任务计算费用最小化为目标选择要部署的边缘服务器。
6.一种动态重构装置,其特征在于,应用于算力网络,所述算力网络包括异构设备,所述装置包括:
计算任务获取模块,用于获取计算任务的算力需求,所述计算任务的算力需求包括计算任务的任务类型、时延要求和内存占用;
计算资源管理模块,用于实时更新当前算力资源,所述当前算力资源包括当前算力网络的空闲算力资源类型和数量、任务部署延迟、以及不同异构设备处理单位不同类型计算任务的处理时间和费用;
计算任务分配模块,用于根据所述计算任务的算力需求和所述当前算力资源建立任务时延约束、任务类型约束和计算资源约束,以计算费用最小化为目标确定处理所述计算任务的目标异构设备。
7.根据权利要求6所述的装置,其特征在于,所述计算任务分配模块包括:
约束公式建立子模块,用于建立所述任务时延约束、任务类型约束和计算资源约束的公式包括:
约束1:表示应用a的t型计算任务是否分配给算力网络中的异构设备m;
约束2:表示异构设备m是否位于算力网络l位置处;
约束3:表示算力网络l位置处是否存在处理应用a产生的t型计算任务的异构设备m;
约束4:表示算力网络l位置处是否存在应用a产生的t型计算任务;
约束5:表示一个异构设备最多部署在算力网络的一个位置;
约束6:表示算力网络的一个位置最多部署一个异构设备;
约束7:表示应用a的t型计算任务最多部署到一个异构设备m上;
约束8:表示应用a部署到算力网络内的计算任务需要的算力介于算力网络内所有异构设备的空闲算力资源的范围内,其中/>表示处理应用a的t型计算任务所需要的算力,/>分别表示分配给应用a的l位置处的异构设备m的t型算力的最小值与最大值;
约束9:表示所有应用部署到算力网络内的计算任务需要的算力资源不能超出算力网络内处理t型计算任务的总的计算资源;
约束10:表示计算任务只能分配给有效异构设备;
约束11:表示每一个t型计算任务都映射到能处理t型任务的应用a上;
约束12:表示l位置处的异构设备处理t型计算任务的总延迟要小于应用a处理t型计算任务的最大延迟/>其中/>表示l位置处的异构设备处理t型计算任务的网络延迟,/>表示l位置处的异构设备处理t型计算任务的计算延迟,l位置处的异构设备处理t型计算任务的总延迟为网络延迟与计算延迟之和;其中计算/>的公式为: 其中/>表示设备m单位时间内能处理t型计算任务的能力,/>表示l位置处的应用产生的t型计算任务的任务量,/>表示处理延时,/>表示排队延时;
计算公式建立子模块,用于建立计算费用最小化计算的公式包括:其中/>表示异构设备m是否部署到算力网络l位置处,Fl表示异构设备部署在l位置处的费用,R表示异构设备处理单位算力的费用,Bm表示异构设备m的总处理量,/>表示异构设备m在l位置处处理计算任务的通信费用;
异构设备求解子模块,用于根据所述任务时延约束、任务类型约束和计算资源约束的公式,以及所述计算费用最小化计算的公式求解出目标异构设备。
8.根据权利要求7所述的装置,其特征在于,当所述计算任务包括任务管理队列中的多个计算任务时,所述异构设备求解子模块的工作方法包括:
(1)针对每一个计算任务求解满足所述任务时延约束、任务类型约束和计算资源约束的公式的任务分配方法,使用计算费用最小化计算的公式计算每一个任务分配方法的计算花费;
(2)将每一个计算任务分配得到的计算花费进行分组与不分组排序,若分组排序中某一计算任务的任务分配方法不足两种,则优先对其进行分配,否则在不分组排序中选取序列中计算花费最少的任务分配方法,作为该计算任务的任务分配方法;
(3)将已分配的计算任务剔除出任务管理队列并更新算力网络内各异构设备的状态;
(4)循环进行第(2)、(3)步骤,直至所有计算任务分配完成;
(5)若有新的计算任务加入任务队列,则对所有的未计算的计算任务重复上述步骤(1)-(4)。
9.一种服务器,其特征在于,包括:至少一个处理器;与所述处理器通信连接的至少一个通信接口和至少一个存储器,其中,所述通信接口用于所述服务器和其他设备或网络通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至5任一所述的动态重构方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至5任一所述的动态重构方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210585822.5A CN117176722A (zh) | 2022-05-26 | 2022-05-26 | 动态重构方法、装置及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210585822.5A CN117176722A (zh) | 2022-05-26 | 2022-05-26 | 动态重构方法、装置及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117176722A true CN117176722A (zh) | 2023-12-05 |
Family
ID=88941819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210585822.5A Pending CN117176722A (zh) | 2022-05-26 | 2022-05-26 | 动态重构方法、装置及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117176722A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117421108A (zh) * | 2023-12-15 | 2024-01-19 | 企商在线(北京)数据技术股份有限公司 | 一种异构算力平台设计方法、平台及资源调度方法 |
CN117762632A (zh) * | 2023-12-26 | 2024-03-26 | 浙江仙宫云科技有限公司 | 一种基于算力操作系统的算力管理方法 |
CN117762632B (zh) * | 2023-12-26 | 2024-07-12 | 浙江仙宫云科技有限公司 | 一种基于算力操作系统的算力管理方法 |
-
2022
- 2022-05-26 CN CN202210585822.5A patent/CN117176722A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117421108A (zh) * | 2023-12-15 | 2024-01-19 | 企商在线(北京)数据技术股份有限公司 | 一种异构算力平台设计方法、平台及资源调度方法 |
CN117762632A (zh) * | 2023-12-26 | 2024-03-26 | 浙江仙宫云科技有限公司 | 一种基于算力操作系统的算力管理方法 |
CN117762632B (zh) * | 2023-12-26 | 2024-07-12 | 浙江仙宫云科技有限公司 | 一种基于算力操作系统的算力管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | MAP based modeling method and performance study of a task offloading scheme with time-correlated traffic and VM repair in MEC systems | |
US9497139B2 (en) | Client-allocatable bandwidth pools | |
Tran et al. | COSTA: Cost-aware service caching and task offloading assignment in mobile-edge computing | |
US9154589B1 (en) | Bandwidth-optimized cloud resource placement service | |
Singh et al. | Machine-learning-based prediction for resource (re) allocation in optical data center networks | |
US9621425B2 (en) | Method and system to allocate bandwidth for heterogeneous bandwidth request in cloud computing networks | |
US9306870B1 (en) | Emulating circuit switching in cloud networking environments | |
US20140351106A1 (en) | Bandwidth metering in large-scale networks | |
US9722930B2 (en) | Exploiting probabilistic latency expressions for placing cloud applications | |
US10846788B1 (en) | Resource group traffic rate service | |
Xu et al. | PDMA: Probabilistic service migration approach for delay‐aware and mobility‐aware mobile edge computing | |
WO2022001941A1 (zh) | 网元管理方法、网管系统、独立计算节点、计算机设备、存储介质 | |
Kibalya et al. | A reinforcement learning based approach for 5G network slicing across multiple domains | |
CN115348637A (zh) | 网络拓扑结构优化方法、装置、存储介质与电子设备 | |
Zhao et al. | Security-SLA-guaranteed service function chain deployment in cloud-fog computing networks | |
Liao et al. | Live: learning and inference for virtual network embedding | |
CN117176722A (zh) | 动态重构方法、装置及服务器 | |
Ghazar et al. | Pricing utility-based virtual networks | |
Lin et al. | Energy-aware service function chaining embedding in NFV networks | |
Gholamipour et al. | Online admission control and resource allocation in network slicing under demand uncertainties | |
Lu et al. | Cost-efficient resource provisioning in delay-sensitive cooperative fog computing | |
Abouelela et al. | Multidomain hierarchical resource allocation for grid applications | |
Feng et al. | COVE: Co-operative virtual network embedding for network virtualization | |
Li et al. | A load balancing algorithm for solving multi‐objective virtual network embedding | |
CN115280737B (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 |