CN111767135A - 一种基于srio全局内存共享的数据分发方法 - Google Patents
一种基于srio全局内存共享的数据分发方法 Download PDFInfo
- Publication number
- CN111767135A CN111767135A CN202010462069.1A CN202010462069A CN111767135A CN 111767135 A CN111767135 A CN 111767135A CN 202010462069 A CN202010462069 A CN 202010462069A CN 111767135 A CN111767135 A CN 111767135A
- Authority
- CN
- China
- Prior art keywords
- data
- srio
- resource
- computing
- module
- 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
- 238000009826 distribution Methods 0.000 title claims abstract description 18
- 238000000034 method Methods 0.000 title claims abstract description 16
- 238000012545 processing Methods 0.000 claims abstract description 25
- 238000007726 management method Methods 0.000 claims description 12
- 238000003860 storage Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 9
- 238000005538 encapsulation Methods 0.000 claims description 3
- 238000002360 preparation method Methods 0.000 claims description 3
- 238000013468 resource allocation Methods 0.000 claims description 3
- 108010028984 3-isopropylmalate dehydratase Proteins 0.000 claims 3
- 238000004364 calculation method Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000013439 planning Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 102100029368 Cytochrome P450 2C18 Human genes 0.000 description 1
- 101000919360 Homo sapiens Cytochrome P450 2C18 Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0012—High speed serial bus, e.g. IEEE P1394
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于SRIO全局内存共享的数据分发方法,采用星型架构为基础的SRIO交换方式,主要用于多单元服务器中、多计算机模块群组、多计算单元工作站、多计算单元图形工作站、多资源数据共享平台等系统中。主要实现大数据计算的分布式计算,共享全局内存提高资源利用率以及计算效率,有效的提升了系统中数据、图像处理的高效性及实时性。
Description
技术领域
本发明涉及一种基于SRIO全局内存共享的数据分发方法。
背景技术
基于计算机体系而设计的嵌入式加固设备,现在已经广泛运用于各种场合,随着系统复杂性设计的增加,对运算速度、容量存储、功能扩展等的需求也在不断增加,尤其体现在军用、航空、航天、电信等领域。这种情况下,传统的独立单元计算机体系结构已经无法满足当前系统要求。因此,基于串行总线技术下的新型计算机体系悄然兴起。串行总线又有多种分类,传统的串行总线有PCI、CPCI、VME等,但是随着电路设计的密度增加、多主控制的需求出现,传统的总线已无法满足使用需求,达到瓶颈。因此,基于此一种基于VPX架构而设计的计算处理平台孕育而生,实现多主控的并行计算功能,提升计算性能。
现有的计算处理平台,多以刀片形式组合使用,装配在同一个机箱中,普遍采用多节点并行处理方式,通过数据分发、高速交换等方式,实现大数据下的分布式处理方式。呈现一种高速运算、可靠运行、大数据吞吐的能力。关键在于提高节点的处理速率以及各节点的传输速率。但从总线技术的发展看,总线带宽的技术提升,一定程度上要滞后于节点计算能力的发展。高速运行处理的芯片即处理节点,需要更高速的带宽去做支撑。因此,在带宽不足的情况下,如何实现系统内处理单元的合理规划、数据分发、资源共享、系统合理计算调度等,成为了多主并行计算中的关键技术。
实现系统内资源的合理数据分发共享以及调度,首先对系统内的处理资源进行规划处理,本方案中通过设计将所有的CPU、DSP、FPGA等计算资源均在同一个SRIO交换网络中,基于智能槽位识别功能,区分资源性质。根据系统使用需求,全局分配地址空间和Doorbell中断信息,每个计算资源独立访问其它计算资源为其预留的地址空间,避免数据的覆盖和访问冲突。
发明内容
本发明公开了一种基于SRIO全局内存共享的数据分发方法,包括如下步骤:
步骤1:根据应用需求,进行资源分配,以SRIO交换为数据处理核心,组建星型网络拓扑架构,使得系统内具备运算、存储或者其他资源模块在链接关系上均能够通过SRIO交换互联;
步骤2:对运算模块、存储模块或者其他资源模块组成进行区别划分,根据位置提供唯一识别号;
步骤3:根据唯一识别号,给各个资源模块分配SRIO端点的物理空间地址,并分配空间大小;
步骤4:进行资源调度与共享,通过SRIO交换实现全局资源共享以及数据分发。
步骤1中:以SRIO为交换核心,组建星型网络拓扑架构,整个系统的计算资源、内存资源、数据资源、存储资源均能够通过拓扑架构实现物理互联,即依托于SRIO高速总线,实现物理层以及链路层互通。并行总线下的拓扑关系直接影响资源的利用率,合理的拓扑规划可以减少算法的复杂程度,可实现数据的集中管理分发操作;
步骤2中:复杂计算系统的设计包含了多种类的资源或者功能模块,根据各类功能模块的功能、性能进行划分区别,不同节点的资源、功能模块按照IPMI(智能平台管理接口Intelligent Platform Management Interface)标准规划独立的唯一识别号,可根据规划的唯一识别号,可区分出每个槽位上的模块资源的性质,用于计算、存储或者是其他功能实现;
步骤3包括:
步骤3-1,进入IPMI管理中,系统上电后,IPMI管理总线开始运行,执行初始化、状态查询、复位操作,确认资源模块状态后,开始进行SRIO物理地址划分;
步骤3-2,SRIO端点设备的物理地址空间为0x0至0x3FFF_FFFF,空间大小为0x4000_0000;为便于应用层使用和访问,将物理地址空间划分为若干个子空间,每个子空间赋予一个编号,该编号定义为网络端口号。
步骤3-2中,物理地址从0x0至0x00FF_FFFF,每间隔0x1000划分1个子空间,每个大小为4kB,对应的网络端口号为0x0至0xFFF,共计0x1000个网络端口号;其中,网络端口号为0x0至0xFF的地址空间,为系统预留端口号,驱动及应用软件不允许使用;
物理地址从0x1000000至0x3FFF_FFFF,每间隔0x1000000划分1个子空间,每个大小为16MB,对应的网络端口号为0x1000至0x103E,共计0x3F个网络端口号。
步骤4包括:
步骤4-1,进入准备数据阶段,确定需要通过总线发送的数据,按照既定协议封装完成;
步骤4-2,进入数据发送阶段,确定发送地址,明确数据需要发送的目的地,以广播形式或定向发送;
步骤4-3,进入数据接收阶段,根据资源模块需求,从总线读取数据,根据数据协议,执行接收或舍弃。
有益效果:本发明具有以下控制优点:
总线资源利用率高,实现系统内资源的合理数据分发共享以及调度,首先对系统内的处理资源进行规划处理;每个计算资源独立访问其它计算资源为其预留的地址空间,避免数据的覆盖和访问冲突。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述或其他方面的优点将会变得更加清楚。
图1是任务调度处理步骤示意图。
图2是SRIO交换的实际机箱背板的应用案例。
图3是SRIO物理地址空间划分、以及网络端口号对应关系。
图4是SRIO交换任务调度的实际使用案例。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
本发明所要解决的技术问题是针对现有技术的优化,提供一种基于SRIO(SerialRapid I/O,SRIO是面向嵌入式系统开发提出的高可靠、高性能、基于包交换的新一代高速互联技术)全局内存共享的数据分发方法,包括如下步骤:
步骤1:根据应用需求,进行资源分配,以SRIO交换为数据处理核心,组建星型网络拓扑架构,使得系统内具备运算、存储或者其他资源模块在链接关系上均能够通过SRIO交换互联;
例:SRIO数据交换的模式可以等视成以太网交换,以物理层、链路层为基础,传输层、网络层通信,应用层实现具体功能进行划分。当一个计算需求进入主机后,进行任务接口统一,在系统内注册任务,完成报文模板配置,并在下端计算单元注册计算需求,然后系统将运行统一任务调度服务,分析当前系统下计算资源情况,将任务安排进计算队列,下一步将调用数据分发组,提取数据、组织报文并发送至下端计算单元,最终实现任务打散分发计算,如图1所示。
步骤2:对运算模块、存储模块或者其他资源模块组成进行区别划分,根据位置提供唯一识别号;
SRIO交换全局内存共享的技术需要依托于系统设计实现,在一个统一的计算系统内部,例:一个服务器类型的计算机群组中、工作站类型的多单元计算机、图形工作站的多单元计算机。这种类型的系统中,一般会具备多个计算单元,用于实现数据、图形的计算,具备大容量的共享存储单元用于数据存储以及视频采集等具体的功能模块。当多个计算单元、存储模块、功能模块等均在一个系统中时,需要一个统一的管理方式,即明确地址分配。此时SRIO同样可以类比以太网,每个SRIO的处理节点上需要一个明确的物理地址,类似以太网中的MAC地址,给每个模块或单元提供唯一的位置识别号。
如图2所示,例:以一个多单元计算机系统为例,根据需求该系统被设置为一个16槽位的VPX双星交换系统,该系统中包含计算机单元、雷达数据处理单元、图像处理单元、视频采集单元、综合管理单元、共享存储单元等等,每个单元根据模块功能、性能进行槽位分配,完成槽位分配后,系统管理单元将对各个槽位按照IPMI分配唯一识别号。
步骤3:根据唯一识别号,给各个资源模块分配SRIO端点的物理空间地址,并分配空间大小;
步骤3-1,进入IPMI管理中,系统上电后,IPMI管理总线开始运行,执行初始化、状态查询、复位操作,确认资源模块状态后,开始进行SRIO物理地址划分;
步骤3-2,SRIO端点设备的物理地址空间为0x0至0x3FFF_FFFF,空间大小为0x4000_0000;为便于应用层使用和访问,将物理地址空间划分为若干个子空间,每个子空间赋予一个编号,该编号定义为网络端口号。
物理地址从0x0至0x00FF_FFFF,每间隔0x1000划分1个子空间,每个大小为4kB,对应的网络端口号为0x0至0xFFF,共计0x1000个网络端口号;其中,网络端口号为0x0至0xFF的地址空间,为系统预留端口号,驱动及应用软件不允许使用;
物理地址从0x1000000至0x3FFF_FFFF,每间隔0x1000000划分1个子空间,每个大小为16MB,对应的网络端口号为0x1000至0x103E,共计0x3F个网络端口号。如图3所示。
步骤4:进行资源调度与共享,通过SRIO交换实现全局资源共享以及数据分发。
步骤4-1,进入准备数据阶段,确定需要通过总线发送的数据,按照既定协议封装完成;
步骤4-2,进入数据发送阶段,确定发送地址,明确数据需要发送的目的地,以广播形式或定向发送;
步骤4-3,进入数据接收阶段,根据资源模块需求,从总线读取数据,根据数据协议,执行接收或舍弃。
实施例
以某公司研制的新一代VPX加固式计算机为例,该系统中包含了多个计算单元、GPU单元、雷达数据处理单元、图像处理单元等等。如图4所示,根据本发明的使用方法,首先根据所有资源模块的功能以及性能对模块种类进行划分,明确各个模块在系统中的使用需求。采用CPS1848DS为主芯片,设计SRIO交换模块,在系统中构建星型拓扑的交换架构,在物理层上将各个资源模块进行了整合互联。按照本发明的步骤方法,给各个资源模块分配唯一的识别号,从槽位1至槽位16,完成后按照IPMI标准,运行综合管理模块,使用需求分配交换的物理地址空间大小,物理地址空间为0x0至0x3FFF_FFFF,空间大小为0x4000_0000。至此,系统的基本构建完成,开始实际运行操作。
当系统作为服务器进行大数据计算时,例如进行一个短视频中的目标信息抓取并输出显示的操作。系统根据这一需求,调度各个资源模块,由视频采集模块先针对原始视频进行图像采集、并对视频进行压缩处理,按照既定格式上传至SRIO总线。图像处理模块接收总线数据,进入队列,准备解析视频信息,同时另一个计算机模块采集对视频进行显示,由人工输入目标信息,并发送至图像处理模块,此时图像处理模块根据输入信息开始逐帧识别目标,并进行标注。将标准好的信息上传至总线再由计算机模块输出显示;
在进行图像处理的任务需求上,再次增加数据计算的任务需求,此时,任务调度会重新对当前系统的计算资源进行评估整合,优先调用为使用的计算资源,若所有资源具备占用,遍历当前状态,分时使用计算资源。
本发明提供了一种基于SRIO全局内存共享的数据分发方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。
Claims (6)
1.一种基于SRIO全局内存共享的数据分发方法,其特征在于,包括如下步骤:
步骤1:根据应用需求,进行资源分配,以SRIO交换为数据处理核心,组建星型网络拓扑架构,使得系统内具备运算、存储或者其他资源模块在链接关系上均能够通过SRIO交换互联;
步骤2:对运算模块、存储模块或者其他资源模块组成进行区别划分,根据位置提供唯一识别号;
步骤3:根据唯一识别号,给各个资源模块分配SRIO端点的物理空间地址,并分配空间大小;
步骤4:进行资源调度与共享,通过SRIO交换实现全局资源共享以及数据分发。
2.根据权利要求1所述的方法,其特征在于,步骤1中:以SRIO为交换核心,组建星型网络拓扑架构,整个系统的计算资源、内存资源、数据资源、存储资源均能够通过拓扑架构实现物理互联,即依托于SRIO高速总线,实现物理层以及链路层互通。
3.根据权利要求2所述的方法,其特征在于,步骤2中:不同节点的资源、功能模块按照IPMI标准规划独立的唯一识别号,根据规划的唯一识别号,能够区分出每个槽位上的模块资源的性质。
4.根据权利要求3所述的方法,其特征在于,步骤3包括:
步骤3-1,进入IPMI管理中,系统上电后,IPMI管理总线开始运行,执行初始化、状态查询、复位操作,确认资源模块状态后,开始进行SRIO物理地址划分;
步骤3-2,SRIO端点设备的物理地址空间为0x0至0x3FFF_FFFF,空间大小为0x4000_0000;将物理地址空间划分为若干个子空间,每个子空间赋予一个编号,该编号定义为网络端口号。
5.根据权利要求4所述的方法,其特征在于,步骤3-2中,物理地址从0x0至0x00FF_FFFF,每间隔0x1000划分1个子空间,每个大小为4kB,对应的网络端口号为0x0至0xFFF,共计0x1000个网络端口号;其中,网络端口号为0x0至0xFF的地址空间,为系统预留端口号,驱动及应用软件不允许使用;
物理地址从0x1000000至0x3FFF_FFFF,每间隔0x1000000划分1个子空间,每个大小为16MB,对应的网络端口号为0x1000至0x103E,共计0x3F个网络端口号。
6.根据权利要求5所述的方法,其特征在于,步骤4包括:
步骤4-1,进入准备数据阶段,确定需要通过总线发送的数据,按照既定协议封装完成;
步骤4-2,进入数据发送阶段,确定发送地址,明确数据需要发送的目的地,以广播形式或定向发送;
步骤4-3,进入数据接收阶段,根据资源模块需求,从总线读取数据,根据数据协议,执行接收或舍弃。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010462069.1A CN111767135A (zh) | 2020-05-27 | 2020-05-27 | 一种基于srio全局内存共享的数据分发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010462069.1A CN111767135A (zh) | 2020-05-27 | 2020-05-27 | 一种基于srio全局内存共享的数据分发方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111767135A true CN111767135A (zh) | 2020-10-13 |
Family
ID=72720636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010462069.1A Pending CN111767135A (zh) | 2020-05-27 | 2020-05-27 | 一种基于srio全局内存共享的数据分发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111767135A (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101163133A (zh) * | 2006-10-10 | 2008-04-16 | 中国科学院计算技术研究所 | 一种多机虚拟环境下实现资源共享的通信系统及通信方法 |
WO2016082320A1 (zh) * | 2014-11-26 | 2016-06-02 | 浪潮(北京)电子信息产业有限公司 | 混合异构主机系统及资源配置方法、任务调度方法 |
-
2020
- 2020-05-27 CN CN202010462069.1A patent/CN111767135A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101163133A (zh) * | 2006-10-10 | 2008-04-16 | 中国科学院计算技术研究所 | 一种多机虚拟环境下实现资源共享的通信系统及通信方法 |
WO2016082320A1 (zh) * | 2014-11-26 | 2016-06-02 | 浪潮(北京)电子信息产业有限公司 | 混合异构主机系统及资源配置方法、任务调度方法 |
Non-Patent Citations (2)
Title |
---|
康旭辉等: "基于SpaceVPX架构的星上高速载荷数据实时处理平台设计", 航天器工程, no. 04, 15 August 2018 (2018-08-15), pages 98 - 103 * |
方勇杰等: "适应多级调度安全稳定分析资源共享的分布式计算管理平台", 电力系统自动化, no. 23, 10 December 2016 (2016-12-10) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11934883B2 (en) | Computer cluster arrangement for processing a computation task and method for operation thereof | |
US6393026B1 (en) | Data packet processing system and method for a router | |
CN106648896B (zh) | 一种Zynq芯片在异构称多处理模式下双核共享输出外设的方法 | |
CN110809760B (zh) | 资源池的管理方法、装置、资源池控制单元和通信设备 | |
US20170187766A1 (en) | Hybrid network system, communication method and network node | |
EP2486715B1 (en) | Smart memory | |
CN108345555B (zh) | 基于高速串行通信的接口桥接电路及其方法 | |
CN105426260A (zh) | 一种支持分布式系统的透明进程间通信系统及方法 | |
CN110932920B (zh) | 一种网络拓扑结构 | |
CN106844263B (zh) | 一种基于可配置的多处理器计算机系统及实现方法 | |
CN111767135A (zh) | 一种基于srio全局内存共享的数据分发方法 | |
CN113608861B (zh) | 一种软件化载荷计算资源虚拟化分配方法及装置 | |
CN113553279B (zh) | 一种rdma通信加速集合通信的方法及系统 | |
CN112232523B (zh) | 一种国产化人工智能计算设备 | |
CN107122268B (zh) | 一种基于numa多物理层分区处理系统 | |
CN106844021B (zh) | 计算环境资源管理系统及其管理方法 | |
CN111107167B (zh) | 一种飞行模拟器仿真系统的网络通信装置 | |
CN104980371A (zh) | 微服务器 | |
CN117493016A (zh) | 晶上系统节点管理和任务调度装置及其使用方法 | |
CN116962220A (zh) | 一种全维可定义智信网络装置 | |
CN117573055A (zh) | 一种基于硬件加速的综合显控服务系统及方法 | |
CN117041186A (zh) | 数据传输方法、芯片系统、计算设备及存储介质 | |
CN113935159A (zh) | 一种基于千兆afdx的免预先配置即插即用网络系统架构设计方法 | |
CN116132352A (zh) | 数据传输方法、装置及计算机系统 | |
CN118245171A (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 |