CN116795546B - 面向信息物理生产系统的确定性网算容器设计与实现方法 - Google Patents
面向信息物理生产系统的确定性网算容器设计与实现方法 Download PDFInfo
- Publication number
- CN116795546B CN116795546B CN202310738904.3A CN202310738904A CN116795546B CN 116795546 B CN116795546 B CN 116795546B CN 202310738904 A CN202310738904 A CN 202310738904A CN 116795546 B CN116795546 B CN 116795546B
- Authority
- CN
- China
- Prior art keywords
- network
- task
- resource
- computing
- resources
- 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
- 238000004364 calculation method Methods 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000004519 manufacturing process Methods 0.000 title claims abstract description 35
- 238000013461 design Methods 0.000 title claims abstract description 8
- 238000013468 resource allocation Methods 0.000 claims abstract description 46
- 238000004458 analytical method Methods 0.000 claims abstract description 14
- 230000005540 biological transmission Effects 0.000 claims description 28
- 239000006185 dispersion Substances 0.000 claims description 20
- 230000008878 coupling Effects 0.000 claims description 13
- 238000010168 coupling process Methods 0.000 claims description 13
- 238000005859 coupling reaction Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 9
- 230000001105 regulatory effect Effects 0.000 claims description 8
- 238000012512 characterization method Methods 0.000 claims description 7
- 238000013528 artificial neural network Methods 0.000 claims description 6
- 238000007726 management method Methods 0.000 claims description 6
- 238000003062 neural network model Methods 0.000 claims description 6
- 238000012549 training Methods 0.000 claims description 5
- 230000001276 controlling effect Effects 0.000 claims description 4
- 238000009826 distribution Methods 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000012935 Averaging Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 9
- 238000004422 calculation algorithm Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000009776 industrial production Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
- 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
-
- 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/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出面向信息物理生产系统的确定性网算容器设计与实现方法,在云边协同的信息物理生产系统中,首先获取当前资源供需情况,通过读取任务属性分析任务确定性需求对应的网络、计算资源博弈关系,获取系统当前网络、计算资源利用情况;随后,分析网络、计算资源供给边界;生成网算资源配置表;最后生成网算容器。该方法通过分析任务确定性需求与资源供需关系以及网络、计算间的博弈关系,以虚拟化容器技术为实现手段,从网络、计算资源层面对信息物理生产系统中的任务进行资源按需分配,在保障系统性能基础上进一步提高了网络、计算资源利用率。
Description
技术领域
本发明涉及云边协同技术领域,具体地说是涉及一种面向信息物理生产系统的确定性网算容器设计与实现方法。
背景技术
随着工业4.0的不断发展,工业生产由信息化时代向着智能化时代转型。信息物理生产系统在现代智慧工厂中扮演者“大脑”的角色,控制着工厂的稳定高效运行。
信息物理生产系统本质上来说就是一种集成了传感器、计算机、通信和控制等技术的智能生产系统,它将当前最先进的信息技术和物理技术有机结合,利用物联网、云计算等技术实现物理世界和数字世界的融合,从而实现智能化、自动化和灵活化的工业生产。
值得注意的是,当前的信息物理系统中仍然存在一些问题和挑战,如任务处理所需的各种资源分配不均,整个系统的资源利用率较低、系统性能不稳定等。在这之中,资源利用率低和分配不均问题尤为突出,因为不同的任务对网络、计算等资源的需求不同,且它们对于这些资源的需求还存在竞争与共享的关系,因此如何按需分配和优化利用资源,是当前信息物理生产系统发展过程中亟待解决的问题和需求。
发明内容
针对当前信息物理生产系统中资源分配不均,资源利用效率低,性能不稳定等问题,本发明提出了一种面向信息物理生产系统的确定性网算容器设计与实现方法。该方法通过将系统的网络和计算资源进行协同分配,不仅能保证系统的稳定性及任务响应时间的确定性,而且还大大提高了系统的网络和计算资源利用率。
本发明为实现上述目的所采用的技术方案是:面向信息物理生产系统的确定性网算容器设计与实现方法,包括以下步骤:
获取当前资源供需情况:通过读取任务属性分析任务确定性需求对应的网络、计算资源博弈关系,并获取当前网络、计算资源利用情况;
分析网络、计算资源供给边界:分析各任务在网络、计算资源共享竞争环境下,满足各自确定性需求所需的资源范围;
生产网算资源配置表:在满足任务确定性需求的资源范围内进行资源配置,并结合任务优先级进行共享资源供给调节,输出结果为任务集的网络、计算资源配置表;
生成网算容器:根据对任务的编排调度信息,以及任务集的网络、计算资源配置表,在边缘节点或云端为任务生产相应的容器,并配置对应的网络、计算资源,实现为任务配置各自的网算容器。
所述获取当前资源供需情况,包括以下步骤:
步骤1.1:获取信息物理生产系统的架构信息;
步骤1.2:获取任务信息;
步骤1.3:计算任意节点的网络资源利用率;
步骤1.4:计算各节点的计算资源利用率;
步骤1.5:确定性可保障的网算博弈关系。
所述步骤1.5包含以下步骤:
步骤1.5.1:确定各待调度任务i网络和计算资源的约束:
网络资源约束表达式为,
∑itrans≤B
计算资源约束表达式为,
∑icomput≤S
其中,itrans为任务i获得的网络资源,icomput为任务i获得的计算资源,B为总传输资源也即系统网络资源总量,S为总计算资源也即系统计算资源总量;
步骤1.5.2:对任务i的传输与计算性能进行代数表征:
传输性能表征表达式为,
计算性能表征表达式为,
其中,表示任务被Kubernetes集群成功调度后需要的数据传输时间,表示任务被kubernetes集群成功调度后需要的任务计算时间,workload即任务负载Di,calculation即任务计算量ci,n表示任务i获得的时隙或线程数量,slot表示传输时隙,thread表示线程;
步骤1.5.3:对制造业务约束进行代数表征:
其中,Δ为任意大于0的实数;di表示任务i的相对截止期;
步骤1.5.4:确定传输性能与计算性能的非线性耦合关系。
所述步骤1.5.4具体为:
对于任意待调度任务i,其传输性能与计算性能/>通过径向基神经网络来对二者的关系曲线进行拟合;以传输性能为输入,以计算性能为输出,利用已有的任务数据对该网络模型进行训练,得到收敛后的神经网络模型,模型用函数表示。
所述分析网络、计算资源供给边界,包括以下步骤:
步骤2.1:进行网络资源统一管控;
步骤2.2:进行计算资源统一管控;
步骤2.3:进行网络边界分析;
步骤2.4:进行计算边界分析。
所述步骤2.3对网络边界进行分析,具体为:
任务i的网络资源边界为
B为系统网络资源总量,表示任务被Kubernetes集群成功调度后需要的数据传输时间;workload即任务负载,calculaion即任务计算量,
表示神经网络模型的反函数;itrans为任务i获得的网络资源,icomput为任务i获得的计算资源;di表示任务i的相对截止期;
所述步骤2.4对计算边界进行分析,具体为:
任务i的计算边界为
S为系统计算资源总量,表示任务被kubernetes集群成功调度后需要的任务计算时间,calculation即任务计算量。
所述生产网算资源配置表,包括以下步骤:
步骤3.1:以各节点资源利用率为平均分配评判指标;
步骤3.2:对任务进行资源调度,各任务初始资源需求按资源下界分配,调度过程中考虑利用率均衡;
步骤3.3:当所有任务资源都满足分配时,结束并返回任务网算资源配置表;
步骤3.4:否则,分析资源瓶颈,在系统中保存该调度失败任务信息,跳过该失败任务并进行下一个任务的调度;
步骤3.5:根据资源边界和非线性耦合关系,对有余量的资源进行调节,提高多余类型资源供给,重新进行调度,每次调节资源比例为a%;
步骤3.6:若所有任务都可调度,返回可调度性为100%,及当前分配下的节点负载平均利用率以及任务网算资源配置表;
步骤3.7:若进行n次调节后依然无法100%调度,停止调度,返回期间得到的最大可调度性,和对应的负载平均利用率以及任务网算资源配置表。
所述步骤3.1具体为:
将各节点的网络资源利用率、计算资源利用率分别加权平均得到当前Kubernetes集群的平均网络资源与平均计算资源利用率/>
各集群网络资源利用率离散度计算公式为:
集群计算资源利用率离散度计算公式为:
令网络资源利用率离散度的权重为α,α∈(0,1);j表示集群物理节点;加权后的总资源利用率离散度公式为:
所述步骤3.2具体为:
将任务集中所有任务按照优先级进行排序,按优先级顺序由高到低依次进行调度;
对待调度任务i,根据资源下界为其分配相应的网络与计算资源,同时求出任务i在每一个可调度节点上的总资源利用率的离散度,并求出这些离散度的最小值,即
其中,为当前Kubernetes集群的平均网络资源,/>为平均计算资源利用率;α为网络资源利用率的离散度;
将待调度任务i调度到取得最小值的节点j上;将此时的任务编号、节点编号、网络资源分配以及计算资源分配记录到资源配置表中。
所述生成网算容器,包括以下步骤:
步骤4.1:网络资源分配:按照步骤3得到的网算资源配置表中的资源需求,将任务网络资源分配值,即容器配置文件中的带宽值的关键字设置为对应的要求值;
步骤4.2:计算资源分配:容器的计算资源请求值和限制值设置为相同大小,同时令其网算资源配置表中的要求值;
步骤4.3:构建网算容器:将容器调度到网算资源配置表中要求的云服务器节点,以生成网算容器。
本发明具有以下有益效果及优点:
1.本发明针对当前信息物理生产系统在资源分配和利用效率方面存在的问题进行深入研究,提出的方法提高了系统性能和资源利用效率,同时也进一步提高了信息物理生产系统的智能化水平和实际应用价值。
2.本发明提出的确定性网算容器设计与实现方法与现有技术相比,具有更好的适应性,其中用到的现有技术均有多种替代选择,不同客户可根据具体需求个性化定制。同时,在任务调度算法选择方面,客户也可按需选择多种不同算法。
3.本发明提出了一种针对待调度任务的网络资源需求与计算资源需求之间的确定性耦合关系,利用该耦合关系为各个任务分配系统资源时,可以保证整个系统运行的实时性和可靠性。
附图说明
图1为本发明的方法流程图;
图2为本发明考虑的信息物理生产系统架构图;
图3为本发明中网络资源量化示意图;
图4为本发明中计算资源统一量化示意图;
图5为本发明中网算资源配置表生成流程图;
图6为本发明最终构建的网算容器的资源配置文件示例图。
具体实施方式
为了使本发明涉及的技术方案更加具体明白,以下结合附图以及实施例对本发明做进一步说明。需要注意的是,以下所描述的实施例仅为解释作用,并不能用于限定本发明。
本发明是这样实现的,一种面向信息物理生产系统的确定性网算容器设计与实现方法,在云边协同的信息物理生产系统中,首先获取当前资源供需情况,通过读取任务属性分析任务确定性需求对应的网络、计算资源博弈关系,同时,通过负载监控服务获取系统当前网络、计算资源利用情况;随后,分析网络、计算资源供给边界,即分析各任务在网络、计算资源共享竞争环境下,满足各自确定性需求所需的网络、计算资源供给阈值上、下界,其下界确定依据由任务自身确定性需求决定,上界确定依据由系统中任务负载与资源供给共同决定;然后,生产网算资源配置表,即,在满足系统中任务确定性需求的资源范围内进行资源配置,并结合任务优先级进行共享资源供给调节,其调节目标为满足系统中所有任务的确定性需求,输出结果为任务集的网络、计算资源配置表;最后,生成网算容器,即,根据信息物理生产系统中对任务的编排调度信息,以及本发明中形成的网络、计算资源配置表,在边缘节点或云端为任务生产相应的容器,并配置对应的网络、计算资源,即,为任务配置各自的网算容器。本发明的工作流程图如图1所示。
具体地,本发明的实现包括以下四个步骤:
步骤1:获取当前资源供需情况;
步骤2:分析网络、计算资源供给边界;
步骤3:生成网算资源配置表;
步骤4:生成网算容器;
步骤1中的通过负载监控服务获取当前资源供需情况,包括:
步骤1.1:系统信息获取-架构,组织形式,节点,网络等基本信息;
步骤1.2:任务信息获取-到达时间,周期,截止期,计算量,参数量,负载,优先级等;
步骤1.3:网络资源利用率;
步骤1.4:计算资源利用率;
步骤1.5:确定性可保障的网算博弈关系。
所述步骤1.1中信息物理生产系统的架构为一种云-端两级架构,如图2所示,云端是由多个分布式的云服务器集群构成,这些集群网络、计算等资源数量不同,地理位置也不同,其上部署有Kubernetes,它们共同组成了一个大型的高可用Kuberetes集群,因此每台云服务器可以称为一个kubernetes节点。终端是一些工业机器人与传感器,它们可以利用局域网以及广域网来使用云中资源,以处理自身任务。
所述步骤1.2具体为kubernetes待调度任务信息的获取,其中待调度任务i的相关信息包括到达时间si,周期Ti,相对截止期di,计算量ci,负载Di,优先级ωi。taskset表示系统的待调度任务集。在kubernetes中,这些任务信息被存储在事件对象中,当一个Pod对象创建之前,kubernetes系统会在etcd中记录一个相关事件,其中会包含有关该任务的所有信息,通过使用kubectl命令行工具相关命令可以获取这些信息。
所述步骤1.3计算任意kubernetes节点j的网络资源利用率,通过使用Kubernetes Dashboard资源查看组件可以获取各个节点的网络资源利用率nodeset表示kubernetes集群节点集。
所述步骤1.4计算各节点的计算资源利用率,通过使用metrics资源查看组件可以查看节点j的CPU资源总量以及利用率等指标。
所述步骤1.5包含以下步骤:
步骤1.5.1:确定系统中各待调度任务i网络和计算资源的约束。网络资源约束表达式为,
∑itrans≤B,
计算资源约束表达式为,
∑icomput≤S,
其中itrans为任务i获得的网络资源,icomput为任务i获得的计算资源,B为总传输资源也即系统网络资源总量,S为总计算资源也即系统计算资源总量。
步骤1.5.2:对任务i的传输与计算性能进行代数表征。传输性能表征表达式为,
计算性能表征表达式为,
其中表示任务被Kubernetes集群成功调度后需要的数据传输时间,表示任务被kubernetes集群成功调度后需要的任务计算时间,workload即任务负载Di,calculation即任务计算量ci,n表示任务i获得的时隙或线程数量,slot表示传输时隙,thread表示线程。
步骤1.5.3:对系统的制造业务约束进行代数表征。具体约束表达式为:
其中Δ为任意大于0的实数,这保证了等号恒不成立。
步骤1.5.4:传输性能与计算性能的非线性耦合关系的确定。
所述步骤1.5.4具体为:
由于对于任意待调度任务i,其传输性能与计算性能/>具有复杂的非线性耦合关系,难以通过使用传统的数学模型推导方式来对二者的关系进行表征。因此,本专利引入了机器学习模型来对该非线性耦合关系进行拟合。
进一步地,考虑到待拟合的模型只有一个自变量与一个因变量,在进行算法选择时综合分析了算法的非线性模型拟合能力、训练速度和训练成本后,本专利选择使用径向基神经网络来对二者的关系曲线进行拟合。
进一步地,该神经网络算法以网络性能为输入,以计算性能为输出,训练好的模型用Model表示,训练过程如下式,
进一步地,神经网络本质上就是自变量与因变量之间的一种函数关系,因此训练好的神经网络模型可以用如下数学表达式表示,
其中函数关系f(*)为训练好的神经网络模型。
步骤2中的分析网络、计算资源供给边界,包括:
步骤2.1:网络资源统一管控;
步骤2.2:计算资源统一管控;
步骤2.3:网络边界分析,仅考虑需要卸载或迁移情况,否则本地执行时网络需求为0;
步骤2.4:计算边界分析。
步骤2.1具体为:
已知在TSN标准802.1AS中,通过采用BMCA算法,可实现TSN全网ns级精度时间同步,结合802.Qat协议,通过沿路由路径,对流进行端到端带宽分配和资源预留,可以实现us~ms级时隙调节;在此基础上结合802.Qbv协议,在出端口通过时间感知整形的门控列表,可以保障传输的确定性时延和抖动。
另一方面,以工业5G URLLC场景为例,通过分析5G R17版本标准可知,5G中定义了三种子载波间隔和3个响应的时间槽长度,分别为(15kHZ,30kHZ,60kHZ)和(1000us,500us,250us);通过分配不同子载波频率和时隙,可以实现确定性时延和抖动。
如图3所示,为了实现网络资源的统一管控,首先要构建“时隙-频谱”5G虚拟资源切片与“时隙-路由/节点”TSN/WIA虚拟资源切片,以时隙为纽带建立一体化虚拟网络资源池。结合上述提及的TSN和5G网络的特性,可以实现网络部分的时隙统一。最后,再通过将频谱-时隙的5G切片资源和时隙-路由/节点的TSN/WIA虚拟切片资源进行映射,进一步实现异构网络资源的统一管控。
步骤2.2具体为:
利用容器虚拟化或其它虚拟化技术,限制处理器的工作频率以及内核周期内的复用时隙数,来实现对计算类型资源的虚拟分配。通过构建“时隙-核”CPU虚拟资源块与“时隙-线程”GPU虚拟资源块,以时隙为纽带建立一体化虚拟硬件资源池,将异构物理节点CPU虚拟资源块与GPU虚拟资源块进行映射,实现异构计算资源的统一管控,具体实现方法如图4。其中CPU以单个CPU核为资源分配粒度,GPU以单卡的1%计算能力为资源分配粒度进行分配。
所述步骤2.3对网络边界进行分析具体为:
首先,对任务i的网络资源上界进行分析,为了保证任务的确定性,传输时间应当尽可能小,因此上界为当前网络类型的资源总量。
进一步地,对任务i的网络资源下界进行分析,根据步骤1.5.3得到系统的制造业务约束表达式,当任务i的网络资源刚好取得下界时,等号刚好可以取得,且Δ无限趋近于0,因此约束表达式可以进一步转换为如下形式,
进一步地,再结合步骤1.5.4中得到的计算性能与传输性能之间的非线性耦合关系,即可以得到此时任务i的网络资源下界/>进一步地,得到任务i的网络资源边界为/>
完整的计算过程如下,通过使用python中的符号计算库SymPy,可以将网络性能的代数表达式作为模型输入,从而输出一个含有/>表达式的输出,再用该输出替换上式中的计算性能表达式/>最后将任务i的具体workload、calculation和di的值代入即可求出网络资源下界。
所述步骤2.4对计算边界进行分析。首先,对任务i的计算资源上界进行分析,为了保证任务的确定性,计算时间应当尽可能小,因此上界为当前计算类型的资源总量。
进一步地,对任务i的计算资源下界进行分析。在步骤2.3中已经解出了网络资源的下界,将该网络资源下界的值以及workload、calculation和di代入等式中,即可求解出计算资源的下界/>因此任务i的计算边界为/>
步骤3中的生成网算资源配置表,可基于现有任意调度算法进行网络、计算资源的统一分配,其区别在于不同算法对应的优化目标有所区别,本专利中以计算负载平均分配和可调度性为目标生产网算资源配置表,包括:
步骤3.1:以各节点资源利用率为平均分配评判指标;
步骤3.2:以固定优先级调度策略为基础调度方法对任务进行资源调度,各任务初始资源需求按资源下界分配,调度过程中考虑利用率均衡;
步骤3.3:当所有任务资源都满足分配时,结束,返回任务网算资源配置表;
步骤3.4:否则,分析资源瓶颈,即哪些任务不可调度,是缺少哪类资源;
步骤3.5:根据资源边界和非线性耦合关系,对由余量的资源进行调节,提高多余类型资源供给,重新进行调度,每次调节资源比例为a%;
步骤3.6:若所有任务都可调度,返回可调度性为100%,及当前分配下的节点负载平均利用率;
步骤3.7:若进行n(n依据实际需求而定)次调节后依然无法100%调度,停止调度,返回期间可调度性最优结果和对应的负载平均利用率。
完整调度过程如图5所示,具体地,所述步骤3.1具体为,根据步骤1.3所述方法可获取各节点网络资源利用率,根据步骤1.4所述方法可获取各节点计算资源利用率。
将各节点的网络、计算资源利用率分别加权平均可得到当前Kubernetes集群的平均网络资源与平均计算资源利用率/>
进一步地,充分考虑整个集群的负载均衡,各集群网络资源利用率离散度计算公式为:
集群计算资源利用率离散度计算公式为:
进一步地,利用线性加权法同时考虑集群网络和计算资源负载均衡,令网络资源利用率离散度的权重为α,α默认为0.5,可根据实际需求手动调节;j表示集群物理节点,如系统中的边缘服务器等。加权后的总资源利用率离散度公式为:
所述步骤3.2具体为:
将任务集中所有任务按照优先级进行排序,按优先级顺序由高到低依次进行调度。对待调度任务i,根据步骤2.3和步骤2.4得到的资源下界为其分配相应的网络与计算资源,同时求出任务i在每一个可调度节点上的总资源利用率的离散度,并求出这些离散度的最小值,即
进一步地,将待调度任务i调度到取得最小值的节点j上。将此时的任务编号、节点编号、网络资源分配以及计算资源分配记录到资源配置表中。
所述步骤3.3具体为,当所有任务资源均满足分配时,停止调度算法,输出资源配置表。
所述步骤3.4具体为:
在调度过程中,每当遇到任务i由于缺少某一类资源而无法成功调度时,分析出该任务具体缺少哪类资源,并将其记录下来,跳过该任务进行下一个任务的调度。
所述步骤3.5具体为:
根据步骤3.4的分析结果,步骤2.3和步骤2.4所述资源边界以及步骤1.5.4所述的非线性耦合关系,将网络资源需求与计算资源需求相互转化,对由余量的资源进行调节,提高多余类型资源供给,对未成功调度的任务重新进行调度,每次调节资源比例为a%,a由实际需求决定。
所述步骤3.6具体为:
若所有任务均可调度,返回可调度率为100%,同时返回此时的节点网络与计算资源平均利用率,以及网算资源配置表。
所述步骤3.7具体为:
若进行n次调节后仍存在任务不可调度,则停止调节,返回调节过程中的最优可调度性,此时的节点网络与计算资源平均利用率,以及网算资源配置表。
步骤4中生成网算容器,可基于现有网络管理技术如SDN、Terway等,现有虚拟化技术如vm、docker等进行实现,包括:
步骤4.1:网络资源分配;
步骤4.2:计算资源分配;
步骤4.3:构建网算容器。
所述步骤4.1具体为:
本专利通过使用市面上已有网络插件为网算容器分配网络资源,以阿里云Terway为例,在kubernetes系统中,Pod是调度的最小单位,因此为网算容器分配网络资源是通过给对应的Pod分配来实现的。
具体实现方法为在编写定义Pod的yaml文件时,在文件的metedata字段内添加带宽限制条件,将ingress-bandwidth和egress-bandwidth的限制带宽值设置为步骤3中获得的网算资源配置表中的要求带宽值。
所述步骤4.2具体为:
Kubernetes可以在pod的配置文件中为pod预先定义要求的计算资源,具体实现方法为在编写定义Pod的yaml文件时,在文件的容器资源字段内将容器的计算资源的请求值和限制值设置为相同大小,同时令其等于步骤3中获得的网算资源配置表中的要求值。
所述步骤4.3具体为:
在对网算容器的网络和计算资源进行配置后,还需要将容器调度到步骤3中获得的网算资源配置表中要求的云服务器节点。通过使用Kubernetes调度器功能NodeBinding,在Pod的YAML文件中添加nodeSelector字段,并指定该Pod调度到名称为获得的网算资源配置表中要求的节点上。在以上配置工作都完成后,生成网算容器。在Kubernetes中完整的Pod资源配置文件内容如附图6所示。
Claims (7)
1.面向信息物理生产系统的确定性网算容器设计与实现方法,其特征在于,包括以下步骤:
获取当前资源供需情况:通过读取任务属性分析任务确定性需求对应的网络、计算资源博弈关系,并获取当前网络、计算资源利用情况;
分析网络、计算资源供给边界:分析各任务在网络、计算资源共享竞争环境下,满足各自确定性需求所需的资源范围;
生产-生成网算资源配置表:在满足任务确定性需求的资源范围内进行资源配置,并结合任务优先级进行共享资源供给调节,输出结果为任务集的网络、计算资源配置表;
生成网算容器:根据对任务的编排调度信息,以及任务集的网络、计算资源配置表,在边缘节点或云端为任务生产相应的容器,并配置对应的网络、计算资源,实现为任务配置各自的网算容器;
所述获取当前资源供需情况,包括以下步骤:
步骤1.1:获取信息物理生产系统的架构信息;
步骤1.2:获取任务信息;
步骤1.3:计算任意节点的网络资源利用率;
步骤1.4:计算各节点的计算资源利用率;
步骤1.5:确定性可保障的网算博弈关系;
所述步骤1.5包含以下步骤:
步骤1.5.1:确定各待调度任务i网络和计算资源的约束:
网络资源约束表达式为,
Σitrans≤B
计算资源约束表达式为,
∑icomput≤S
其中,itrans为任务i获得的网络资源,icomput为任务i获得的计算资源,B为总传输资源也即系统网络资源总量,S为总计算资源也即系统计算资源总量;
步骤1.5.2:对任务i的传输与计算性能进行代数表征:
传输性能表征表达式为,
计算性能表征表达式为,
其中,表示任务被Kubernetes集群成功调度后需要的数据传输时间,/>表示任务被kubernetes集群成功调度后需要的任务计算时间,workload即任务负载Di,calculation即任务计算量ci,n表示任务i获得的时隙或线程数量,slot表示传输时隙,thread表示线程;
步骤1.5.3:对制造业务约束进行代数表征:
其中,Δ为任意大于0的实数;di表示任务i的相对截止期;
步骤1.5.4:确定传输性能与计算性能的非线性耦合关系;
生产网算资源配置表,包括以下步骤:
步骤3.1:以各节点资源利用率为平均分配评判指标;
步骤3.2:对任务进行资源调度,各任务初始资源需求按资源下界分配,调度过程中考虑利用率均衡;
步骤3.3:当所有任务资源都满足分配时,结束并返回任务网算资源配置表;
步骤3.4:否则,分析资源瓶颈,在系统中保存该调度失败任务信息,跳过该失败任务并进行下一个任务的调度;
步骤3.5:根据资源边界和非线性耦合关系,对有余量的资源进行调节,提高多余类型资源供给,重新进行调度,每次调节资源比例为a%;
步骤3.6:若所有任务都可调度,返回可调度性为100%,及当前分配下的节点负载平均利用率以及任务网算资源配置表;
步骤3.7:若进行n次调节后依然无法100%调度,停止调度,返回期间得到的最大可调度性,和对应的负载平均利用率以及任务网算资源配置表。
2.根据权利要求1所述的面向信息物理生产系统的确定性网算容器设计与实现方法,其特征在于,所述步骤1.5.4具体为:
对于任意待调度任务i,其传输性能与计算性能/>通过径向基神经网络来对二者的关系曲线进行拟合;以传输性能为输入,以计算性能为输出,利用已有的任务数据对该神经网络进行训练,得到收敛后的神经网络模型,模型用函数/>表示。
3.根据权利要求1所述的面向信息物理生产系统的确定性网算容器设计与实现方法,其特征在于,所述分析网络、计算资源供给边界,包括以下步骤:
步骤2.1:进行网络资源统一管控;
步骤2.2:进行计算资源统一管控;
步骤2.3:进行网络边界分析;
步骤2.4:进行计算边界分析。
4.根据权利要求3所述的面向信息物理生产系统的确定性网算容器设计与实现方法,其特征在于,所述步骤2.3对网络边界进行分析,具体为:
任务i的网络资源边界为
B为系统网络资源总量,表示任务被Kubemetes集群成功调度后需要的数据传输时间;workload即任务负载,calculation即任务计算量,
表示神经网络模型的反函数;itrans为任务i获得的网络资源,icomput为任务i获得的计算资源;di表示任务i的相对截止期;
所述步骤2.4对计算边界进行分析,具体为:
任务i的计算边界为
S为系统计算资源总量,表示任务被kubernetes集群成功调度后需要的任务计算时间,calculation即任务计算量。
5.根据权利要求1所述的面向信息物理生产系统的确定性网算容器设计与实现方法,其特征在于,所述步骤3.1具体为:
将各节点的网络资源利用率计算资源利用率/>分别加权平均得到当前Kubernetes集群的平均网络资源/>与平均计算资源利用率/>
各集群网络资源利用率离散度计算公式为:
集群计算资源利用率离散度计算公式为:
令网络资源利用率离散度的权重为α,α∈(0,1);j表示集群物理节点;加权后的总资源利用率离散度公式为:
6.根据权利要求1所述的面向信息物理生产系统的确定性网算容器设计与实现方法,其特征在于,所述步骤3.2具体为:
将任务集中所有任务按照优先级进行排序,按优先级顺序由高到低依次进行调度;
对待调度任务i,根据资源下界为其分配相应的网络与计算资源,同时求出任务i在每一个可调度节点上的总资源利用率的离散度,并求出这些离散度的最小值,即
其中,为当前Kubernetes集群的平均网络资源,/>为平均计算资源利用率;α为网络资源利用率的离散度;
将待调度任务i调度到取得最小值的节点j上;将此时的任务编号、节点编号、网络资源分配以及计算资源分配记录到资源配置表中。
7.根据权利要求1所述的面向信息物理生产系统的确定性网算容器设计与实现方法,其特征在于,所述生成网算容器,包括以下步骤:
步骤4.1:网络资源分配:按照步骤3得到的网算资源配置表中的资源需求,将任务网络资源分配值,即容器配置文件中的带宽值的关键字设置为对应的要求值;
步骤4.2:计算资源分配:容器的计算资源请求值和限制值设置为相同大小,同时令其网算资源配置表中的要求值;
步骤4.3:构建网算容器:将容器调度到网算资源配置表中要求的云服务器节点,以生成网算容器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310738904.3A CN116795546B (zh) | 2023-06-21 | 2023-06-21 | 面向信息物理生产系统的确定性网算容器设计与实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310738904.3A CN116795546B (zh) | 2023-06-21 | 2023-06-21 | 面向信息物理生产系统的确定性网算容器设计与实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116795546A CN116795546A (zh) | 2023-09-22 |
CN116795546B true CN116795546B (zh) | 2024-02-13 |
Family
ID=88035862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310738904.3A Active CN116795546B (zh) | 2023-06-21 | 2023-06-21 | 面向信息物理生产系统的确定性网算容器设计与实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116795546B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905340A (zh) * | 2012-12-26 | 2014-07-02 | 中国电信股份有限公司 | 网络资源协同分配方法、装置及互联网网络 |
CN109491790A (zh) * | 2018-11-02 | 2019-03-19 | 中山大学 | 基于容器的工业物联网边缘计算资源分配方法及系统 |
CN110321198A (zh) * | 2019-07-04 | 2019-10-11 | 广东石油化工学院 | 一种容器云平台计算资源与网络资源协同调度方法及系统 |
CN112306464A (zh) * | 2020-10-14 | 2021-02-02 | 中国科学院沈阳自动化研究所 | 利用数字孪生体实现工业场景下信息物理融合方法和系统 |
CN114690719A (zh) * | 2021-12-21 | 2022-07-01 | 中国科学院沈阳自动化研究所 | 一种面向平台的高效信息物理生产系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107770096B (zh) * | 2017-12-11 | 2021-07-30 | 国网河南省电力公司信息通信公司 | 一种基于负载均衡的sdn/nfv网络动态资源分配方法 |
-
2023
- 2023-06-21 CN CN202310738904.3A patent/CN116795546B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905340A (zh) * | 2012-12-26 | 2014-07-02 | 中国电信股份有限公司 | 网络资源协同分配方法、装置及互联网网络 |
CN109491790A (zh) * | 2018-11-02 | 2019-03-19 | 中山大学 | 基于容器的工业物联网边缘计算资源分配方法及系统 |
CN110321198A (zh) * | 2019-07-04 | 2019-10-11 | 广东石油化工学院 | 一种容器云平台计算资源与网络资源协同调度方法及系统 |
CN112306464A (zh) * | 2020-10-14 | 2021-02-02 | 中国科学院沈阳自动化研究所 | 利用数字孪生体实现工业场景下信息物理融合方法和系统 |
CN114690719A (zh) * | 2021-12-21 | 2022-07-01 | 中国科学院沈阳自动化研究所 | 一种面向平台的高效信息物理生产系统 |
Non-Patent Citations (4)
Title |
---|
Learning-based Edge Computing Architecture for Regional Scheduling in Manufacturing System;Tianfang Xue 等;2021 IEEE 19th International Conference on Industrial Informatics;全文 * |
Low-Power Heterogeneous Networking Method Based on NB-IoT and WSN;Mo Guan 等;2023 6th International Conference on Communication Engineering and Technology (ICCET);全文 * |
基于任务-资源分配图优化选取的网格依赖任务调度;陈廷伟;张斌;郝宪文;;计算机研究与发展(第10期);全文 * |
基于边云智能协同的配电网信息物理系统;陈思;吴秋新;龚钢军;孙跃;魏沛芳;刘韧;;北京信息科技大学学报(自然科学版)(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116795546A (zh) | 2023-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9916183B2 (en) | Scheduling mapreduce jobs in a cluster of dynamically available servers | |
Wei et al. | QoS-aware resource allocation for video transcoding in clouds | |
CN104123182B (zh) | 基于主从架构的MapReduce任务跨数据中心调度系统及方法 | |
Nguyen et al. | A hybrid scheduling algorithm for data intensive workloads in a mapreduce environment | |
CN114610474B (zh) | 一种异构超算环境下多策略的作业调度方法及系统 | |
Guo et al. | Delay-optimal scheduling of VMs in a queueing cloud computing system with heterogeneous workloads | |
CN114787830A (zh) | 异构集群中的机器学习工作负载编排 | |
CN109783225B (zh) | 一种多租户大数据平台的租户优先级管理方法及系统 | |
CN104112049B (zh) | 基于P2P构架的MapReduce任务跨数据中心调度系统及方法 | |
CN114996018A (zh) | 面向异构计算的资源调度方法、节点、系统、设备及介质 | |
Islam et al. | SLA-based scheduling of spark jobs in hybrid cloud computing environments | |
Ma et al. | vLocality: Revisiting data locality for MapReduce in virtualized clouds | |
Li et al. | Endpoint-flexible coflow scheduling across geo-distributed datacenters | |
Shu-Jun et al. | Optimization and research of hadoop platform based on fifo scheduler | |
Zhang et al. | A parallel task scheduling algorithm based on fuzzy clustering in cloud computing environment | |
Han et al. | An adaptive scheduling algorithm for heterogeneous Hadoop systems | |
CN116795546B (zh) | 面向信息物理生产系统的确定性网算容器设计与实现方法 | |
Malathy et al. | Performance improvement in cloud computing using resource clustering | |
CN116389591A (zh) | 一种基于跨域分布式处理系统及调度优化方法 | |
Rumi et al. | Optimization techniques within the hadoop eco-system: A survey | |
CN116795545B (zh) | 基于网算容器的信息物理生成系统及其管理方法 | |
Cao et al. | Online cost-rejection rate scheduling for resource requests in hybrid clouds | |
CN108009074B (zh) | 一种基于模型和动态分析的多核系统实时性评估方法 | |
Uchechukwu et al. | Scalable analytic models for performance efficiency in the cloud | |
Nzanywayingoma et al. | Task scheduling and virtual resource optimising in Hadoop YARN-based cloud computing environment |
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 |