CN110928694A - 一种计算机系统 - Google Patents

一种计算机系统 Download PDF

Info

Publication number
CN110928694A
CN110928694A CN202010076233.5A CN202010076233A CN110928694A CN 110928694 A CN110928694 A CN 110928694A CN 202010076233 A CN202010076233 A CN 202010076233A CN 110928694 A CN110928694 A CN 110928694A
Authority
CN
China
Prior art keywords
node
resource
target
nodes
data
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.)
Granted
Application number
CN202010076233.5A
Other languages
English (en)
Other versions
CN110928694B (zh
Inventor
沈寓实
汝聪翀
马传军
姚正斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fenomen Array Beijing Technology Co Ltd
Original Assignee
Fenomen Array Beijing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fenomen Array Beijing Technology Co Ltd filed Critical Fenomen Array Beijing Technology Co Ltd
Priority to CN202010076233.5A priority Critical patent/CN110928694B/zh
Publication of CN110928694A publication Critical patent/CN110928694A/zh
Application granted granted Critical
Priority to US17/794,468 priority patent/US11706076B2/en
Priority to PCT/CN2021/073406 priority patent/WO2021148015A1/zh
Publication of CN110928694B publication Critical patent/CN110928694B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种计算机系统,包括:多个计算设备,所述计算设备包括并联的存储单元和至少一个计算单元,所述多个计算设备被划分为多个节点,所述多个节点组成网络拓扑结构;通信设备,所述通信设备包括:自治域组建模块和第一通信模块;所述第一通信模块用于将所述多个计算设备通信连接;任务处理设备,所述任务处理设备包括:寻址模块和任务处理模块。因此,本发明的方案,在一定程度上满足了人工智能、区块链引发的海量数据和大量算力的爆发需求。

Description

一种计算机系统
技术领域
本发明涉及通信技术领域,尤其涉及一种计算机系统。
背景技术
目前的计算机系统主要以CPU(central processing unit,中央处理器)为主,随着云计算、人工智能等技术的发展,大数据算法受制于CPU的字长精度,CPU是读取与计算串行的方式,基于CPU的计算机系统将无法满足当前大并发的计算要求。当前的网络采用在带宽极窄的情况下尽力而为的原则,网络中每个数据包需要执行协议操作,浪费芯片运算力。随着大数据的爆发,光纤技术的发展,在带宽资源充足的情况下,原有网络架构的出错后不断重传,牺牲质量控制流量的方式已无法满足人工智能、区块链引发的海量数据和大量算力的爆发需求。
发明内容
本发明提供一种计算机系统,以在一定程度上满足人工智能、区块链引发的海量数据和大量算力的爆发需求。
本发明的实施例提供了一种计算机系统,包括多个计算设备,所述计算设备包括并联的存储单元和至少一个计算单元,所述多个计算设备被划分为多个节点,所述多个节点组成网络拓扑结构;
通信设备,所述通信设备包括:自治域组建模块和第一通信模块,所述自治域组建模块,用于在检测到所述多个节点中的目标节点满足预设类型的业务的资源需求的情况下,控制所述目标节点形成至少一层自治域,一层自治域包括至少一个自治域,一个自治域中包括至少一个所述目标节点;所述第一通信模块用于将所述多个计算设备通信连接;
任务处理设备,所述任务处理设备包括:寻址模块和任务处理模块,所述寻址模块用于在所述网络拓扑结构中对第一类节点和第二类节点进行寻址,所述第一类节点为提供待执行的目标任务所需的目标数据的节点,所述第二类节点为提供所述目标任务所需的目标算法的节点;所述任务处理模块用于与所述第一类节点和所述第二类节点交互,以使所述第二类节点采用所述目标算法对所述第一类节点提供的所述目标数据进行处理。
本发明实施例的计算机系统,包括多个计算设备、通信设备和任务处理设备,其中,多个计算设备被划分为多个节点,多个节点组成网络拓扑结构,其中每个计算设备包括并联的存储单元与计算单元,通信设备包括自治域组建模块和用于将多个计算设备通信连接的第一通信模块,任务处理设备包括寻址模块和任务处理模块,由此可见,本发明实施例的计算机系统,不再区分计算和网络,而是把计算和储存融化到网络之中,将计算与存储并行,从而可以提升数据处理速度,并且可以基于通信设备实现网络拓扑结构中的通信,在寻址模块和任务处理模块的配合下,更加快速的进行任务处理,从而在一定程度上满足人工智能、区块链引发的海量数据和大量算力的爆发需求。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例中的计算机系统的结构框图;
图2为本发明实施例中的网络拓扑结构中单层网络结构的示意图;
图3为本发明实施例中寻址的过程所涉及的节点在网络拓扑结构中的分布示意图之一;
图4为本发明实施例中寻址的过程所涉及的节点在网络拓扑结构中的分布示意图之二;
图5为本发明实施例中寻址的过程所涉及的节点在网络拓扑结构中的分布示意图之三;
图6为本发明实施例中寻址的过程所涉及的节点在网络拓扑结构中的分布示意图之四;
图7为网络拓扑在实际应用中的实例示意图;
图8为本发明实施例中网络拓扑结构中流水线处理方法原理示意图;
图9为本发明实施例中的网络拓扑结构形成的自治域的示意图;
图10为本发明实时例中的网络拓扑结构通过外骨骼网络与现有互联网连接的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
本发明实施例中提供了一种计算机系统,如图1所示,该计算机系统包括多个计算设备,所述计算设备包括并联的存储单元和至少一个计算单元,所述多个计算设备被划分为多个节点,所述多个节点组成网络拓扑结构,其中,存储单元中包括多个单元电路,计算单元中包括多个单元电路,一个节点中包括存储单元的单元电路和计算单元的单元电路中的至少一个单元电路,或者包括至少一个存储单元,或者包括至少一个计算单元,或者包括至少一个存储单元和至少一个计算单元,或者包括一个计算设备,或者包括多个计算设备;
通信设备,所述通信设备包括:自治域组建模块和第一通信模块,所述自治域组建模块,用于在检测到所述多个节点中的目标节点满足预设类型的业务的资源需求的情况下,控制所述目标节点形成至少一层自治域,一层自治域包括至少一个自治域,一个自治域中包括至少一个所述目标节点;所述第一通信模块用于将所述多个计算设备通信连接;
任务处理设备,所述任务处理设备包括:寻址模块和任务处理模块,所述寻址模块用于在所述网络拓扑结构中对第一类节点和第二类节点进行寻址,所述第一类节点为提供待执行的目标任务所需的目标数据的节点,所述第二类节点为提供所述目标任务所需的目标算法的节点;所述任务处理模块用于与所述第一类节点和所述第二类节点交互,以使所述第二类节点采用所述目标算法对所述第一类节点提供的所述目标数据进行处理。
其中,自治域组件模块、第一通信模块、寻址模块和任务处理模块可以设置在节点内部,也可以独立于节点之外设置。
另外,所述目标任务可以是其他节点发送的,也可以是自身节点在预定条件下需要执行的。
对于本发明实施例的计算机系统,例如其由100个节点形成网络拓扑结构,其中,编号为1的节点需要由源视频材料和AR素材合成的一段视频,则寻址模块会在网络拓扑结构中寻找可以提供该项任务所需的源视频材料的节点、可以提供该项任务所需的AR素材的节点、以及可以进行视频合成的节点;例如寻址到的可以提供源视频材料的节点为编号为2的节点、可以提供AR素材的节点为编号为3的节点,可以进行视频合成的节点为编号为4的节点,则任务处理模块会控制编号为1的节点与编号与2、3、4的节点进行交互,来完成该项任务。
具体地例如,任务处理模块控制编号为1的节点向编号为2的节点发送指示信息,使得编号为2的节点将其存储单元中存储的源视频材料发送给编号为4的节点;任务处理模块控制编号为1的节点向编号为3的节点发送指示信息,使得编号为3的节点将其存储单元中存储的AR素材发送给编号为4的节点;任务处理模块控制编号为1的节点向编号为4的节点发送指示信息,使得编号为4的节点中的若干个计算单元根据接收到的源视频材料和AR模型进行视频合成,并在完成一部分数据的合成后,缓存到编号为4的节点中的存储单元,从而由存储有合成后的数据的存储单元将合成后的数据传输给编号为1的节点,进而保存在编号为1的节点中的存储单元中。
由上述可知,本发明实施例的计算机系统,包括多个计算设备、通信设备和任务处理设备,其中,多个计算设备被划分为多个节点,多个节点组成网络拓扑结构,其中每个计算设备包括并联的存储单元与计算单元,通信设备包括自治域组建模块和用于将多个计算设备通信连接的第一通信模块,任务处理设备包括寻址模块和任务处理模块,由此可见,本发明实施例的计算机系统,不再区分计算和网络,而是把计算和储存融化到网络之中,将计算与存储并行,从而可以提升数据处理速度,并且可以基于通信设备实现网络拓扑结构中的通信,在寻址模块和任务处理模块的配合下,更加快速的进行任务处理,从而在一定程度上满足人工智能、区块链引发的海量数据和大量算力的爆发需求。
可选的,所述网络拓扑结构包括至少一层网络结构(即所述多个节点形成至少一层网络结构),不同层对应的数据传输时延的取值范围不同,与第一目标层网络结构对应的数据传输时延包括所述第一目标层网络结构中的节点到目标节点的数据传输时延,所述第一目标层网络结构为任意一层所述网络结构。
可选的,如图2所示,每一层网络结构包括至少一个环状结构,每个环状结构包括多个节点;其中,每个环状结构中的节点首尾相连,且按照每个环状结构中的节点的编号顺序,编号为奇数的节点中相邻的节点相连,或者编号为偶数的节点中相邻的节点相连。由此可知,本发明实施例中,网络拓扑结构在物理上采用扁平网络结构,左右节点以地址作为唯一识别标致,全网节点可以地域划分地址空间,方便热插拔,并采用分层布局,全网按照地址分为多个层级,单层之内所有节点互联。网络每一层都使用相同的环路拓扑结构,层间垂直跨接。
其中,可以理解的是,对于环状结构的具体连接方式并不局限于此,还可是每个环状结构包括的多个节点首尾相连,并与其相邻节点的下一节点相连。
由此可知,所述网络拓扑结构包括多层串联加环路的容错网络,其中每一层结构相同,每一层都使用相同的环路拓扑结构,层间垂直跨接。这种相同的硬件设备,相同结构的重复叠加,配合相同的软件管理,逐步扩大资源聚集度,完成面向应用的超级工程。另外,本结构不存在跨两层以上的连接,简化了软件结构和系统管理。层内不同间隔的通信环,确保环内任意两点出现故障(包括抽取PCB板卡),环路不会中断,并保持正常通信。
可选的,相邻的两层网络结构之间存在至少两条连接路径。例如第一层网络结构的第三节点与第二层网络结构的第四节点连接,第一层网络结构的第五节点与第二层网络结构的第六节点连接,即第一层网络结构与第二层网络结构之间可以存在两条连接路径。
可选的,所述计算设备还包括:
PCB单板,所述存储单元、所述计算单元位于所述PCB单板上;
板框,所述PCB单板设置于所述板框上;
机箱,所述板框位于所述机箱内;
机房,所述机箱位于所述机房内;
第一数据管理中心,所述第一数据管理中心包括至少两个机房;
第二数据管理中心,所述第二数据管理中心包括至少两个所述第一数据管理中心。
由此可知,该计算设备,包括存储单元和计算单元,且存储单元和计算单元都设置有用于通信和管理的虚拟管理单元电路,并与对外物理通信接口连接,使得存储单元和计算单元之间并行,不同计算单元之间并行。由此可知,本发明实施例中的计算设备,不再区分计算和网络,而是把计算和储存融化到网络之中,并设置计算单元存在统一的接口对外通信,将计算与存储并行,从而可以提升数据处理速度,在一定程度上满足人工智能、区块链引发的海量数据和大量算力的爆发需求。
进一步地,所述计算单元中包括多个单元电路;所述多个计算设备划分为多个节点后,这些节点组成了八层网络结构,其中,第一层网络结构S(silicon)的节点为所述计算单元的单元电路,可编程内部电路结构和管理;第二层网络结构B(board)的节点为所述计算单元,即在单板PCB内,多芯片之间,单PCB内布线10Gbps通信,板级管理;第三层网络结构F(frame)的节点为PCB单板,即在单机框内,多PCB之间,背板间PCB内布线10Gbps通信,全联通;第四层网络结构C(cabinet)的节点为板框,在单机柜内,板框之间,机框间光纤10Gbps通信,全联通;第五层网络结构D(district)的节点为机箱,即在数据中心内分块,多机箱之间。机房内按需不完全光纤网络,10Gbps;第六层网络结构Z(zone)的节点为机房,即在数据中心内分区,多机房之间。机房内按需不完全光纤网络,10Gbps;第七层网络结构E(enterprise)的节点为所述第一数据管理中心,按需配置广域光纤,互联网承载全网管理;第八层网络结构W(world)的节点为所述第二数据管理中心,按需配置广域光纤,互联网承载,全网管理。其中,可以理解的是,对于由多个计算设备组成的网络拓扑结构,对于各层网络结构的划分形式,并不局限于此。
其中,上述八层网络结构,可以由八组8bit,共计64bit定位。也就是说,在全网(全世界)范围内可以独立查询和管理任一台设备,或者,其中任意一片单元电路,任意一块硬盘的工作状态。显然,这项网络拓扑结构设计可以在未来相当长的时期内满足需求。但是,如果将来某一天,网络规模不足以满足应用需求,该网络拓扑结构很容易在数据中心(即W层)之上增加更多层网络结构。如果将来超级芯片可服务的独立对象大幅增加,导致网络地址不够分配,很容易在芯片层(即S层)之下扩展,甚至定位到细胞级别。由此可见,该网络拓扑结构规模可以无限伸缩,满足未来可能的需求。
即本发明实施例中的网络拓扑结构,涵盖从芯片,设备,直到数据中心,在一个资源域中整体考虑巨大计算系统。实现硬件能力可无限扩展,软件可重复使用,结构可多层套接。
此外,所述网络拓扑结构可以定义三种硬件资源,并且用统一的64bit地址唯一定位。
第一种,小颗粒资源:指芯片内部具备完整功能的资源,用地址段S(Silicon)标示定位。
第二种,单板资源:指完整功能的板卡内部资源,用地址段B(Board)标示定位。
第三种,多卡组合资源:泛指由独立板卡组装的多卡集成资源,包括各种机柜和机房的组合。其中分为6个等级,分别用地址段F(Frame),C(Cabinet),D(District),Z(Zone),E(Enterprise),和W(World)标示定位。
而对于存储资源,可统一数据颗粒度,即1Kb数据包。具体的,本发明实施例的计算机系统,在一个超级资源池中,按需分配不同的任务。可以用单一硬盘的读写过程来比喻。每次新建文件写入硬盘,占据一部分硬盘资源。每次删除文件时,释放所占用的资源。由于每个文件大小不一,多次写入和删除后,留下许多零碎的储存资源碎片。为了不浪费这些碎片资源,要求系统调度能够充分利用这些碎片,有能力管理硬盘中任意一个数据片。同理,如果把一个传统硬盘操作放大到整个系统,在本发明实施例中的计算机系统中也会遇到类似情况,要求系统能够在全域内统一调度全系统中任意一粒微小资源。其中不同的是,本发明实施例的计算机系统可以独立精细调度传输/交换/储存/管理多种资源。以上全部资源构成统一结构,可执行单一任务,也可分散指定各地的资源,同时执行无数个独立任务。在网络传输、网络交换、网络储存、网络计算、和网络管理中,本发明实施例的计算机系统的资源以1KB数据包为标称管理颗粒度,以1KB数据包的整数倍为单位。
即本发明实例的计算机系统的数据包的三要素为:1)固定格式。2)无限定义。3)唯一解读。本发明实例的计算机系统的所有信息和数据采用1 KB统一格式,称为带内信息。相对应,在数据传输和储存过程中,为了数据完整性,还需加入辅助信息,称为带外信息。固定长度1 Kbyte可以表达一条短信息,也可以按需扩展成无数数据包组成的视频文件。1KB是512word,1word等于2byte,1byte等于8bit,1word等于32bit。
可选的,所述存储单元包括用于通信和管理所述存储单元的第一虚拟管理单元电路,所述计算单元包括用于通信和管理所述计算单元的第二虚拟管理单元电路,所述第一虚拟管理单元电路和所述第二虚拟管理单元电路分别与对外物理通信接口连接。
其中,第一虚拟管理单元电路为存储单元中存储有用于实现通信(包括节点的内部通信和外部通信)以及对存储单元进行管理(例如资源管理)的程序的单元电路。第二虚拟管理电路为计算单元中存储有用于实现通信(包括节点的内部通信和外部通信)以及对计算单元进行管理(例如资源管理)的程序的单元电路。
另外,存储单元和计算单元都设置有用于通信和管理的虚拟管理单元电路,并与对外物理通信接口连接,即存储单元与计算单元之间并行,不同计算单元之间并行。由此可知,本发明实施例中的计算设备包括的所有计算单元和存储单元中的任意两个都是并联的连接关系。
此外,存储单元和计算单元的虚拟管理单元电路,均与对外物理通信接口连接,即本发明的实施例中的计算设备包括的存储单元和计算单元设置有统一的对外通信接口,从而对外物理通信接口传输过来的信息指令,可以直接进入计算单元和存储单元。
由此可知,本发明实施例中的计算设备,不再区分计算和网络,而是把计算和储存融化到网络之中,将计算单元之间并行,存储单元与计算单元之间并行,并设置统一的接口对外通信,从而可以提高计算速度,在一定程度上满足人工智能、区块链引发的海量数据和大量算力的爆发需求。并且,本发明实施例中的计算设备,不包括CPU(central processingunit,中央处理器),从而可以无限扩展。
可选的,所述计算单元包括可编程逻辑器件。由此可知,本发明实施例中的计算设备的计算单元可以由可编程逻辑器件构成。
其中,逻辑器件是用来实现某种特定逻辑功能的电子器件,最简单的逻辑器件是与、或、非门等,在此基础上可实现复杂的时序和组合逻辑功能。而可编程逻辑器件,其功能不是固定不变的,而是可以根据用户的需要而进行改变,即由编程的方法来确定器件的逻辑功能。因而本发明实施例中的计算设备,在其中包括的计算单元包括可编程逻辑器件,使得该计算设备的计算单元可以根据用户的需要而改变可以实现的功能,即本发实施例中的计算设备的各个计算单元不再是实现唯一一种功能,而是可以由编程方法实现不同的逻辑功能,即实现不同算法,从而使得本发明实施例中的计算设备的带宽可动态配置。
可选的,所述第二虚拟管理单元电路在获取到硬件架构调整指令时,根据所述硬件架构调整指令控制所述可编程逻辑器件进行硬件架构调整。
本发明的实施例中,硬件架构调整指令可以是网络侧发送的,也可以是在预设条件下自动生成的,则本发明的实施例中,计算设备可以根据网络侧的指示,也可以自主调整可编程逻辑器件的硬件架构,即调整可编程逻辑器件的逻辑功能。而多个计算设备被划分为多个节点,则有些节点中也可以进行硬件架构的调整,因此,本发明实施例中的节点也可以支持节点功能分片,不仅可作为中转节点,还可作为控制节点,服务节点等。
可选的,所述可编程逻辑器件为FPGA阵列。即当本发明实施例中的计算设备包括的计算单元中包括可编程逻辑器件时,该可编程逻辑器件可以是FPGA。其中,FPGA是可编程器件,理论上可以实现任何计算,但是从效率考虑,FPGA适合进行并行计算和流水线计算,典型的计算例如AI(Artificial Intelligence,人工智能)、视频转码、搜索等,从而使得本发明实施例中的计算设备,支持高速访问,可随插随拔,随意扩展。可以理解的是,本发明实施例中的计算设备包括的计算单元中包括可编程逻辑器件也可以是除FPGA之外的其他可编程逻辑器件。
此外,可选的,在本发明的实施例中, FPGA作为独立资源,脱离CPU工作,FPGA资源可以划片使用。即FPGA里可以有一个固定模块完成以下功能:
1、网络通信;
2、解析特定指令,即对一组资源申请的响应;
3、反馈自身能满足的申请和自身资源使用情况。
总之,本发明实施例中的FPGA可以不依赖CPU控制独立于网络通信,可为不同任务灵活使用FPGA资源,并实时更新。
可选的,所述计算设备还包括MCU。其中,具体地, MCU可以设置在计算单元内部,与FPGA连接,或者MCU设置在存储单元内容,或者MCU独立于计算单元和存储单元之外设置。
可选的,所述第一虚拟管理单元电路和所述第二虚拟管理单元电路分别通过高速总线与所述对外物理通信接口连接,同时实现了计算单元和存储单元之间通过高速总线连接,从而使得单个计算设备可以实现本地高速存储和就近计算。其中,计算单元和存储单元间的高速总线连接,保证数据的IO速度,在高并发模式下,实现多路数据的高速读写,也可以根据业务需求,离线对存储数据做任意结构化,以方便与其他节点的协同计算。
可选的,所述对外物理通信接口为包括光纤接口或者网口。其中,光纤接口是用来连接光纤线缆的物理接口。本发明实施例中,将计算单元与光纤接口连接,从而使得计算设备对外带宽获得保障,满足实时通信要求。
综上所述,本发明实施例中的计算设备,可以采用计算单元与存储单元并行的FPGA结构,将每个硬件计算单元以FPGA 阵列为主要运算和控制载体,并配以少量MCU控制单元来辅助管理。
可选的,所述计算设备还包括:
分别与所述存储单元、所述计算单元和对外物理通信接口连接的第二通信模块,用于在接收到资源请求指令时,确定所述第二通信模块所属计算设备当前时刻的第一剩余资源;
分别与所述存储单元、所述计算单元、所述对外物理通信接口和所述第二通信模块连接的资源模块,用于根据所述资源请求指令,获取所需资源信息,所述所需资源信息包括至少一种资源选择方式;
所述资源模块,还用于根据所述第一剩余资源以及所述所需资源信息包括的资源选择方式,分配资源;
其中,所述存储单元中包括多个单元电路,所述计算单元中包括多个单元电路,所述资源包括第一类资源、第二类资源、第三类资源和第四类资源中的任意一种,或者包括所述第一类资源和所述第二类资源,或者包括所述第一类资源和所述第四类资源,或者包括所述第二类资源和所述第三类资源,或者包括所述第三类资源和所述第四类资源;
所述第一类资源包括第一数量的所述存储单元,所述第二类资源包括第二数量的所述计算单元,所述第三类资源包括第三数量的所述存储单元中的单元电路,所述第四类资源包括第四数量的所述计算单元中的单元电路,所述第一数量、所述第二数量、所述第三数量和所述第四数量均为整数。
由上述可知,计算设备的资源可以计算设备的单元电路为粒度。例如,当上述所述的计算设备的计算单元包括FPGA时,所述资源包括LUT(Look-Up-Table,显示查找表)、REG(寄存器资源)、DSP(数字信号处理器)、MEM(存储资源)和IO(输入/输出)和通信带宽等部分。
本发明的实施例中,在计算设备接收到网络侧发送的资源请求指令时,会统计自身当前时刻所剩余的资源,即第一剩余资源,以便于判断自身当前所剩资源是否可以满足网络侧的资源请求。
其中,可选的,所述资源请求指令包括实现算法的硬件类型(即IP核类型)、资源需求信息、通信需求信息。进一步地,所述资源请求指令对应的数据包可以为1kb长度,且格式固定。另外,资源请求指令可设置指令帧头,则计算设备可以根据指令帧头,读取对应长度的内容。
另外,所述所需资源信息包括至少一种资源选择方式。即网络侧会在资源请求指令中携带本次资源请求所要实现的功能对应的至少一种资源选择方式,则计算设备会根据自身当前的剩余资源,以及网络侧所指示的至少一种资源选择方式,为本次资源请求指令分配资源。由上述可知,本发明的实施例中,可以计算设备中的单元电路为资源粒度,进行资源分配,并根据网络侧下发的资源请求指令,灵活分配资源。
可选的,所述资源模块包括:
第一确定子模块,用于确定所述第一剩余资源可满足的第一资源选择方式,以及所述第一剩余资源不可满足的第二资源选择方式,所述第一资源选择方式和所述第二资源选择方式分别为所述所需资源信息中包括的资源选择方式中的至少一种;
第二确定子模块,用于确定所述第一剩余资源满足所述第一资源选择方式后的第二剩余资源;
反馈子模块,用于向发送所述资源请求指令的设备反馈所述第一资源选择方式、所述第二资源选择方式和所述第二剩余资源的信息。
本发明的实施例中,计算设备会根据网络侧指示的至少一种资源选择方式,以及自身当前的剩余资源,判断自身能够支持的资源选择方式,以及不能支持的资源选择方式,并计算按照自身支持的资源选择方式分配资源后的剩余资源,进而将自身所支持的资源选择方式,以及按照自身支持的资源选择方式分配资源后的剩余资源上报给网络侧。
即当计算设备接收到网络侧下发的资源请求指令时,从资源请求指令中获取到所需的资源信息(例如对应指令所要实现的功能有三种算法,不同算法所需的存储、算法等等单元数目不同,例如其中第一种算法需要100个存储单元、200个算法单元、50个寄存器),则该计算设备会获取自己剩余的资源是否能够实现其中的一种算法,例如可实现第一种算法,则还会计算出实现第一种算法后剩余的资源。然后将自身可以支持哪种算法,以及后续的剩余资源情况上报给网络侧。
例如,当计算设备中包括的计算单元中包括FPGA时,网络侧下发指令,要求实现某个AI 推理的功能,其中包括一组深度学习计算需要实现算法的硬件(即IP核)和网络结构的能力要求,这些根据不同的并行情况,有多种选择,FPGA根据自身目前资源情况,填写反馈,哪些能支持,哪些不能。网络处理各FPGA设备反馈后,确定由谁计算,并下发计算指令和实现算法的硬件(即IP核),FPGA下载实现算法的硬件(即IP核),完成计算,然后释放资源。
其中,FPGA也可同时响应若干不同任务的资源请求,在资源许可的情况下,使用局部资源下载IP,组成相应的数据包,并反馈不同任务结果。
另外,计算设备还可直接将其接收到网络侧发送的资源请求指令时统计的第一剩余资源上报给网络侧,由网络侧确定第一剩余资源可满足的资源选择方式,以及不可满足的资源选择方式,并计算按照第一剩余资源可满足的资源选择方式为计算设备分配资源后,该计算设备所剩余的资源,并将这些信息返回给计算设备。
此外,在向网络侧发送第一资源选择方式、第二资源选择方式和第二剩余资源的信息时,可以直接组包反馈,不存储,并按照正常通信(例如以太网mac层协议通信)格式发送,也可按照预先新定义的帧格式发送。
可选的,在检测到所述多个节点中的目标节点满足预设类型的业务的资源需求的情况下,所述目标节点形成至少一层自治域,一层自治域包括至少一个自治域,一个自治域中包括至少一个所述目标节点。
其中,所述自治域是针对业务对资源进行优化产生的逻辑上的概念。所述目标节点包括所述网络拓扑结构中的多个节点中的至少部分节点。
假设网络拓扑结构包括编号为1至12的十二个节点,其中,编号为1、2、3的节点形成一个下层自治域,编号为5、6、7的节点形成另一个下层自治域,编号为3的节点和编号为6的节点形成一个上层自治域,即图9所示的网络拓扑结构,形成两层自治域,下层自治域包括两个自治域,上层自治域包括一个自治域。其中,可以理解的是,这里只是举例说明,并不局限于网络拓扑结构只包括十二个节点,且不限于自治域只是图9所示的形式。
其中,所述资源需求包括数据、带宽、算力和算法,从而可以在对应自治域内执行对应类型的业务,提升了业务的执行速度。此外,本发明的实施例中,一个自治域内的任意两个节点间的时延小于预设阈值,因而,在一个自治域内执行某项任务时,数据的传输速度会更块。由此可知,本发明实施例中的网络拓扑结构形成的自治域,是根据不同业务类型对应的资源需求,对节点进行逻辑上的分组。
由此可知,本发明实施例中的网络拓扑结构,在检测到其中的至少部分节点满足预设类型的业务的资源需求的情况下,自动创建至少一层自治域,其中,一层自治域包括至少一个自治域,一个自治域包括至少两个节点,即本发明实施例中的网络拓扑结构可以按照实际的资源需求来对节点进行分组,实现对节点进行的分组可动态变化,从而使得后续可以在符合实际资源需求的自治域中执行对应的业务,进而提升业务的执行速度,加快对大爆发数据的处理,在一定程度上满足了人工智能、区块链引发的海量数据和大量算力的爆发需求。
可选的,第一层自治域中设置有控制节点,所述第一层自治域的控制节点组成第二层自治域,所述第一层自治域与所述第二层自治域为相邻的两层自治域,其中,所述第一层自治域为所述至少一层自治域中的其中一层自治域。
例如第一层自治域包括自治域a、b、c、d,其中,每一个自治域中的控制节点,例如自治域a中的控制节点为节点A,自治域b中的控制节点为节点B,自治域c中的控制节点为节点C,自治域d中的控制节点为节点D,则由节点A、B、C、D 形成两个第二层自治域(例如A、B形成一个第二层自治域,C、D形成一个第二层自治域);然后,两个第二层自治域的控制节点再组成第三层自治域,例如两个第二层自治域的控制节点分别为A、C,那么节点A、C再组成第三层自治域。其中,第一层自治域、第二层自治域属于相邻的自治域,第二层自治域和第三层自治域属于相邻的自治域。
由此上述可知,本发明的实施例的网络拓扑结构,支持局域自组织管理,自组织区域根据附近节点自行组建,单个节点可参与多个自治域。其中,可选的,节点定期广播能力消息,从而根据节点的能力信息选出一个节点作为自治域的控制节点,再从控制节点间产生上一层自治域,从而形成类似神经系统的网络拓扑结构,其中,每个节点的处理和存储模块类比为树突,每个节点的对外通信模块为轴突,中转节点为突触,每个节点为胞体。
可选的,所述网络拓扑结构还包括至少一个用于在第一数据格式和第二数据格式之间进行转换的格式转换设备,所述格式转换设备连接在所述网络拓扑结构的至少一个节点与其他网络之间;
其中,所述网络拓扑结构中采用所述第一数据格式传输数据,所述其他网络中采用所述第二数据格式传输数据。另外,所述格式转换设备可看做一个连接所述网络拓扑结构和所述其他网络的外骨骼网络。
例如,所述网络拓扑结构部署在单个机房、或多个透明光纤连接的机房,可以看作为一个超级局域网。可以使用更加安全有效的通信方式,无需遵守传统互联网协议,只需在进出端口安装几台格式转换设备,将互联网的TCP/IP格式转换成所述网络拓扑结构传输数据采用的指令,即可与现有网络兼容,与现有互联网共享广域光纤资源。其中,如果所述网络拓扑结构部署在多个独立的区域,穿过公共网络,通往住宅区接入网,连接无线网络等,则需要转换所有所述拓扑网络结构与互联网之间的命令格式。
例如,如图10所示,存储交换一体机和运算交换一体机组成网络拓扑结构的节点,这样的节点组成的网络拓扑结构,通过信令通道+格式转换的设备,与互联网连接,该网络拓扑结构和互联网可以共享光纤资源。
由此可知,外骨骼网络可以大幅降低建网成本,总体效率和规模将远超过传统互联网。下一代互联网只是上述网络拓扑结构的一个副产品,当上述网络拓扑结构足够大时,传统互联网就自然被边缘化了。
另外,上述网络拓扑结构本身是一个计算和网络的联合体。通过在5G无线网络基站加入转换模块,可以将上述网络拓扑结构的服务直接送达用户终端。上述网络拓扑结构同时颠覆计算机和互联网基础结构,将迎来巨大的人工智能和感观网络新时代。
可选的,所述网络拓扑结构包括至少一层网络结构,所述寻址模块包括:
参数获取子模块,用于获取所述目标数据的第一相关参数和所述目标算法的第二相关参数;
第一寻址子模块,用于在第一层网络结构中,根据所述第一相关参数对所述第一类节点进行寻址,根据所述第二相关参数,对所述第二类节点进行寻址;
第二寻址子模块,用于在所述第一寻址子模块未寻址到所述第一类节点时,将所述第一相关参数转发给第二层网络结构的节点,直到寻址到所述第一类节点,或者对所述第一类节点的寻址时间达到第一预设时间为止,其中,所述第二层网络结构的节点接收到所述第一相关参数后,在所述第二层网络结构中对所述第一类节点进行寻址;
第三寻址子模块,用于在所述第一寻址子模块未寻址到所述第二类节点时,将所述第二相关参数转发给所述第二层网络结构的节点,直到寻址到所述第二类节点,或者对所述第二类节点的寻址时间达到第二预设时间为止,其中,所述第二层网络结构的节点接收到所述第二相关参数后,在所述第二层网络结构中对所述第二类节点进行寻址。
由上述可知,本发明的实施例中,根据目标数据的第一相关参数在第一层网络结构中对第一类节点进行寻址,并根据目标算法的第二相关参数在第一层网络结构中对第二类节点进行寻址,即根据目标数据的第一相关参数对可以提供目标数据的节点在层内进行内容寻址,根据目标算法的第二相关参数对可以提供目标算法的节点在层内进行内容寻址。亦即通过相关参数进行寻址,而不是真实的地址进行寻址,从而可以增强一定的安全性。另外,本发明的实施例,在层内进行内容寻址,缩小了内容寻址的范围,减小了一定开销。
而若在第一层网络结构中未寻址到可以提供目标数据的节点时,则将第一相关参数转发给第二层网络结构,使得第二层网络结构可以根据第一相关参数继续对能够提供目标数据的节点进行寻址,若在第二层网络结构中仍未寻址到能够提供目标数据的节点,则第二层网络结构中的节点继续将第一相关参数转发给其他层的网络结构,直到寻址到可以提供目标数据的节点,或者直到整个对可以提供目标数据节点的寻址时间达到第一预设时间时,停止寻址。
同理,若在第一层网络结构中未寻址到可以提供目标算法的节点时,则将第二相关参数转发给第二层网络结构,使得第二层网络结构可以根据第二相关参数继续对能够提供目标算法的节点进行寻址,若在第二层网络结构中仍未寻址到能够提供目标算法的节点,则第二层网络结构中的节点继续将第二相关参数转发给其他层的网络结构,直到寻址到可以提供目标算法的节点,或者直到整个对可以提供目标算法节点的寻址时间达到第二预设时间时,停止寻址。
其中,无论在哪一层寻址到可以提供目标数据的节点和可以提供目标算法的节点,在寻址到后,都需要将可以提供目标数据的节点的地址和可以提供目标算法的节点的地址反馈给需要执行目标任务的节点。
由上述可知,本发明的实施例中,在需要执行目标任务的节点在第一层网络结构中根据所需的目标内容(包括目标数据和目标算法)的相关参数,对能够提供该目标内容的节点进行内容寻址,并在第一层网络结构中未寻址到时,直接将相关参数转发给其他层网络结构中,从而在其他层网络结构中再次寻址,直到找到可以提供目标内容的节点。由此可知,本发明实施例中,在进行寻址的过程中,只在层内进行内容寻址,在层与层之间直接转发寻址所依据的参数,从而缩写了内容寻址的范围,减小了开销,并且,通过内容寻址方式,在一定程度上达到了安全性要求。
其中,上述网络拓扑结构中的每一层网络结构,可以设置控制节点,也可不设置控制节点。该控制节点中存储有本层网络结构中的所有节点的能力信息,即一层网络结构中除控制节点之外的其他节点会周期性向该层的控制节点上报各自的能力信息。
本发明实施例的数据传输方法,在每一层网络结构中设置控制节点,以及未设置控制节点的情况,具体的实现方式不同。
具体地,针对每一层网络结构中未设置控制节点的情况:
可选的,所述第一寻址子模块包括:
广播单元,用于在所述第一层网络结构中广播所述第一相关参数和所述第二相关参数。
本发明的实施例中,当第一层网络结构中未设置控制节点时,可以由广播单元控制需要执行目标任务的第一节点直接在第一层网络结构中广播所述第一相关参数,则第一层网络结构中的其他节点可以在接收到该第一相关参数后,各自判断自身是否能够提供目标数据。
可选的,所述第二寻址子模块包括:
第一发送单元,用于控制第一节点通过所述第一节点与第三节点之间的一条路径,向所述第三节点发送所述第一相关参数,其中,所述第一节点为需要执行所述目标任务的节点,所述第三节点接收到所述第一相关参数后,将所述第一相关参数转发给第四节点,所述第四节点位于所述第二层网络结构中,所述第三节点与所述第一节点均处于所述第一层网络结构中,所述第三节点与所述第四节点连接。
由此可知,本发明的实施例中,第一层网络结构与第二层网络结构通过第三节点与第四节点之间的连接实现通信。
另外,广播单元控制需要执行目标任务的节点(即第一节点)广播第一相关参数后的预设时间段内未接收到第一层网络结构中其他节点的反馈信息,则表示第一层网络结构中不存在可以提供目标数据的节点,则需要向其他层中继续寻找。此种情况下,第一发送单元可以控制第一节点按照第一节点与第三节点之间的一条通信链路,向第三节点发送指示信息,使得第三节点将第一相关参数转发给与第二层网络结构的第四节点,进而使得第四节点可以在第二层网络结构中继续对能够提供目标数据的节点进行寻址。
此外,第四节点接收到第三节点发送的第一相关参数后,在第二层网络结构中广播第一相关参数,则第二层网络结构中除去第四节点之外的其他节点接收到第一相关参数后,会判断自身能否提供目标数据,若可以,则通过其自身到第四节点的一条通向连接,将自身的地址反馈给第四节点,使得第四节点可以进一步转发给第三节点,进而使得第三节点进一步通过第三节点到第一节点的通信链路,转发给第一节点。
综上所述,当网络拓扑结构的每一层中均未设置控制节点时,本发明实施例的中对能够提供目标数据的节点进行寻址的过程,可举例如图3所示。即第一节点A在层一中广播第一相关参数,在此之后的预设时间内,第一节点A并未收到层一中其他节点的反馈,则第一节点A通过到第三节点C的一条路径,向第三节点发送指示信息,第三节点收到该指示信息后,将第一相关参数发送给第四节点D;第四节点D则在层二中广播第一相关参数,此后,第二节点B接收到第一相关参数后,判定自身可以提供目标数据,则第二节点B通过到第四节点D的一条路径,向第四节点D反馈自己的地址;第四节点D则将第二节点B的地址转发给第三节点C;第三节点C通过与第一节点A的一条路径,将第二节点B的地址发送给第一节点A。其中,为了便于理解,图3中的层一和层二只画出了第一节点至第四节点。
可选的,所述第三寻址子模块包括:
第五发送单元,用于控制所述第一节点通过所述第一节点与第三节点之间的一条路径,向所述第三节点发送所述第二相关参数,其中,所述第三节点接收到所述第二相关参数后,将所述第二相关参数转发给第四节点,所述第四节点位于所述第二层网络结构中,所述第三节点与所述第一节点均处于所述第一层网络结构中,所述第三节点与所述第四节点连接。
其中,广播单元控制需要执行目标任务的节点(即第一节点)广播第二相关参数后的预设时间段内未接收到第一层网络结构中其他节点的反馈信息,则表示第一层网络结构中不存在可以提供目标算法的节点,则需要向其他层中继续寻找。此种情况下,第五发送单元可以控制第一节点按照第一节点与第三节点之间的一条通信链路,向第三节点发送指示信息,使得第三节点将第二相关参数转发给与第二层网络结构的第四节点,进而使得第四节点可以在第二层网络结构中继续对能够提供目标算法的节点进行寻址。
此外,第四节点接收到第三节点发送的第二相关参数后,在第二层网络结构中广播第二相关参数,则第二层网络结构中除去第四节点之外的其他节点接收到第二相关参数后,会判断自身能否提供目标算法,若可以,则通过其自身到第四节点的一条通向连接,将自身的地址反馈给第四节点,使得第四节点可以进一步转发给第三节点,进而使得第三节点进一步通过第三节点到第一节点的通信链路,转发给第一节点。
其中,对于发明实施例的中对能够提供目标算法的节点进行寻址的过程的举例,可参加上述对能够提供目标数据的节点进行寻址的举例,此处不再赘述。
可选的,若第一层网络结构中存在能够提供目标数据的节点和能够提供目标算法的节点,则第一层网络结构中能够提供目标数据的节点会通过与第一节点之间的一条路径,向第一节点反馈其自身的地址,同理,第一层网络结构中能够提供目标算法的节点会通过与第一节点之间的一条路径,向第一节点反馈其自身的地址。
由此可知,当网络拓扑结构的每一层中均未设置控制节点时,本发明实施例中对能够提供目标数据的节点进行寻址的过程,还可举例如图4所示。即第一节点A在层一中广播第一相关参数,第二节点B接收到第一相关参数后,判定自身可以提供目标数据,则第二节点B通过到第一节点A的一条路径,向第一节点A反馈自己的地址。其中,为了便于理解,图4中的层一只画出了第一节点和第二节点。
同理,本发明实施例中对能够提供目标算法的节点进行寻址的过程,也可举例如图4所示,具体过程可参见对能够提供目标数据的节点进行寻址的过程,此处不再赘述。
具体地,针对每一层网络结构中设置控制节点的情况:
可选的,所述第一层网络结构中设置有第一控制节点,所述第一控制节点中存储有所述第一层网络结构中的节点的能力信息;
所述第一寻址子模块包括:
第二发送单元,用于控制第一节点将所述第一相关参数发送给第一控制节点;
其中,所述第一节点为需要执行所述目标任务的节点,所述第一控制节点接收到所述第一相关参数后,根据所述第一相关参数和所述第一层网络结构中的节点的能力信息,对所述第一类节点进行寻址。
本发明的实施例中,当第一层网络结构中设置第一控制节点时,由于第一控制节点中存储有第一层网络结构中的节点的能力信息,因而第一控制节点自身就可以确定出第一层网络结构中的哪个或者哪些节点可以提供目标数据。因而第一节点只需要把第一相关参数发送给第一控制节点即可。
可选的,所述第二层网络结构中设置有第二控制节点,所述第二控制节点中存储有所述第二层网络结构中的节点的能力信息;其中,所述第二控制节点用于接收所述第一控制节点未寻址到所述第一类节点时发送的所述第一相关参数,并根据所述第一相关参数和所述第二层网络结构中的节点的能力信息对所述第一类节点进行寻址。
其中,第一控制节点根据第一层网络结构中的节点的能力信息决策出,第一层网络结构中并不存在可提供目标数据的节点时,第一控制节点则需要将第一相关参数发送到第二层网络结构中的第二控制节点,使得第二控制节点判断第二层网络结构中是否存在可以提供目标数据的节点。
另外,若第一控制节点和第二控制节点之间并不是直接相连(即第一控制节点不与第二层网络结构的节点直接相连,或者第二控制节点不与第一层网络结构的节点直接相连),例如第一层网络结构的第三节点与第二层网络结构的第四节点相连,且第三节点和第四节点均不是控制节点,则在第一控制节点向第二控制节点发送第一相关参数的过程中,第一控制节点首先需要通过与第三节点之间的通信链路,将第一相关参数发送给第三节点;然后,第三节点将第一相关参数转发给第四节点;最后,第四节点通过与第二控制节点之间的通信链路,将第一相关参数发送给第二控制节点。
此外,第二控制节点接收到第一相关参数后,则可以根据第二层网络结构中的节点的能力信息,决策出第二层网络结构中的哪个或者哪些节点可以提供目标数据,并在存在可以提供目标数据的节点时,将该节点的地址反馈给第一层网络结构的第一控制节点,从而使得第一控制节点可以发送给第一节点。
综上所述,当网络拓扑结构的每一层中均设置有控制节点时,本发明实施例的中对能够提供目标数据的节点进行寻址的过程,可举例如图5所示。即第一节点A将第一相关参数发送给第一控制节点E,第一控制节点E根据层一中的节点的能力信息决策出该层中并不存在可以提供目标数据的节点时,第一控制节点E通过与第三节点C之间的一条路径,将第一相关参数发送给第三节点C;第三节点C将第一相关参数转发给第四节点D;第四节点D再将第一相关参数转发给层二的第二控制节点F,若第二控制节点F根据层二中的节点的能力信息决策出该层中存在可以提供目标数据的节点,即第二节点B,则第二控制节点F通过与第四节点D之间的一条路径,将第二节点B的地址发送给第四节点D;第四节点D再将第二节点B的地址转发给第三节点C;第三节点C再通过与第一控制节点E的一条路径,将第二节点B的地址发送给第一控制节点E,使得第一控制节点E可以通过与第一节点A的一条路径,将第二节点B 的地址发送给第一节点A。其中,为了便于理解,图5中的层一和层二只画出了第一节点至第四节点以及第一控制节点和第二控制节点。
可选的,所述第一层网络结构中设置有第一控制节点,所述第一控制节点中存储有所述第一层网络结构中的节点的能力信息;
所述第三寻址子模块包括:
第六发送单元,用于控制第一节点将所述第二相关参数发送给第一控制节点;
其中,所述第一节点为需要执行所述目标任务的节点,所述第一控制节点接收到所述第二相关参数后,根据所述第二相关参数和所述第一层网络结构中的节点的能力信息,对所述第二类节点进行寻址。
本发明的实施例中,当第一层网络结构中设置第一控制节点时,由于第一控制节点中存储有第一层网络结构中的节点的能力信息,因而第一控制节点自身就可以确定出第一层网络结构中的哪个或者哪些节点可以提供目标算法。因而只需要第六发送单元控制第一节点把第二相关参数发送给第一控制节点即可。
可选的,所述第二层网络结构中设置有第二控制节点,所述第二控制节点中存储有所述第二层网络结构中的节点的能力信息;其中,所述第二控制节点用于接收所述第一控制节点未寻址到所述第二类节点时发送的所述第二相关参数,并根据所述第二相关参数和所述第二层网络结构中的节点的能力信息对所述第二类节点进行寻址。
其中,第一控制节点根据第一层网络结构中的节点的能力信息决策出,第一层网络结构中并不存在可提供目标算法的节点时,第一控制节点则需要将第二相关参数发送到第二层网络结构中的第二控制节点,使得第二控制节点判断第二层网络结构中是否存在可以提供目标算法的节点。
另外,若第一控制节点和第二控制节点之间并不是直接相连(即第一控制节点不与第二层网络结构的节点直接相连,或者第二控制节点不与第一层网络结构的节点直接相连),例如第一层网络结构的第三节点与第二层网络结构的第四节点相连,且第三节点和第四节点均不是控制节点,则在第一控制节点向第二控制节点发送第二相关参数的过程中,第一控制节点首先需要通过与第三节点之间的通信链路,将第二相关参数发送给第三节点;然后,第三节点将第二相关参数转发给第四节点;最后,第四节点通过与第二控制节点之间的通信链路,将第二相关参数发送给第二控制节点。
此外,第二控制节点接收到第二相关参数后,则可以根据第二层网络结构中的节点的能力信息,决策出第二层网络结构中的哪个或者哪些节点可以提供目标算法,并在存在可以提供目标算法的节点时,将该节点的地址反馈给第一层网络结构的第一控制节点,从而使得第一控制节点可以发送给第一节点。
综上所述,当网络拓扑结构的每一层中均设置有控制节点时,本发明实施例的中对能够提供目标算法的节点进行寻址的过程,可举例如图5所示,详细过程可参加对能够提供目标数据的节点进行寻址的过程举例,此处不再赘述。
由上述可知,当网络拓扑结构的每一层中均设置有控制节点时,目标内容的第一相关参数通过控制节点广播,能够提供目标内容的节点的地址通过控制节点反馈,则需要目标内容的节点可以不需要知道提供目标内容的节点,提供目标内容的节点也可以不需要知道为哪个节点提供,从而可以进一步寻址过程中的安全性。其中,所述目标内容为上述目标数据或者目标算法。
可选的,当网络拓扑结构的每一层中均设置有控制节点时,第一节点将第一相关参数发送给第一层网络结构的第一控制节点,由第一控制节点根据给第一相关参数和第一层网络结构中的节点的能力信息,确定第一层网络结构中是否存在可以提供目标内容的第二节点,若存在,则第一控制节点将第二节点的地址发送给第一节点。
由此可知,当网络拓扑结构的每一层中均设置有控制节点时,本发明实施例中,对能够提供目标数据的第一类节点进行寻址的过程,还可举例如图6所示。即第一节点A将第一相关参数发送给层一的第一控制节点E,由第一控制节点E判定层一中存在可以提供目标内容的第二节点B,则第一控制节点E通过到第一节点A的一条路径,向第一节点A反馈第二节点B的地址。其中,为了便于理解,图6中的层一和层二只画出了第一节点、第二节点和第一控制节点。同理,本发明实施例中对能够提供目标算法的节点进行寻址的过程,也可举例如图6所示,具体过程可参见对能够提供目标数据的节点进行寻址的过程,此处不再赘述。
综上所述,本发明的实施例中,在层内采用内容寻址,在层与层之间直接转发进行内容寻址所依据的参数,从而建立通信连接。其中,链路组成完成后,业务内容按照地址寻址和处理功能分块,对数据进行标记和发送,中转节点只做自己被划分的处理,并重新组成处理后的包,其他内容透传。内容在传输过程中进行处理,每次处理后不再传输数据,而是传输处理完数据产生的知识。
此外,在实际应用场景中,例如图7所示,一个大型公司的网络拓扑结构包括三层网络结构,其中,层一包括营业厅节点101~106,层二包括地区分公司节点201~203,层三包括省公司节点301。其中,每个营业厅节点都连接有不同类型的设备,主要包括人脸识别摄像头、人流监控摄像头、烟雾传感器、空气质量传感器,则这些设备分别进行数据采集,并存储到对应的营业厅节点。
其中,在省公司节点存在实时数据需求时,例如省公司节点要求准确寻找某个人,则省公司节点在层二中寻址可以提供该任务相关内容的节点,例如省公司节点可以发送任务包给层二中的地区分公司节点(或者广播该任务包),则各地区分公司节点会判断是否是自己的任务,然后匹配到任务的地区分公司节点向与其连接的营业厅节点发送该任务包,从而使得接收到任务包的营业厅节点解析数据,获取到业务类型为固件更新,数据类型为代码,以及具体的设备号码,进而根据获取到的这些信息执行任务,并在完成任务后进行反馈。
具体地,省公司节点发送的任务包包括:实时上报、数据类型为视频,设备类型、内容为被监控人照片和编号。则营业厅节点接收到该任务包后,会执行如下过程:
营业厅节点获取网表文件,由板载管理ARM通过JTAG(联合测试工作组)接口下载,当下载完成时,营业厅节点的下载模块生成确认消息,发给营业厅节点的通信模块,使得营业厅节点的通信模块按照1kB帧格式填写内容并反馈。其中,反馈后营业厅节点的ARM发指令给营业厅节点的FPGA,从而打开FPGA的通信模块,使得FPGA直接接收与营业厅节点连接的摄像头的IP数据(其中,与营业厅节点连接的摄像头运行UDP(用户数据报协议)模式)。其中,营业厅节点的FPGA通信模块接收数据后,通过FPGA视频解码模块完成解码,交由下载的AI模块负责推理。AI模块反馈发现消息,触发转发模式,记录时间点,将DDR(双倍数据速率)内1分钟内最新视频,通过FPGA的通信模块转发给地区分公司节点。其中,地区分公司,
还可以根据各地收到的实时上报,做进一步分析。
其中,FPGA通过ARM维护文件系统,视频内容由FPGA直接入硬盘。FPGA与ARM通过PCIE(高速串行计算机扩展总线标准)口通信。另外营业厅节点中包括多个FPGA,而此处的FPGA只负责这个场景任务,其他日常监控任务由其他FPGA并行执行。
此外,所述寻址模块,还可包括:
数据上报子模块,用于控制所述第二层网络结构的一个节点向所述第一层网络结构的一个节点周期性上报数据。
例如图7所示的大型公司的网络拓扑结构包括三层网络结构,在营业厅节点周期上报设备数据时,具体执行过程可如下第一步骤至第四步骤所述:
第一步骤:营业厅节点每日监控数据,业务类型,设备号,数据类型存于本地。例如:可以按照业务VIP统计,第一人脸摄像头,视频源文件,存储VIP客户相关视频;或者按照业务VIP统计,第一人脸摄像头,在店时间,存储所监控到VIP在店时间统计;或者按照业务店员统计,第一人脸摄像头,在店时间,存储所监控到店员在店时间统计。
第二步骤:营业厅节点根据预先设定的上报内容(其中主要是统计内容),在规定时间,自动组包,包长统一1kB。其中,可以仍然用现有网络传输,地址这层只用于内容标识,营业厅节点有一个网关,负责TCP(Transmission Control Protocol,传输控制协议)/IP封装和与现有网络对接,这是标准TCP/IP协议,此处不再赘述。
第三步骤:地区分公司节点,根据各营业厅节点上报内容,进行本地统计,生成报表,并采用报文(该报文格式可参见表1)继续上报。其中,地区分公司节点之间有逻辑环,且每个分公司都有对上层和下层数据传输出口。
第四步骤:省公司节点统计内容,例如统计VIP进店平均时长,员工工作时长场,每个店面客流等。
表1报文格式
Figure 38902DEST_PATH_IMAGE001
可选的,对于所述网络拓扑结构从宏观上,给定任意两点(原点和终点),定义一条路径,则在第一节点(即起点)向第二节点(即终点)发送数据时,首先判断原点与终点是否在同一网络层次。如果在同一层次,则执行同层转发。如果不在同一层次,则通过层间垂直跨接,向上层或下层转发。
可选的,所述网络拓扑结构的节点地址包括与每一层对应的字段。例如所述网络拓扑结构包括三层网络结构时,可以分为高层、中层和低层。在从第一节点向第二节点发送数据包时,具体过程可以如下所述:
如果两者的三段地址全部相等,表示数据包到达目的地,第二节点的交换机接纳该数据包。并且表示交换功能结束。然后,执行后续可能的储存或运算操作。如果两者不全等,则需进一步分析:若两者高层地址不等,则通过跨接,向高层网络结构转发。进一步说,如果该节点不与高层直连,则数据包沿平级转发,直到找到高层网络结构的连接节点;如果数据包的目标地址与本地端口的高层地址相等,但本层地址不等,则根据本层随机地址标记,沿着本层地址增加或减少方向发送,直到找到本地匹配;如果数据包的高层和本层地址与本地端口都相等,但下层地址不等,则通过跨接转发至下层;如果该节点不与下层直连,则沿平级转发,直至找到下层网络的连接节点。
可选的,任务处理模块包括:
任务执行节点确定子模块,用于在所述寻址模块寻址到至少一个第一类节点和至少一个第二类节点的情况下,从所述至少一个第一类节点中选择提供一组所述目标数据的节点作为第一目标节点,从所述至少一个第二类节点中选择提供一组所述目标算法的节点作为第二目标节点;
处理子模块,用于与所述第一目标节点和所述第二目标节点交互,以使所述第二目标节点采用所述目标算法对所述第一目标节点提供的所述目标数据进行处理。
其中,所述目标数据包括至少一项数据,例如可以包括A、B两项数据。所述目标算法包括至少一种算法,例如可以包括C、D算法。本发明的实施例中,目标数据与目标算法相对应,即目标数据是执行目标算法所需的数据。例如待执行的目标任务是对A、B数据先后执行C算法和D算法,则A、B数据与C、D算法对应。
另外,本发明的实施例中,将数据和算法分别分布到网络中,而不再将数据统一存储到需要执行目标任务的节点,也不再由需要执行目标任务节点自己执行目标算法,而是分配给具备目标算法的处理能力的节点去执行,即本发明的实施例,将分布式存储和分布式计算相结合,可以降低网络拓扑结构中单个节点的能力,从而降低单个节点的设计成本,进而降低整个网络拓扑结构的设计成本。
此外,网络拓扑结构中包括多个节点,因此可能存在多个节点可以提供目标数据,多个节点可以执行目标算法。并且,可能目标数据分布在多个节点上,目标算法也分布在多个节点上。而执行目标任务只需要提供一组目标数据的节点以及提供一组目标算法的节点即可。
可选的,所述任务处理设备还包括:
任务拆分模块,用于根据所述网络拓扑结构中的节点的能力信息,将待执行的任务拆分为至少一个子任务,并将所述至少一个子任务中的一个确定为所述目标任务。
由此可知,本发明实施例中,在待执行的任务涉及复杂的算法时,还可可以首先根据网络拓扑结构中各个节点的能力信息(即各个节点分别具备哪些算法处理能力),进行任务拆分,从而可以获得多项子任务,其中,一项子任务的算法由一个节点提供。
对于拆分获得的各个子任务,分别对应有执行的先后顺序,例如拆分获得子任务一、子任务二和子任务三,子任务一和子任务二所需的数据和算法互不冲突,可以并行执行,子任务三所需的数据是子任务一和子任务二所生成的数据,则子任务三在子任务一和子任务二之后执行,其中针对子任务一和子任务二,都可以首先获取网络拓扑结构中可以提供数据和算法的节点,然后选取其中一个可以提供数据的节点和一个可以提供算法的节点,然后由提供算法的节点对提供数据的节点所提供的数据进行处理,然后存储处理后的数据。另外,在执行子任务三时,已经明确子任务一和子任务二执行算法的节点,则可以首先确定网络拓扑结构中可以提供子任务三对应的算法的节点,进而选出一个可以提供子任务三对应的算法的节点,对子任务一和子任务二中执行算法的节点中存储的子任务三所需的数据进行处理,实现对整个总任务的执行。
具体的,例如,需要对一段时长为10分钟的源视频中的前5分钟采用第一模型进行处理,后5分钟采用第二模型进行处理,最后再对两部分模型处理后的视频进行合成,则该任务可以划分为三个子任务,即:
子任务一:对源视频的前5分钟进行第一模型处理;
子任务二:对源视频的后5分钟进行第二模型处理;
子任务三,进行视频合成。
针对子任务一:首先需要获取网络拓扑结构中可以提供源视频的节点,可以提供第一模型的节点,从而选出一个可以提供源视频的节点,一个可以提供第一模型的节点,进而将源视频的前5分钟的视频流传输给选出的可以提供第一模型的节点。
针对子任务二:由于子任务一中已选出一个可以提供源视频的节点,则在子任务二的处理过程中,需要获取网络拓扑结构中可以提供第二模型的节点,从而选出一个可以提供第二模型的节点,进而将源视频的后5分钟的视频流传输给选出的可以提供第二模型的节点。
针对子任务三:由于子任务三所需的数据是子任务一和子任务二执行后获得的数据,因而在子任务三的处理过程中,需要获取网络拓扑结构中可以进行视频合成的节点,从而选出一个可以进行视频合成的节点,将子任务一中提供第一模型的节点输出的数据,以及子任务二中提供第二模型的节点输出的数据进行视频合成。
由此可知,本发明的实施例,针对算法复杂的任务,可以进行任务拆分,从而将各个任务的算法分布到网络中,而不是由一个节点同一执行,不仅可以降低单个节点的能力要求,而且可以缩短任务处理时间。
可选的,所述任务执行节点确定子模块包括:
组合单元,用于获取提供一组所述目标数据的节点和提供一组所述目标算法的节点形成的组合;
选择单元,用于根据每个组合的能力信息,选择一个目标组合,并将所述目标组合中提供一组所述目标数据的节点确定为所述第一目标节点,将所述目标组合中提供一组所述目标算法的节点确定为第二目标节点;
其中,所述组合的能力信息包括所述组合中提供一组所述目标数据的节点到提供一组所述目标算法的节点的时延、提供一组所述目标算法的节点执行所述目标算法所需的时长、提供一组所述目标算法的节点的缓存空间大小中的至少一项。
其中,需要说明的是,若未进行任务拆分,则一组目标算法可能会由多个节点来提供,那么,在此种情况下:
第一方面,若提供一组目标数据的节点也包括多个节点,则提供一组目标数据的节点到提供一组目标算法的节点的时延可以为,每一个提供目标数据的节点到每一个提供目标算法的节点的时延之差或者平均值,例如提供一组目标数据的节点包括a、b节点,提供一组目标算法的节点为c、d节点,则a-c、b-c、a-d、b-d的时延之差或者平均值可以作为该组提供目标数据的节点和该组提供目标算法的节点之间的时延。
第二方面,提供一组所述目标算法的节点执行所述目标算法所需的时长可以为,该组中执行各自所提供的算法所需的时长之和或者平均值。
第三方面,提供一组所述目标算法的节点的缓存空间大小可以为,该组中的提供目标算法的节点的缓存空间之和或者平均值。
若进行了任务拆分,则一组目标算法由一个节点来提供,那么,在此种情况下:
第一方面,若提供一组目标数据的节点也包括多个节点,则提供一组目标数据的节点到提供一组目标算法的节点的时延可以为,每一个提供目标数据的节点到提供目标算法的节点的时延之差或者平均值,例如提供一组目标数据的节点包括a、b节点,提供一组目标算法的节点为c节点,则a-c、b-c的时延之差或者平均值可以作为该组提供目标数据的节点和提供目标算法的节点之间的时延。
第二方面,提供一组所述目标算法的节点执行所述目标算法所需的时长即为提供目标算法的节点执行目标算法所需的时长。
第三方面,提供一组所述目标算法的节点的缓存空间大小可以为,提供目标算法的节点的缓存空间。
另外,对于上述组合,例如,目标数据包括A、B两项数据,分别可以由网络拓扑结构中的a、b节点提供,目标算法包括C算法这一种,可以由网络拓扑结构中的c、d节点提供,则可以获得的组合如下所示:
组合一:a、b、c;
组合二:a、b、d。
则可以分别获取上述两个组合的能力信息,然后根据这两个组合各自的能力信息,选出一个组合,从而由选出的组合中提供目标算法的节点采用目标算法,对该组合中提供目标数据的节点所提供的目标数据进行处理。
此外,所述目标组合为提供一组目标数据的节点和提供一组目标算法的节点形成的所有组合中,能力最强的组合。其中,组合的能力可以通过组合中提供一组目标数据的节点到提供一组目标算法的节点的时延、提供一组目标算法的节点执行目标算法所需的时长、提供一组目标算法的节点的缓存空间大小中的至少一项来表示,例如提供一组目标数据的节点到提供一组目标算法的节点的时延越小、提供一组目标算法的节点执行目标算法所需的时长越小、提供一组目标算法的节点的缓存空间越大,则表示该组合的能力越强。
可选的,所述选择单元包括:
第一选择子单元,用于选择所述组合中提供一组所述目标数据的节点到提供一组所述目标算法的节点的时延中的最小值对应的组合,作为所述目标组合;
或者
第二选择子单元,用于选择所述组合中提供一组所述目标算法的节点执行所述目标算法所需的时长中的最小值对应的组合,作为所述目标组合;
或者
第三选子单元,用于选择所述组合中提供一组所述目标算法的节点的缓存空间中的最大值对应的组合,作为所述目标组合;
或者
第四选择子单元,用于选择所述组合中提供一组所述目标数据的节点到提供一组所述目标算法的节点的时延,与该组合中的提供一组所述目标算法的节点执行所述目标算法所需的时长之和中的最小值对应的组合,作为所述目标组合;
或者
第五选择子单元,用于选择所述组合的第一比值中的最小值对应的组合,作为所述目标组合,其中,所述第一比值为所述组合中提供一组所述目标数据的节点到提供一组所述目标算法的节点的时延,与该组合中的提供一组所述目标算法的节点的缓存空间大小的数值之比;
或者
第六选择子单元,用于选择所述组合的第二比值中的最小值对应的组合,作为所述目标组合,所述第二比值为所述组合中提供一组所述目标算法的节点执行所述目标算法所需的时长,与该组合中的提供一组所述目标算法的节点的缓存空间大小的数值之比。
由上述可知,本发明实施例中,可以采用上述六个选择子单元中的任意一个来选择目标组合。其中,可以理解的是,对于选择目标组合的具体方式,并不局限于此,还可是其他根据组合的能力信息进行选择的其他方式。
可选的,所述处理子模块包括:
第三发送单元,用于向所述第一目标节点发送第一指示信息,所述第一指示信息用于指示所述第一目标节点将所述目标数据发送给所述第二目标节点;
第四发送单元,用于向所述第二目标节点发送第二指示信息,所述第二指示信息用于指示所述第二目标节点采用所述目标算法,对所述目标数据进行处理;
接收单元,用于接收所述第二目标节点发送的采用所述目标算法对所述目标数据处理后获得的数据。
本发明的实施例中,需要执行目标任务的节点(即第一节点),选出提供一组目标数据的节点(即第一目标节点)和提供一组目标算法的节点(即第二目标节点)后,向第一目标节点发送指示信息,使得第一目标节点将其中存储的目标数据发送给第二目标节点,从而由第二目标节点采用目标算法进行处理,进而将处理后获得的数据返回给上述需要执行目标任务的节点。
其中,需要说明的是,未进行任务拆分,则一组目标算法可能会由多个节点来提供,那么,在此种情况下:
若提供一组目标数据的节点包括多个节点,则提供一组目标数据的多个节点分别将对应的数据传输到对应算法的节点,例如提供一组目标数据的节点包括a、b节点,提供目标算法的节点包括c、d节点,a节点提供的数据需要c节点来处理,b 节点提供的数据需要d节点来处理,则a节点需要将数据传输到c节点,b 节点需要将数据传输到d节点来处理。
即在一组目标算法由多个节点提供,一组目标数据由多个节点提供的情况下,需要按照数据与算法的对应关系,以及各个算法的执行顺序来进行处理。
若进行了任务拆分,则一组目标算法由一个节点来提供,那么,在此种情况下:
提供目标数据的节点将各自所提供的数据发送给提供目标算法的节点,由提供目标算法的节点对接收到的数据进行处理即可。
可选的,在所述目标数据包括视频流或者音频流的情况下,所述处理子模块包括:
第一处理单元,用于与所述第一目标节点和所述第二目标节点交互,以使所述第二目标节点采用所述目标算法对所述第一目标节点发送的所述目标数据的第一数据包进行处理;
其中,所述第一数据包包括预设时长的视频流或音频流。所述预设时长的视频可以包括预设数量的视频帧。
可选的,所述处理子模块还包括:
第二处理单元,用于在接收所述第二目标节点发送的处理后的所述第一数据包的过程中,与所述第一目标节点和所述第二目标节点交互,以使所述第二目标节点采用所述目标算法对所述第一目标节点发送的所述目标数据的第二数据包进行处理;
其中,所述第二数据包包括预设时长的视频流或音频流。
本发明的实施例中,在对视频流或者音频流进行处理时,可以针对数据包逐一进行处理,然后将处理完成的数据包发送出去,即本发明的实施例,通过数据驱动计算,不再等待数据收集完成,而是在输出传输过程中,分步进行计算,这样能提高效率,缩短时延。
综上所述,对于本发明实施例体的应用场景可举例如下:
例如图7所示,一个网络拓扑结构包括三层网络结构,其中,层一包括节点101~106,层二包括节点201~203,层三包括节点301。其中,节点101中存储有视频实拍数据,节点102中存储有AR素材,节点103中存储有3D扫描数据。
当节点301需要一个以节点101中的视频实拍为背景、以节点102中的AR素材增加趣味性、以节点103的扫描数据作为内容的视频时,在业务开始时,节点301发出三条请求,可以广播方式,也可以直接点对点发送,其中,请求中包括:业务类型、资源请求、数据类型、内容描述。
节点101、节点102和节点103分别响应节点301发送的请求,附带样本内容反馈。节点301接收到节点101、节点102和节点103的反馈后,采用本发明实施例的任务处理方法规划处理路径,即确定提供数据的节点和提供内容的节点,例如提供数据的节点是节点101、节点102和节点103,提供算法的节点是节点201,则节点301会下发所需视频背景生成代码给节点101,下发AR动作和时间点给节点102,下发3D提取时间信息和所需内容给节点103,下发视频合成代码给节点201。
此后,节点101使用节点301下发的工具,对要求视频做预处理,生成背景视频,编码压缩后发送给节点201;节点102根据要求的AR动作和时间点,提供AR素材给节点201;节点103根据要求的3D内容和时间点,提供3D内容给节点201;节点201接收节点101、节点102、节点103提供的相关数据进行视频合成,并转码,合成新视频后,转发给节点301。
由上述可知,本发明的实施例,在进行任务处理时,将数据和算法分别分布到网络中,而不再将数据统一存储到需要执行目标任务的节点,也不再由需要执行目标任务节点自己执行目标算法,而是分配给具备目标算法的处理能力的节点去执行,即本发明的实施例,将分布式存储和分布式计算相结合,不仅可以提高数据的安全性,而且可以降低网络拓扑结构中单个节点的能力,从而降低单个节点的设计成本,进而降低整个网络拓扑结构的设计成本。
即本发明的实施例中,对计算机应用流程进行彻底分解和优化,不难得到如图8所示的任务处理方法(即信息处理流水线,或者说,神经网络)。显然,流水线中每道神经元工序的设计,不需要复杂软件。从表面上看,流水线由许多简单工序组成,关键是强大的后台支撑体系。未来计算网络不需要洋葱式的复杂软件,而是依赖网络协议实现超强的管理和协同能力。这种网络协议可以由多种方式实现,因地制宜,工序分解,管理集中。其中,网络协议不需要复杂软件,或者,可以轻松实现不同软件系统的互通。
由此可见,本发明实施例的计算机系统,放弃低效的诺依曼洋葱结构,采用高效的流水线任务处理方法以及无CPU的计算机和无边际的计算机网络架构,将融合计算和网络为一体,动态调整资源。由此可见,本发明实施例的计算机系统,将计算、通信、存储一体化,消除了CPU的边界,提出了新的网络流水线计算流程,大大简化了网络操作,形成了软硬件融合的自主可控的网络计算架构和通用计算平台,并将进一步结合垂直行业应用,形成开发方便,灵活部署,性能优越的低时延人工智能时代产品。
可选的,所述第一通信模块为无线通信模块。即本发明实施例中的计算机系统中的多个计算设备中的至少部分计算设备可以通过无线方式通信连接。
可选的,所述无线通信模块为中心控制时分复用无线通信微基站网络,即本发明实施例中的计算机系统中的多个计算设备中的至少部分计算设备之间通过边界自适应微基站无线通信网络通信连接。
其中,边界自适应微基站无线通信网络,在传统时分基础上,增加了动态发射功率控制、多基站统一资源协调、和统计复用技术,并突破了传统无线蜂窝结构,实行多基站统一宏观时隙分配,同化所有基站和终端,而且还根据用户终端分布密度和通信流量,动态调整小区分界。
综上所述,本发明实施例的计算机系统,是一种去结构的资源组合,建立非结构化资源的计算网络,相当于PC工业的Intel。其在三种基本资源(算力、带宽、储存)的维度上,进一步定义两种组合,即储存交换和计算交换。这两种组合可以满足任意规模的计算需求,甚至,超过传统计算机范畴,覆盖高性能网络的功能。然后,通过一组协议语言管理这些基本资源,并由一个单片机执行,这种管理的资源规模可达单片机本身的万倍以上。因此,管理成本可以忽略不计。
本发明实施例的计算机系统实际是一个超级网络,具备统一资源定义,统一数据结构,统一硬件设计,包括统一接口的异构算法引擎。从芯片内部开始,多次叠加,形成大覆盖,一直扩展到全球大网。确保使用一套管理规则,一套软件流程,一套协议语言,构建全系统。也就是说,本发明实施例的计算机系统设计围绕一个目标:承载操作系统和应用软件。因此,首先把数据中心做强(百倍效率),然后做大(没有边界),最后面向大市场(人工智能和感观网络)。
本发明实施例提出的计算机系统包括:硬件结构,操作系统,和应用软件。能够面向大规模服务和海量消费者,再次扩大基于非诺依曼结构的计算规模百倍以上。也就是说,两条措施合在一起可以轻松扩大总算力万倍以上。而且,这个算力扩展不受摩尔定律的限制,一劳永逸地为下一代计算机提供了几乎无限的低能耗算力资源。
事实上,本发明实施例的计算机系统的目标是消除CPU。这是一条可编程计算的单行道:从起点全CPU,到GPU,到单FPGA协调多CPU/GPU,再到单CPU管理多GPU/FPGA,直到终点全FPGA。而本发明实施例的计算机系统选择的道路是直奔计算机的终极目标。就是打破诺依曼设定的限制,放弃CPU,放弃业界推崇的多核CPU和多服务器结构。根据这个终极目标,还必然放弃了传统操作系统,集群和虚拟软件,各类中间件和数据库软件。实际上,从总体上放弃了CPU和传统软件。实际上,放弃CPU,使得本发明实施例的计算机系统的结构大大简化。
总之,本发明的实施例,能够降低对现有计算机网络和复杂CPU芯片的依赖,能够实现知识产权完整,自底向上自主可控,基于现有中国工业基础课实现全部设计,即具有重大的科技意义;能够服务重大产业领域的重大产品,面向AI金融、AI交通、AI芯片、边缘计算的海量市场,在AI时代产生世界级计算和网络架构公司的领域,即具有重大产业意义。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (9)

1.一种计算机系统,其特征在于,包括:
多个计算设备,所述计算设备包括并联的存储单元和至少一个计算单元,所述多个计算设备被划分为多个节点,所述多个节点组成网络拓扑结构;
通信设备,所述通信设备包括:自治域组建模块和第一通信模块,所述自治域组建模块,用于在检测到所述多个节点中的目标节点满足预设类型的业务的资源需求的情况下,控制所述目标节点形成至少一层自治域,一层自治域包括至少一个自治域,一个自治域中包括至少一个所述目标节点;所述第一通信模块用于将所述多个计算设备通信连接;
任务处理设备,所述任务处理设备包括:寻址模块和任务处理模块,所述寻址模块用于在所述网络拓扑结构中对第一类节点和第二类节点进行寻址,所述第一类节点为提供待执行的目标任务所需的目标数据的节点,所述第二类节点为提供所述目标任务所需的目标算法的节点;所述任务处理模块用于与所述第一类节点和所述第二类节点交互,以使所述第二类节点采用所述目标算法对所述第一类节点提供的所述目标数据进行处理。
2.根据权利要求1所述的计算机系统,其特征在于,所述存储单元包括用于通信和管理所述存储单元的第一虚拟管理单元电路,所述计算单元包括用于通信和管理所述计算单元的第二虚拟管理单元电路,所述第一虚拟管理单元电路和所述第二虚拟管理单元电路分别与对外物理通信接口连接。
3.根据权利要求1所述的计算机系统,其特征在于,所述计算单元包括可编程逻辑器件。
4.根据权利要求1所述的计算机系统,其特征在于,所述计算设备还包括:
分别与所述存储单元、所述计算单元和对外物理通信接口连接的第二通信模块,用于在接收到资源请求指令时,确定所述第二通信模块所属计算设备当前时刻的第一剩余资源;
分别与所述存储单元、所述计算单元、所述对外物理通信接口和所述第二通信模块连接的资源模块,用于根据所述资源请求指令,获取所需资源信息,所述所需资源信息包括至少一种资源选择方式;
所述资源模块,还用于根据所述第一剩余资源以及所述所需资源信息包括的资源选择方式,分配资源;
其中,所述存储单元中包括多个单元电路,所述计算单元中包括多个单元电路,所述资源包括第一类资源、第二类资源、第三类资源和第四类资源中的任意一种,或者包括所述第一类资源和所述第二类资源,或者包括所述第一类资源和所述第四类资源,或者包括所述第二类资源和所述第三类资源,或者包括所述第三类资源和所述第四类资源;
所述第一类资源包括第一数量的所述存储单元,所述第二类资源包括第二数量的所述计算单元,所述第三类资源包括第三数量的所述存储单元中的单元电路,所述第四类资源包括第四数量的所述计算单元中的单元电路,所述第一数量、所述第二数量、所述第三数量和所述第四数量均为整数。
5.根据权利要求4所述的计算机系统,其特征在于,所述资源模块包括:
第一确定子模块,用于确定所述第一剩余资源可满足的第一资源选择方式,以及所述第一剩余资源不可满足的第二资源选择方式,所述第一资源选择方式和所述第二资源选择方式分别为所述所需资源信息中包括的资源选择方式中的至少一种;
第二确定子模块,用于确定所述第一剩余资源满足所述第一资源选择方式后的第二剩余资源;
反馈子模块,用于向发送所述资源请求指令的设备反馈所述第一资源选择方式、所述第二资源选择方式和所述第二剩余资源的信息。
6.根据权利要求1所述的计算机系统,其特征在于,所述网络拓扑结构包括至少一层网络结构,所述寻址模块包括:
参数获取子模块,用于获取所述目标数据的第一相关参数和所述目标算法的第二相关参数;
第一寻址子模块,用于在第一层网络结构中,根据所述第一相关参数对所述第一类节点进行寻址,根据所述第二相关参数,对所述第二类节点进行寻址;
第二寻址子模块,用于在所述第一寻址子模块未寻址到所述第一类节点时,将所述第一相关参数转发给第二层网络结构的节点,直到寻址到所述第一类节点,或者对所述第一类节点的寻址时间达到第一预设时间为止,其中,所述第二层网络结构的节点接收到所述第一相关参数后,在所述第二层网络结构中对所述第一类节点进行寻址;
第三寻址子模块,用于在所述第一寻址子模块未寻址到所述第二类节点时,将所述第二相关参数转发给所述第二层网络结构的节点,直到寻址到所述第二类节点,或者对所述第二类节点的寻址时间达到第二预设时间为止,其中,所述第二层网络结构的节点接收到所述第二相关参数后,在所述第二层网络结构中对所述第二类节点进行寻址。
7.根据权利要求1所述的计算机系统,其特征在于,任务处理模块包括:
任务执行节点确定子模块,用于在所述寻址模块寻址到至少一个第一类节点和至少一个第二类节点的情况下,从所述至少一个第一类节点中选择提供一组所述目标数据的节点作为第一目标节点,从所述至少一个第二类节点中选择提供一组所述目标算法的节点作为第二目标节点;
处理子模块,用于与所述第一目标节点和所述第二目标节点交互,以使所述第二目标节点采用所述目标算法对所述第一目标节点提供的所述目标数据进行处理。
8.根据权利要求1所述的计算机系统,其特征在于,还包括至少一个用于在第一数据格式和第二数据格式之间进行转换的格式转换设备,所述格式转换设备连接在所述网络拓扑结构的至少一个节点与其他网络之间;
其中,所述网络拓扑结构中采用所述第一数据格式传输数据,所述其他网络中采用所述第二数据格式传输数据。
9.根据权利要求1所述的计算机系统,其特征在于,所述第一通信模块为无线通信模块。
CN202010076233.5A 2020-01-23 2020-01-23 一种计算机系统 Active CN110928694B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202010076233.5A CN110928694B (zh) 2020-01-23 2020-01-23 一种计算机系统
US17/794,468 US11706076B2 (en) 2020-01-23 2021-01-22 Computer system with computing devices, communication device, task processing device
PCT/CN2021/073406 WO2021148015A1 (zh) 2020-01-23 2021-01-22 一种计算机系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010076233.5A CN110928694B (zh) 2020-01-23 2020-01-23 一种计算机系统

Publications (2)

Publication Number Publication Date
CN110928694A true CN110928694A (zh) 2020-03-27
CN110928694B CN110928694B (zh) 2021-01-22

Family

ID=69854675

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010076233.5A Active CN110928694B (zh) 2020-01-23 2020-01-23 一种计算机系统

Country Status (1)

Country Link
CN (1) CN110928694B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021148015A1 (zh) * 2020-01-23 2021-07-29 飞诺门阵(北京)科技有限公司 一种计算机系统
WO2021148014A1 (zh) * 2020-01-23 2021-07-29 飞诺门阵(北京)科技有限公司 一种任务处理方法、装置及电子设备
WO2021229345A1 (en) * 2020-05-12 2021-11-18 International Business Machines Corporation Optimized deployment of analytic models in an edge topology
CN113807531A (zh) * 2020-06-12 2021-12-17 百度(美国)有限责任公司 利用地址随机化的ai模型转移方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101986272A (zh) * 2010-11-05 2011-03-16 北京大学 一种云计算环境下的任务调度方法
CN102833289A (zh) * 2011-06-16 2012-12-19 宁波速腾电子有限公司 一种分布式云计算资源组织和任务分配方法
CN105577572A (zh) * 2014-10-11 2016-05-11 南京理工大学 基于预算限制自组织云任务执行时间最短化资源分配方法
US10108560B1 (en) * 2016-09-14 2018-10-23 Evol1-Ip, Llc Ethernet-leveraged hyper-converged infrastructure

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101986272A (zh) * 2010-11-05 2011-03-16 北京大学 一种云计算环境下的任务调度方法
CN102833289A (zh) * 2011-06-16 2012-12-19 宁波速腾电子有限公司 一种分布式云计算资源组织和任务分配方法
CN105577572A (zh) * 2014-10-11 2016-05-11 南京理工大学 基于预算限制自组织云任务执行时间最短化资源分配方法
US10108560B1 (en) * 2016-09-14 2018-10-23 Evol1-Ip, Llc Ethernet-leveraged hyper-converged infrastructure

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021148015A1 (zh) * 2020-01-23 2021-07-29 飞诺门阵(北京)科技有限公司 一种计算机系统
WO2021148014A1 (zh) * 2020-01-23 2021-07-29 飞诺门阵(北京)科技有限公司 一种任务处理方法、装置及电子设备
US11706097B2 (en) 2020-01-23 2023-07-18 Novnet Computing System Tech Co., Ltd. Task processing method applied to network topology, electronic device and storage medium
US11706076B2 (en) 2020-01-23 2023-07-18 Novnet Computing System Tech Co., Ltd. Computer system with computing devices, communication device, task processing device
WO2021229345A1 (en) * 2020-05-12 2021-11-18 International Business Machines Corporation Optimized deployment of analytic models in an edge topology
US11240340B2 (en) 2020-05-12 2022-02-01 International Business Machines Corporation Optimized deployment of analytic models in an edge topology
GB2610969A (en) * 2020-05-12 2023-03-22 Ibm Optimized deployment of analytic models in an edge topology
CN113807531A (zh) * 2020-06-12 2021-12-17 百度(美国)有限责任公司 利用地址随机化的ai模型转移方法
CN113807531B (zh) * 2020-06-12 2023-08-22 百度(美国)有限责任公司 利用地址随机化的ai模型转移方法

Also Published As

Publication number Publication date
CN110928694B (zh) 2021-01-22

Similar Documents

Publication Publication Date Title
CN110928694B (zh) 一种计算机系统
Stojmenovic Fog computing: A cloud to the ground support for smart things and machine-to-machine networks
Xue et al. Edge computing for internet of things: A survey
CN105306354B (zh) 一种不使用显式寻址的网络数据通信方法及系统
Agrawal et al. Simulation of network on chip for 3D router architecture
Wen et al. A RESTful framework for Internet of things based on software defined network in modern manufacturing
CN110213175B (zh) 一种面向知识定义网络的智能管控系统及管控方法
CN110932920B (zh) 一种网络拓扑结构
CN115914402B (zh) 算力资源节点的确定方法、装置、设备以及存储介质
CN107204919A (zh) 一种基于pof的边缘快速路由与缓存系统及方法
CN113572815A (zh) 一种跨异构平台的通信技术方法、系统及介质
CN114710571B (zh) 数据包处理系统
Rath et al. MAQ system development in mobile ad-hoc networks using mobile agents
Gadasin et al. Organization of Interaction between the Concept of Fog Computing and Segment Routing for the Provision of IoT Services in Smart Grid Networks
CN106209996A (zh) 通信处理方法和装置
US11706076B2 (en) Computer system with computing devices, communication device, task processing device
CN108737455B (zh) 网络业务识别装置及方法
CN109547345B (zh) 一种软件定义机载网络系统及内容驱动的路由方法
US11706097B2 (en) Task processing method applied to network topology, electronic device and storage medium
RU2800966C1 (ru) Компьютерная система
Li et al. A novel scheme of cross‐network radio resources scheduling in SAGN based on unified resources mapping and genetic algorithm
Chen et al. 5G message service system based on artificial immune dynamic adaptive mechanism
Rui et al. 5g enabling technologies in rail
CN110276705B (zh) 一种基于esn为产业园区企业提供智能制造服务的方法
Pu et al. Practical implementation of an OPC UA multi-server aggregation and management architecture for IIoT

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