CN109936472A - 面向雾计算的节点计算能力描述方法、交互方法及其设备 - Google Patents
面向雾计算的节点计算能力描述方法、交互方法及其设备 Download PDFInfo
- Publication number
- CN109936472A CN109936472A CN201711369417.5A CN201711369417A CN109936472A CN 109936472 A CN109936472 A CN 109936472A CN 201711369417 A CN201711369417 A CN 201711369417A CN 109936472 A CN109936472 A CN 109936472A
- Authority
- CN
- China
- Prior art keywords
- node
- computing capability
- computing
- information
- processor
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
-
- 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/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
- G06F9/5044—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 considering hardware capabilities
-
- 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/5083—Techniques for rebalancing the load in a distributed system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开了一种面向雾计算的节点计算能力描述方法,同时公开了一种面向雾计算的节点计算能力交互方法,还公开了一种面向雾计算的节点设备。本发明充分挖掘影响计算能力的关键参数,能够更准确地描述节点的计算能力。获得这些关键参数后,能够更好地判别该节点适合处理的计算类型和数据规模,预估该节点执行计算任务所需的时延和成本,从而进一步辅助节点间的计算任务分配。
Description
技术领域
本发明涉及一种面向雾计算的节点计算能力描述方法,同时涉及一种面向雾计算的节点计算能力交互方法,还涉及一种面向雾计算的节点设备,属于计算通信技术领域。
背景技术
随着网络架构的持续演进,云计算、雾计算等先进的分布式计算概念被陆续提出,用于应对爆发式增长的数据流量需求和低时延业务的挑战。云计算(Cloud Computing)通过将存储、控制、处理能力都集中在功能强大的云服务器中,利用集中式数据处理和资源管理,提高了网络的资源利用效率和能量效率。但是,通过远程访问云服务器的方式提供服务势必会带来一定的数据传输和处理时延,这对于具有超高时延要求的物联网应用(例如自动驾驶)来说是无法接受的。
另一方面,随着物联网应用的快速发展,网络的连接数和产生的数据流量正在以指数级速度增长。如果将所有数据都传送到云服务器中进行处理,将会给通信网络造成极大的负担。为了克服云计算的时延问题和网络带宽限制,美国思科(Cisco)公司推出了雾计算(Fog Computing)的计算模式。在该计算模式中,数据、数据处理和应用程序集中在网络边缘设备中,而不是几乎全部保存在云服务器中。
如图1所示,雾计算利用了从云服务器到网络边缘设备、直至终端设备的计算、存储、通信、管理等功能,形成了从云服务器到终端的连续服务区域。前述网络边缘设备可以是传统的网络设备,例如早已部署在网络中的路由器、交换机、网关等,也可以是专门部署的本地服务器,统称为雾节点(后文中简称为节点)。
雾计算通过对前述连续服务区域内的各种资源进行灵活的分配和管理,可以高效智能地为多种垂直行业和应用领域的用户提供服务,从而减少了通信网络的负载,降低了传输和计算时延,同时提高了资源利用效率和能量效率。
不同于云计算的集中式管理架构,雾计算采用的异构分层架构更为复杂。如何在具有不同能力的网络节点之间进行高效的计算能力信息交互和计算任务分配,将直接影响整个通信网络的时延、容量和资源利用效率等性能。因此,设计合理有效的节点计算能力描述方法及其信息交互方法是现有技术中亟待解决的关键问题。
发明内容
本发明所要解决的首要技术问题在于提供一种面向雾计算的节点计算能力描述方法。
本发明所要解决的另一技术问题在于提供一种面向雾计算的节点计算能力交互方法。
本发明所要解决的又一技术问题在于提供一种面向雾计算的节点设备。
为实现上述的发明目的,本发明采用下述的技术方案:
根据本发明实施例的第一方面,提供一种面向雾计算的节点计算能力描述方法,通过以下信息描述节点计算能力:
第一信息是处理器类型;
第二信息是计算单元个数;
第三信息是频率;以及
第四信息是每计算单元每周期执行的浮点操作数。
其中较优地,所述第四信息包括每计算单元的乘加器个数信息和每乘加器每周期执行的浮点操作数信息。
其中较优地,在所述处理器类型为CPU时,所述计算单元的个数指CPU核数,所述乘加器的个数指混合乘加器个数;
在所述处理器类型为GPU时,所述计算单元的个数指流处理器个数,所述乘加器的个数指乘加单元个数;
在所述处理器类型为FPGA或ASIC时,所述计算单元的个数指数字信号处理单元个数,所述乘加器的个数指乘加单元个数;
在所述处理器类型为DSP时,所述计算单元的个数指DSP内核数,所述乘加器的个数指加法器和乘法器个数。
根据本发明实施例的第二方面,提供一种面向雾计算的节点计算能力交互方法,其中:
在雾计算系统为集中式系统架构,包括多个低层节点和至少一个高层管理节点的情况下,
所述低层节点向所述高层管理节点或者向所述低层节点,发送节点计算能力信息,
所述高层管理节点接收到所述节点计算能力信息,并根据所述节点计算能力信息计算出所述低层节点的计算能力,以用于计算任务分配;
在雾计算系统为分布式系统架构,仅包括位于同一逻辑层的多个节点的情况下,各节点通过请求-响应方式或者广播方式交互相应的节点计算能力信息,以用于计算任务分配。
其中较优地,所述节点计算能力信息包括处理器类型、计算单元个数、频率以及每计算单元每周期执行的浮点操作数。
其中较优地,所述高层管理节点将每个所述处理器的所述计算单元个数、所述频率、所述每计算单元每周期执行的浮点操作数相乘,得到所述处理器的峰值浮点运算次数。
其中较优地,所述每计算单元每周期执行的浮点操作数,包括每计算单元的乘加器个数信息和每乘加器每周期执行的浮点操作数信息。
其中较优地,所述低层节点向与其同一逻辑层的低层节点广播所述节点计算能力信息。
根据本发明实施例的第三方面,提供一种面向雾计算的节点设备,包括处理器和存储器,所述处理器读取所述存储器中的计算机程序,用于执行以下操作:
读取来自另一个节点设备的节点计算能力信息,所述节点计算能力信息包括处理器类型、计算单元个数、频率以及每计算单元每周期执行的浮点操作数;
将每个所述处理器的所述计算单元个数、所述频率、所述每计算单元每周期执行的浮点操作数进行整合,作为所述另一个节点设备的节点计算能力;
将所述节点计算能力与所述另一个节点设备的ID对应存储。
其中较优地,所述节点计算能力信息进一步包括计算资源占用率,
所述节点设备将每个所述处理器的所述计算单元个数、所述频率、所述每计算单元每周期执行的浮点操作数,以及所述计算资源占用率进行整合,作为所述另一个节点设备的节点计算能力。
其中较优地,所述节点设备通过请求-响应方式获得另一个节点设备的节点计算能力信息。
或者,所述节点设备通过广播方式获得另一个节点设备的节点计算能力信息。
与现有技术相比较,本发明充分挖掘影响计算能力的关键参数,能够更准确地描述节点的计算能力。获得这些关键参数后,能够更好地判别该节点适合处理的计算类型和数据规模,预估该节点执行计算任务所需的时延和成本,从而进一步辅助节点间的计算任务分配。本发明尤其适用于雾计算的异构分层架构,有望被进一步标准化。
附图说明
图1为雾计算的网络部署场景示例图;
图2(a)和图2(b)分别为两种表示节点计算能力的信息内容示例;
图3为雾计算所采用的集中式系统架构示例图;
图4(a)和图4(b)分别为面向集中式系统架构的两种信息交互过程流程图;
图5为雾计算所采用的分布式系统架构示例图;
图6(a)和图6(b)分别为面向分布式系统架构的两种信息交互过程流程图;
图7为本发明实施例中,一种分层异构的雾计算架构示意图;
图8为图7所示的实施例中,节点1的计算能力信息内容示例图;
图9为图7所示的实施例中,节点2的计算能力信息内容示例图;
图10为图7所示的实施例中,节点3的计算能力信息内容示例图;
图11为参与雾计算的节点设备的结构示例图。
具体实施方式
下面结合附图和具体实施例对本发明的技术内容进行详细具体的说明。
在雾计算中,运算资源对于接入本地网络的不定向用户公开,谁用谁提出申请,以共享方式提高资源利用率,以冗余方式提高整个通信网络的可靠性。因此,用户(即参与雾计算的节点)准确描述和分享自身的计算能力信息是一项十分重要的基础性工作。
在OpenFog联盟发布的控制和管理面通信接口文档(OpenFog Interface CWG-001,Communication Interface:Control and Management Planes,May 2017)中,提出利用现有的简单服务发现协议(Simple Service Discovery Protocol,SSDP)来实现节点之间的服务发现。SSDP协议是通用即插即用(Universal Plug and Play,UPnP)协议的一部分,它提供了在局域网里发现服务的机制。客户端可以通过使用SSDP协议,根据自己的需要查询在自己所在的局域网里面提供特定服务(例如具有时钟服务)的设备。提供服务的设备也可以通过使用SSDP协议,向自己所在的局域网里面的控制点声明它的存在。但是,SSDP协议并未涉及节点的计算能力描述方式和对应的计算能力信息交互方式。
针对上述问题,本发明充分考虑到参与雾计算的各种处理器的多样性,认为需要采用一种统一的方法来描述处理器的计算能力。在雾计算系统中,需要充分利用具有不同计算能力的节点设备。不同的节点设备中除了具备常规的存储器,例如静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、快闪存储器、磁盘或光盘之外,还可能包含具有不同特点和优势的处理器,例如中央处理器(CPU)、图形处理器(GPU)、现场可编程逻辑门阵列(FPGA)、专用集成电路(ASIC)、数字信号处理(DSP)芯片等。其中,存储器用于存储处理器的可执行指令。以下是对不同类型的处理器的简单说明:
●CPU(Central Processing Unit)是一块超大规模的集成电路,主要包括算术逻辑运算单元(Arithmetic Logic Unit,ALU)、控制单元(Control Unit)、高速缓冲存储器(Cache)和动态随机存取存储器(Dynamic Random Access Memory,DRAM),及实现它们之间联系的数据、控制及状态的总线(Bus)。CPU作为通用处理器,兼顾计算和控制,其中70%的晶体管用来构建存储器和控制单元,以处理复杂逻辑和提高指令的执行效率,真正的计算单元ALU只占了CPU结构中较小的一部分。因此,CPU的计算通用性强,可以处理的计算复杂度高,但计算性能一般。
●GPU(Graphics Processing Unit)擅长做类似图像处理的并行计算,GPU能够提供大量的计算单元(多达几千个计算单元)和大量的高速内存,可以同时对很多数据进行并行处理。GPU中的晶体管更多用于计算单元,其逻辑控制单元与CPU相比较为简单,且一个逻辑控制单元对应多个计算单元,所以要想使计算单元充分并行起来,必然要求处理的算法本身复杂度较低,且处理的数据之间相互独立,这样才能充分发挥GPU的计算能力。
●FPGA(Field Programmable Gate Array)作为一种高性能、低功耗的可编程芯片,可以根据客户定制来做针对性的算法设计,并且可以重复编程。FPGA与CPU的不同在于FPGA无法应对没有被编程过的指令。编程方式一旦确定,FPGA就只能根据被编程的处理逻辑和方式来处理特定的数据输入。但这样的架构换来的是FPGA内部几乎全是计算单元,因此FPGA的实际运算能力会强得多,尤其是在运行简单但重复性高的任务的时候。并且由于省去了CPU的取指和译码两个步骤,FPGA重复运行相同代码的效率得到了极大的提高。
●ASIC(Application Specific Integrated Circuit)是为了某种特定的需求而专门定制的芯片。ASIC的结构和FPGA较为类似,但ASIC是专用集成电路,一旦设计制造完成后电路就固定了,无法再改变。ASIC需要更多时间进行特别设计以满足不同应用的需求,它与通用芯片相比,具有体积小、功耗低、计算性能高、计算效率高、芯片出货量越大成本越低的优势。
●DSP(Digital Signal Processor)芯片是指能够实现数字信号处理技术的芯片。DSP芯片的内部采用程序和数据分开的哈佛结构,具有硬件乘法器和多功能运算单元,广泛采用流水线操作,提供特殊的DSP指令,可以用来快速的实现各种数字信号处理算法。
在现有技术中,常用的计算性能评估指标是每秒的浮点运算次数(floating-point operations per second,FLOPS)。按照IEEE 754标准,浮点运算是指单精度(32位)或者双精度(64位)的加法或乘法。业内一般采用峰值FLOPS来评估不同处理器的性能,这代表了处理器的计算能力理论极限。但是,本发明中考虑到峰值FLOPS在实际中很难达到,仅仅使用这项指标难以精确地描述处理器的计算能力。因此,本发明进一步通过处理器类型、每个处理器的计算单元个数、频率、每个计算单元每周期执行的浮点操作数、每个计算单元包含的乘加单元个数和每个乘加单元每周期执行的浮点操作数以及处理器的计算资源占用率等多项关键参数,全面准确地描述节点的计算能力。在获得这些关键参数后,能够更好地判别该节点适合处理的计算类型和数据规模,预估该节点执行计算任务所需的时延和成本,从而进一步辅助进行节点之间的计算任务分配。
基于上述思路,本发明首先提供了一种面向雾计算的节点计算能力描述方法(简称为描述方法)。在该描述方法中,首先确定参与雾计算的节点的计算能力极限。在本发明的实施例中,某个节点的计算能力极限是由处理器类型、每个处理器的计算单元个数、频率、每个计算单元每周期执行的浮点操作数、每个计算单元包含的乘加单元个数和每个乘加单元每周期执行的浮点操作数等参数确定的。通过这些参数描述的计算能力极限意味着该节点从理论上只能提供这么大的计算能力,没有进一步挖掘潜力的空间了。然后,进一步确定参与雾计算的节点的计算能力使用状态。在本发明的实施例中,该计算能力使用状态主要是指处理器的计算资源占用率,也可以包括参与某次计算任务的计算单元个数或者计算单元工作频率(如果处理器的工作频率可以调节的话)等。通过该计算能力使用状态参数,可以确定参与雾计算的节点还有多大潜力接受新的计算任务。实践中,节点的计算能力并不是静态的,而是可以动态调整的。因此,对于有些节点可能已经在处理一部分计算任务,但是还有一部分计算能力可以用于接受新任务的情况,上述计算能力使用状态是十分重要的判断依据。
在本发明的不同实施例中,能够描述节点计算能力的信息内容有两种选项,分别如图2(a)和2(b)所示。在图2(a)中,处理器类型包含但不限于CPU、GPU、FPGA、ASIC、DSP。对于CPU而言,计算单元的个数指CPU核数。对于GPU而言,计算单元的个数指流处理器个数。对于FPGA和ASIC而言,计算单元的个数指数字信号处理单元个数。对于DSP而言,计算单元的个数指DSP内核数。通过将每个处理器的计算单元个数、频率和每个计算单元每周期执行的浮点操作数相乘,可以推导出处理器的峰值FLOPS。
在图2(b)中,处理器类型包含但不限于CPU、GPU、FPGA、ASIC、DSP。对于CPU而言,计算单元的个数指CPU核数,乘加器的个数指混合乘加器(fused multiply-add,FMA)个数。对于GPU而言,计算单元的个数指流处理器个数,乘加器的个数指乘加单元个数。对于FPGA和ASIC而言,计算单元的个数指数字信号处理单元个数,乘加器的个数指乘加单元个数。对于DSP而言,计算单元的个数指DSP内核数,乘加器的个数指加法器和乘法器个数。通过将每个计算单元的乘加器个数和每个乘加器每周期执行的浮点操作数相乘,可以得到每个计算单元每周期执行的浮点操作数。通过将每个处理器的计算单元个数、频率、每个计算单元的乘加器个数和每个乘加器每周期执行的浮点操作数相乘,也可推导出处理器的峰值FLOPS。
除了上述关键参数外,其它影响节点计算能力的参数也可以包含在描述节点计算能力的信息内容中。这些参数包括但不限于节点的通信能力信息(例如节点使用的接入技术、带宽、平均数据速率等)、节点的存储能力信息(例如节点的存储空间大小、存取速度等)。这些信息内容可以作为数据包的载荷进行传输。需要说明的是,在承载节点计算能力信息的数据包中应该包含该节点的ID,但该节点的ID不一定放在数据包的载荷中(即和节点计算能力信息放在一起),它也可以被放在包头或其它部分。
当节点开始工作时,就应该获取其计算能力相关信息,包括处理器类型、每个处理器的计算单元个数、频率、每个计算单元每周期执行的浮点操作数等。而计算资源占用率是动态变化的,可以周期性或事件触发性(例如高层管理节点请求获取其计算能力时)地进行获取。每个节点都应该具备获取上述计算能力相关信息的能力。如果某些节点不具备获取或测试这些信息的能力,可以通过人工配置的方式,将相关信息存储在节点中,在需要时将这些信息发送给其它节点。
利用上述的节点计算能力描述方法,可以更加准确地描述参与雾计算的节点的计算能力。在获得表征计算能力的关键参数后,能够更好地判别该节点适合处理的计算类型和数据规模,预估该节点执行计算任务所需的时延和成本,从而进一步辅助节点间的计算任务分配。
在上述节点计算能力描述方法的基础上,本发明进一步提供了面向雾计算的节点计算能力交互方法,用于实现异构节点间的计算能力信息交互,辅助进行节点之间的计算任务分配。按照雾计算所采用的集中式系统架构和分布式系统架构的不同特点,上述节点计算能力交互方法具体可以包括两种实施方式,具体说明如下:
图3显示了雾计算所采用的集中式系统架构示例。在集中式系统架构中,位于低层的各个节点可以将自己的计算能力信息上报给高层管理节点,高层管理节点接收来自低层节点的计算能力信息,利用该计算能力信息进行计算任务分配。需要说明的是,本发明中所说的分层是逻辑意义上的分层,并不一定按照物理意义上的网络拓扑进行分层。因此,高层管理节点是指负责管理和协调一定区域内的其它节点的管理节点,并不一定在网络拓扑物理结构中位于高层。类似地,低层节点也不一定在网络拓扑物理结构中位于低层。在本发明的不同实施例中,面向集中式系统架构的信息交互过程具体有两种实现方式,分别如图4(a)和4(b)所示。
在图4(a)中,高层管理节点向低层节点请求获取其计算能力信息,具体包括以下步骤:
步骤1:高层管理节点向低层节点发送“计算能力信息请求”信令;
步骤2:低层节点收到请求后,向高层管理节点反馈“计算能力信息响应”,其中包含该节点的计算能力信息,包括但不限于处理器类型、每个处理器的计算单元个数、频率、每个计算单元每周期执行的浮点操作数、或每个计算单元包含的乘加单元个数和每个乘加单元每周期执行的浮点操作数、以及处理器的计算资源占用率;
步骤3:高层管理节点收到低层节点的计算能力信息后,向低层节点发送“计算能力信息确认”信令。
在图4(b)中,低层节点在与高层管理节点建立通信接口后,主动向高层管理节点发送其计算能力信息,具体包括以下步骤:
步骤1:低层节点向高层管理节点发送“计算能力信息报告”,其中包含该节点的计算能力信息,包括但不限于处理器类型、每个处理器的计算单元个数、频率、每个计算单元每周期执行的浮点操作数、或每个计算单元包含的乘加单元个数和每个乘加单元每周期执行的浮点操作数、以及处理器的计算资源占用率;
步骤2:高层管理节点收到低层节点的计算能力信息后,向低层节点发送“计算能力信息确认”信令。
图5显示了雾计算所采用的分布式系统架构示例。在分布式系统架构中,节点可将自己的计算能力信息告知邻居节点,以实现多个节点间的分布式计算任务协作。在本发明的不同实施例中,面向分布式系统架构的信息交互过程具体有两种实现方式,分别如图6(a)和图6(b)所示。
在图6(a)中,邻居节点向本节点请求获取其计算能力信息,具体包括以下步骤:
步骤1:邻居节点向本节点发送“计算能力信息请求”信令;
步骤2:本节点收到请求后,向邻居节点反馈“计算能力信息响应”,其中包含节点的计算能力信息,包括但不限于处理器类型、每个处理器的计算单元个数、频率、每个计算单元每周期执行的浮点操作数、或每个计算单元包含的乘加单元个数和每个乘加单元每周期执行的浮点操作数、以及处理器的计算资源占用率;
步骤3:邻居节点收到本节点的计算能力信息后,向本节点发送“计算能力信息确认”信令。
在图6(b)中,本节点在与邻居节点建立通信接口后,主动向邻居节点广播“计算能力信息报告”,其中包含节点的计算能力信息,包括但不限于处理器类型、每个处理器的计算单元个数、频率、每个计算单元每周期执行的浮点操作数、或每个计算单元包含的乘加单元个数和每个乘加单元每周期执行的浮点操作数、以及处理器的计算资源占用率。由于采用广播方式,邻居节点可不需要向本节点反馈“计算能力信息确认”信令。
图7显示了作为本发明实施例的一个分层异构雾计算架构,其中包含一个高层管理节点和三个低层节点,每个节点拥有不同的处理器,例如CPU、GPU、FPGA、ASIC、DSP等,各节点之间可以互相通信以及交互计算能力信息。在该分层异构雾计算架构中,高层管理节点可通过两种实现方式获取低层节点的计算能力信息,具体说明如下:
在第一种实现方式中,高层管理节点向低层节点1请求获取其计算能力信息,具体包括以下步骤:
步骤1:高层管理节点向节点1发送“计算能力信息请求”信令;
步骤2:节点1收到请求后,向高层管理节点反馈“计算能力信息响应”,其中包含节点1的计算能力信息。假设节点1的处理器类型为CPU,CPU核数为6个,CPU频率为2.4GHz,每个CPU核有2个FMA,每个FMA每周期执行的浮点操作数为16个,CPU占用率为20%,那么节点1发送的计算能力信息内容如图8(a)或8(b)所示。
步骤3:高层管理节点收到节点1的计算能力信息后,向节点1发送“计算能力信息确认”信令。
在第二种实现方式中,节点2在与高层管理节点建立通信接口后,主动向高层管理节点发送其计算能力信息,具体包括以下步骤:
步骤1:节点2向高层管理节点发送“计算能力信息报告”,其中包含节点2的计算能力信息。假设节点2的处理器类型为GPU,流处理器个数为2880个,GPU频率为745MHz,每个流处理器有1个乘加单元,每个乘加单元每周期执行的浮点操作数为2个,GPU占用率为10%,那么节点2发送的计算能力信息内容如图9(a)或9(b)所示。
步骤2:高层管理节点收到节点2的计算能力信息后,向节点2发送“计算能力信息确认”信令。
在图7所示的分层异构雾计算架构中,属于网络中同一逻辑层的节点1、2、3也可以通过图6(a)和6(b)所示的两种实现方法交互计算能力信息。
在第一种实现方式中,节点2向节点1请求获取其计算能力信息,具体包括以下步骤:
步骤1:节点2向节点1发送“计算能力信息请求”信令;
步骤2:节点1收到请求后,向节点2反馈“计算能力信息响应”,其中包含节点1的计算能力信息,信息内容如图8(a)或8(b)所示;
步骤3:节点2收到节点1的计算能力信息后,向节点1发送“计算能力信息确认”信令。
在第二种实现方式中,节点3在与节点1和节点2建立通信接口后,主动向节点1和节点2广播“计算能力信息报告”,其中包含节点3的计算能力信息。假设节点3的处理器类型为FPGA,数字信号处理(DSP)单元个数为3600个,FPGA频率为250MHz,每个DSP单元有1个乘加单元,每个乘加单元每周期执行的浮点操作数为2个,FPGA占用率为30%,那么节点3发送的计算能力信息内容如图10(a)或10(b)所示。
由于采用广播方式,节点1和节点2不需要向节点3反馈“计算能力信息确认”信令。
在本发明的实施例中,某个节点可以将计算能力信息发送给所有已建立通信接口的邻居节点,或者根据一定的过滤规则(例如IP地址过滤等),将信息发送给部分邻居节点。
当某个节点初次加入某个雾计算系统时,并与该网络中的高层管理节点建立通信接口后,该节点可主动向高层管理节点上报其计算能力信息。或者当高层管理节点主动向低层节点请求获取其计算能力信息时,节点上报其计算能力信息。
高层管理节点可以形成一个节点计算能力信息列表,存储在高层管理节点的存储器中。列表中包括该高层管理节点管理的各低层节点的计算能力信息。这些信息可以被处理或整合用于进行计算任务分配,如何处理或整合可以根据具体实现来决定。高层管理节点是否要把信息上报给更高层的节点也应根据具体的网络拓扑和协作策略来决定。
在分布式系统架构中,节点可将计算能力信息发送给所有已建立通信接口的邻居节点,或者根据一定的过滤规则(例如IP地址过滤等),将信息发送给部分邻居节点。采用UDP或TCP可以根据具体实现来选择。由于节点的处理器类型、计算单元个数、频率等信息都不会频繁的变化,因此不需要周期性频繁地发送这些信息,可以采用事件触发的方式,当节点初次加入网络、或其它节点主动请求获取信息时进行上报。
进一步地,本发明还提供一种面向雾计算的节点设备。如图11所示,参与雾计算的每个节点设备至少包括处理器和存储器,还可以根据实际需要进一步包括通信组件、传感器组件、电源组件、多媒体组件及输入/输出接口。其中,存储器、通信组件、传感器组件、电源组件、多媒体组件及输入/输出接口均与该处理器连接。前已述及,节点设备中的存储器可以是静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、快闪存储器等,处理器可以是中央处理器(CPU)、图形处理器(GPU)、现场可编程逻辑门阵列(FPGA)、专用集成电路(ASIC)、数字信号处理(DSP)芯片等。其它通信组件、传感器组件、电源组件、多媒体组件等均可以采用现有智能手机中的通用部件实现,在此就不具体说明了。
在本发明的一个实施例中,一个雾计算系统包括多个低层节点和至少一个高层管理节点。节点设备中的处理器读取处理器自身的配置信息,生成节点计算能力信息。在集中式系统架构中,生成节点计算能力信息的,可以是低层节点,也可以是高层管理节点。高层管理节点接收的是低层节点的节点计算能力信息。当高层管理节点生成节点计算能力信息时,此时它也作为“低层节点”向更高一层管理节点上报其计算能力。在分布式系统架构中,生成与接收节点计算能力信息的,是同一逻辑层的节点即可,即可以均为低层节点或者均为高层管理节点。
另一方面,在接收节点计算能力信息的节点设备中,处理器读取存储器中的计算机程序,用于执行以下操作:读取来自另一个节点设备的节点计算能力信息;将每个处理器的计算单元个数、频率、每计算单元每周期执行的浮点操作数相乘(实践中并不限于相乘方式,也可以采用其它方式进行整合),得到处理器的峰值浮点运算次数,作为另一个节点设备的节点计算能力;将节点计算能力与另一个节点设备的ID对应存储。作为替代方案,节点设备也可以将每个处理器的计算单元个数、频率、每计算单元每周期执行的浮点操作数,以及计算资源占用率相乘(实践中并不限于相乘方式,也可以采用其它方式进行整合),作为前述另一个节点设备的节点计算能力。
与现有技术相比较,本发明充分挖掘影响计算能力的关键参数,能够更准确地描述节点的计算能力。获得这些关键参数后,能够更好地判别该节点适合处理的计算类型和数据规模,预估该节点执行计算任务所需的时延和成本,从而进一步辅助节点间的计算任务分配。本发明尤其适用于雾计算的异构分层架构,有望被进一步标准化。
上面对本发明所提供的面向雾计算的节点计算能力描述方法、交互方法及其设备进行了详细的说明。对本领域的一般技术人员而言,在不背离本发明实质精神的前提下对它所做的任何显而易见的改动,都将构成对本发明专利权的侵犯,将承担相应的法律责任。
Claims (14)
1.一种面向雾计算的节点计算能力描述方法,其特征在于通过以下信息描述节点计算能力:
第一信息是处理器类型;
第二信息是计算单元个数;
第三信息是频率;以及
第四信息是每计算单元每周期执行的浮点操作数。
2.如权利要求1所述的节点计算能力描述方法,其特征在于:
所述第四信息包括每计算单元的乘加器个数信息和每乘加器每周期执行的浮点操作数信息。
3.如权利要求1所述的节点计算能力描述方法,其特征在于:
所述节点计算能力信息进一步包括计算资源占用率信息。
4.如权利要求1所述的节点计算能力描述方法,其特征在于:
在所述处理器类型为CPU时,所述计算单元的个数指CPU核数,所述乘加器的个数指混合乘加器个数;
在所述处理器类型为GPU时,所述计算单元的个数指流处理器个数,所述乘加器的个数指乘加单元个数;
在所述处理器类型为FPGA或ASIC时,所述计算单元的个数指数字信号处理单元个数,所述乘加器的个数指乘加单元个数;
在所述处理器类型为DSP时,所述计算单元的个数指DSP内核数,所述乘加器的个数指加法器和乘法器个数。
5.一种面向雾计算的节点计算能力交互方法,其特征在于:
在雾计算系统为集中式系统架构,包括多个低层节点和至少一个高层管理节点的情况下,
所述低层节点向所述高层管理节点或者向所述低层节点,发送节点计算能力信息,
所述高层管理节点接收到所述节点计算能力信息,并根据所述节点计算能力信息计算出所述低层节点的计算能力,以用于计算任务分配;
在雾计算系统为分布式系统架构,仅包括位于同一逻辑层的多个节点的情况下,
各节点通过请求-响应方式或者广播方式交互相应的节点计算能力信息,以用于计算任务分配。
6.如权利要求5所述的节点计算能力交互方法,其特征在于:
所述节点计算能力信息包括处理器类型、计算单元个数、频率以及每计算单元每周期执行的浮点操作数。
7.如权利要求6所述的节点计算能力交互方法,其特征在于:
所述高层管理节点将每个所述处理器的所述计算单元个数、所述频率、所述每计算单元每周期执行的浮点操作数相乘,得到所述处理器的峰值浮点运算次数。
8.如权利要求7所述的节点计算能力交互方法,其特征在于:
所述每计算单元每周期执行的浮点操作数,包括每计算单元的乘加器个数信息和每乘加器每周期执行的浮点操作数信息。
9.如权利要求6所述的节点计算能力交互方法,其特征在于:
所述节点计算能力信息进一步包括计算资源占用率信息。
10.如权利要求5所述的节点计算能力交互方法,其特征在于:
所述低层节点向与其同一逻辑层的低层节点广播所述节点计算能力信息。
11.一种面向雾计算的节点设备,其特征在于包括处理器和存储器,所述处理器读取所述存储器中的计算机程序,用于执行以下操作:
读取来自另一个节点设备的节点计算能力信息,所述节点计算能力信息包括处理器类型、计算单元个数、频率以及每计算单元每周期执行的浮点操作数;
将每个所述处理器的所述计算单元个数、所述频率、所述每计算单元每周期执行的浮点操作数进行整合,作为所述另一个节点设备的节点计算能力;
将所述节点计算能力与所述另一个节点设备的ID对应存储。
12.如权利要求11所述的节点设备,其特征在于:
所述节点计算能力信息进一步包括计算资源占用率,
所述节点设备将每个所述处理器的所述计算单元个数、所述频率、所述每计算单元每周期执行的浮点操作数,以及所述计算资源占用率进行整合,作为所述另一个节点设备的节点计算能力。
13.如权利要求11所述的节点设备,其特征在于:
所述节点设备通过请求-响应方式获得另一个节点设备的节点计算能力信息。
14.如权利要求11所述的节点设备,其特征在于:
所述节点设备通过广播方式获得另一个节点设备的节点计算能力信息。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711369417.5A CN109936472A (zh) | 2017-12-18 | 2017-12-18 | 面向雾计算的节点计算能力描述方法、交互方法及其设备 |
US15/854,826 US20190190789A1 (en) | 2017-12-18 | 2017-12-27 | Computing capability description method, interaction method and node device for fog computing |
EP17210855.7A EP3499842A1 (en) | 2017-12-18 | 2017-12-28 | Calculation capability description method, interaction method and device for fog computing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711369417.5A CN109936472A (zh) | 2017-12-18 | 2017-12-18 | 面向雾计算的节点计算能力描述方法、交互方法及其设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109936472A true CN109936472A (zh) | 2019-06-25 |
Family
ID=62002518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711369417.5A Pending CN109936472A (zh) | 2017-12-18 | 2017-12-18 | 面向雾计算的节点计算能力描述方法、交互方法及其设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20190190789A1 (zh) |
EP (1) | EP3499842A1 (zh) |
CN (1) | CN109936472A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110958675A (zh) * | 2019-10-29 | 2020-04-03 | 南京邮电大学 | 基于5g雾计算节点的终端接入方法 |
CN112579281A (zh) * | 2019-09-27 | 2021-03-30 | 杭州海康威视数字技术股份有限公司 | 资源分配方法、装置、电子设备及存储介质 |
CN114760304A (zh) * | 2022-03-30 | 2022-07-15 | 中国电信股份有限公司 | 算力信息的处理方法、处理系统及算力网关 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10841397B2 (en) | 2018-04-17 | 2020-11-17 | Vmware, Inc. | Methods, apparatus, and systems to dynamically discover and host services in fog servers |
CN110636141B (zh) * | 2019-10-17 | 2021-11-09 | 中国人民解放军陆军工程大学 | 基于云雾协同的多云存储系统及其管理方法 |
CN112084025B (zh) * | 2020-09-01 | 2022-09-23 | 河海大学 | 一种基于改进粒子群算法的雾计算任务卸载时延优化方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102426544A (zh) * | 2011-11-04 | 2012-04-25 | 浪潮(北京)电子信息产业有限公司 | 任务分配方法和系统 |
CN104598318A (zh) * | 2014-12-30 | 2015-05-06 | 北京奇艺世纪科技有限公司 | 节点计算能力的汇报方法和计算节点 |
CN105607955A (zh) * | 2015-12-23 | 2016-05-25 | 浪潮集团有限公司 | 一种计算任务分配的方法及装置 |
CN105718364A (zh) * | 2016-01-15 | 2016-06-29 | 西安交通大学 | 一种云计算平台中计算资源能力动态评估方法 |
CN106452919A (zh) * | 2016-11-24 | 2017-02-22 | 济南浪潮高新科技投资发展有限公司 | 一种基于模糊理论的雾节点优化方法 |
US20170279734A1 (en) * | 2016-03-28 | 2017-09-28 | The Travelers Indemnity Company | Systems and methods for dynamically allocating computing tasks to computer resources in a distributed processing environment |
CN107222843A (zh) * | 2017-06-30 | 2017-09-29 | 西安电子科技大学 | 面向室内定位的雾网络实现系统和方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8494115B2 (en) * | 2006-03-14 | 2013-07-23 | The University Of Notre Dame Du Lac | Methods and apparatus for hardware based radiation dose calculation |
US9037657B2 (en) * | 2008-05-23 | 2015-05-19 | The Trustees Of Columbia University In The City Of New York | Systems and methods for peer-to-peer bandwidth allocation |
US10282296B2 (en) * | 2016-12-12 | 2019-05-07 | Intel Corporation | Zeroing a cache line |
-
2017
- 2017-12-18 CN CN201711369417.5A patent/CN109936472A/zh active Pending
- 2017-12-27 US US15/854,826 patent/US20190190789A1/en not_active Abandoned
- 2017-12-28 EP EP17210855.7A patent/EP3499842A1/en not_active Withdrawn
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102426544A (zh) * | 2011-11-04 | 2012-04-25 | 浪潮(北京)电子信息产业有限公司 | 任务分配方法和系统 |
CN104598318A (zh) * | 2014-12-30 | 2015-05-06 | 北京奇艺世纪科技有限公司 | 节点计算能力的汇报方法和计算节点 |
CN105607955A (zh) * | 2015-12-23 | 2016-05-25 | 浪潮集团有限公司 | 一种计算任务分配的方法及装置 |
CN105718364A (zh) * | 2016-01-15 | 2016-06-29 | 西安交通大学 | 一种云计算平台中计算资源能力动态评估方法 |
US20170279734A1 (en) * | 2016-03-28 | 2017-09-28 | The Travelers Indemnity Company | Systems and methods for dynamically allocating computing tasks to computer resources in a distributed processing environment |
CN106452919A (zh) * | 2016-11-24 | 2017-02-22 | 济南浪潮高新科技投资发展有限公司 | 一种基于模糊理论的雾节点优化方法 |
CN107222843A (zh) * | 2017-06-30 | 2017-09-29 | 西安电子科技大学 | 面向室内定位的雾网络实现系统和方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112579281A (zh) * | 2019-09-27 | 2021-03-30 | 杭州海康威视数字技术股份有限公司 | 资源分配方法、装置、电子设备及存储介质 |
CN112579281B (zh) * | 2019-09-27 | 2023-10-10 | 杭州海康威视数字技术股份有限公司 | 资源分配方法、装置、电子设备及存储介质 |
CN110958675A (zh) * | 2019-10-29 | 2020-04-03 | 南京邮电大学 | 基于5g雾计算节点的终端接入方法 |
CN110958675B (zh) * | 2019-10-29 | 2021-08-17 | 南京邮电大学 | 基于5g雾计算节点的终端接入方法 |
CN114760304A (zh) * | 2022-03-30 | 2022-07-15 | 中国电信股份有限公司 | 算力信息的处理方法、处理系统及算力网关 |
Also Published As
Publication number | Publication date |
---|---|
US20190190789A1 (en) | 2019-06-20 |
EP3499842A1 (en) | 2019-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109936472A (zh) | 面向雾计算的节点计算能力描述方法、交互方法及其设备 | |
Xu et al. | A survey of opportunistic offloading | |
Sheng et al. | Energy efficient cooperative computing in mobile wireless sensor networks | |
Chen et al. | Reinforcement learning–based QoS/QoE‐aware service function chaining in software‐driven 5G slices | |
Povedano-Molina et al. | DARGOS: A highly adaptable and scalable monitoring architecture for multi-tenant Clouds | |
JP6178923B2 (ja) | サービスドメイン課金システムおよび方法 | |
Slabicki et al. | Performance evaluation of CoAP, SNMP and NETCONF protocols in fog computing architecture | |
Alsboui et al. | Enabling distributed intelligence for the Internet of Things with IOTA and mobile agents | |
Fayos-Jordan et al. | Performance comparison of container orchestration platforms with low cost devices in the fog, assisting Internet of Things applications | |
Dutta et al. | Operating systems and network protocols for wireless sensor networks | |
CN107947847A (zh) | 一种通用化的卫星网络资源统一表征方法和系统 | |
Li et al. | Placement of edge server based on task overhead in mobile edge computing environment | |
Rath et al. | MAQ system development in mobile ad-hoc networks using mobile agents | |
Hati et al. | DewBCity: blockchain network-based dew-cloud modeling for distributed and decentralized smart cities | |
AbdElhalim et al. | Distributed Fog‐to‐Cloud computing system: A minority game approach | |
Li et al. | Towards the deep convergence of communication and computing in RAN: Scenarios, architecture, key technologies, challenges and future trends | |
Aldawsari et al. | Towards a holistic multi-cloud brokerage system: Taxonomy, survey, and future directions | |
Ou et al. | Research on network performance optimization technology based on cloud-edge collaborative architecture | |
CN115866066A (zh) | 数据发送方法及装置、非易失性存储介质、电子设备 | |
Oteafy | Resource augmentation in heterogeneous internet of things via UAVs | |
Orumwense et al. | Energy management in a cloud‐based cyber‐physical system | |
Li | An integrated web service framework for mobile device hosted web service and its performance analysis | |
Han et al. | IEEE Access Special Section Editorial: Emerging Trends, issues, and challanges in energy-efficient cloud computing | |
Ding et al. | QARPF: A QoS-Aware Active Resource Provisioning Framework Based on OpenStack | |
Sharma et al. | Resource allocation in FC environment: A review |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190625 |