CN107391432A - 一种异构并行计算装置及运算节点互联网络 - Google Patents
一种异构并行计算装置及运算节点互联网络 Download PDFInfo
- Publication number
- CN107391432A CN107391432A CN201710683470.6A CN201710683470A CN107391432A CN 107391432 A CN107391432 A CN 107391432A CN 201710683470 A CN201710683470 A CN 201710683470A CN 107391432 A CN107391432 A CN 107391432A
- Authority
- CN
- China
- Prior art keywords
- nodes
- node
- gpu
- center control
- point
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
- G06F15/17318—Parallel communications techniques, e.g. gather, scatter, reduce, roadcast, multicast, all to all
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出了一种异构并行计算装置及其运算节点互联网络,能够针对雷达、通信和人工智能的实时信号处理和并行计算;异构并行计算装置包含一个中心控制节点、多个GPU运算节点和一个运算节点互联网络;运算节点互联网络采用星形网络,中心控制节点可以直接与所有GPU运算节点实现点对点通信,用于传递实时控制信息和实时并行计算任务以及数据,适用于所执行的计算具备突发、并行的特点的场合;运算节点互联网络采用环形网络,中心控制节点给GPU节点逐级分配任务,而所处理的数据可以通过环形网络逐级传递而不需要通过中心控制节点,以减轻中心控制节点的数据吞吐率,适合于大规模的流水线式运算处理的场合。
Description
技术领域
本发明涉及运用到雷达、通信、和人工智能的高性能计算的技术领域,具体为一种异构并行计算装置及其运算节点互联网络。
背景技术
在雷达、通信、和人工智能的高性能计算领域,对于运算的数据吞吐率、单位时间运算能力和处理实时性的要求越来越高。在这些领域,传统的处理器主要包括MCU、CPU、DSP、FPGA等。从系统开发和软件编程的角度看,上述器件的开发难度大体上存在从易到难的趋势。但是从大规模运算的实时性来看,MCU和CPU的处理实时性最低,DSP居中,而FPGA最高。
随着桌面和移动计算机的发展,作为显卡的核心芯片图形处理器GPU的处理能力越来越强,甚至已经采用GPU核心开发出了专门针对移动设备应用的应用处理器,比如NVIDIA公司的Tegra TX1系列处理器。因此也出现了一些采用GPU进行雷达成像、通信系统计算和人工智能算法实现的设计。还出现了一些采用CPU结合GPU的处理器架构。这些方案的优点是采用高级语言在PC平台上进行编程,相比传统的DSP和FPGA平台,开发难度较低,开发周期短。但是存在以下不足:
1)在诸如雷达成像和高速通信等要求计算强实时性的场合,缺乏手段进行严格的时序控制;
2)多GPU系统往往采用复杂的网络连接,需要较多的系统开销,进一步降低了系统的运算能力;
3)适合于采用PC机和服务器的场合,无法满足大量的嵌入式设备的需求。
因此,针对雷达、通信和人工智能的实时信号处理和并行计算领域,为了弥补上述不足,有必要开发兼顾实时性和运算能力,并具备嵌入式应用能力的异构并行计算装置及运算节点互联网络。
发明内容
本发明所要解决的技术问题是提供应用于雷达、通信和人工智能的实时信号处理和并行计算领域的一种异构并行计算装置。为此,本发明采用如下技术方案:
一种异构并行计算装置,其特征在于,包括以下3个组成部分:
1-a)一个中心控制节点,其作用是实现实时运算加速、任务分配、时序控制和外部通信;
所述中心控制节点由FPGA构成;
所述实时运算加速是指能够完成实时的逻辑和算术运算;
所述任务分配,是指将具备流水或者并行处理的计算任务分配到不同的运算节点完成;将处理逻辑复杂的海量计算交由GPU运算节点完成,而高实时性的逻辑和算术运算交由中心控制节点完成;
所述时序控制,是指为各运算节点提供统一的时间基准和相互间的握手通信;
所述外部通信,是指从外部接受运算任务和数据,并提供运算结果;
1-b)多个GPU运算节点,用作完成运算任务;
1-c)运算节点互联网络,其作用是实现中心控制节点和所有GPU运算节点的通信互联。
本发明还提供了一种用于异构并行计算装置的运算节点互联网络,其特征在于,包括以下3个组成部分:
2-a)一个星形网络,以中心控制节点为中心,通过数据交换节点和每个GPU运算节点进行点对点互联;
2-b)一个环形网络,每个GPU运算节点与相邻的GPU运算节点互联,组成一个环形网络;
2-c)若干数据交换节点,用于中心控制节点、相邻的GPU运算节点之间完成数据转发,是上述星形网络和环形网络的数据交换装置。
优选的,所述中心控制节点可以直接与所有GPU运算节点实现点对点通信,用于传递实时控制信息和实时并行计算任务以及数据。
优选的,所述环形网络适合于大规模的流水线式运算处理;所处理的数据可以通过环形网络逐级传递而不需要通过中心控制节点,以减轻中心控制节点的数据吞吐率。
优选的,所述数据交换节点能够支持4个节点的数据交换能力,并且支持如下的数据交换方式:
5-a) 所述的数据交换节点支持中心控制节点与GPU运算节点的点对点通信;
5-b) 所述的数据交换节点支持当前GPU运算节点与其相邻两个GPU运算节点的点对点通信。
本发明提出了一种异构并行计算装置及其运算节点互联网络,能够针对雷达、通信和人工智能的实时信号处理和并行计算;运算节点互联网络采用星形网络,中心控制节点可以直接与所有GPU运算节点实现点对点通信,用于传递实时控制信息和实时并行计算任务以及数据,适用于所执行的计算具备突发、并行的特点的场合;运算节点互联网络采用环形网络,中心控制节点给GPU节点逐级分配任务,而所处理的数据可以通过环形网络逐级传递而不需要通过中心控制节点,以减轻中心控制节点的数据吞吐率,适合于大规模的流水线式运算处理的场合。
附图说明
图1为本发明所述异构并行计算装置组成框图。
图2为本发明所述运算节点互联网络组成框图。
图3为本发明所述数据交换节点工作模式一的原理框图。
图4为本发明所述数据交换节点工作模式二的原理框图。
具体实施方式
为了充分理解本发明的技术内容,下面给出具体实施例,结合附图对本发明的技术方案进行较为详细的介绍和说明。
图1为异构并行计算装置组成框图,该装置由3部分组成,分别是中心控制节点11、运算节点互联网络12和多个GPU(图形处理器,Graphics Processing Unit)运算节点GPU1131~GPUn 133组成。其中,中心控制节点由高性能FPGA构成,根据运算能力的要求,可以包含1个到多个的GPU运算节点。其中中心控制节点11,用于实时运算加速、任务分配、时序控制和外部通信。其中所述实时运算加速,是指能够在FPGA完成高实时性的逻辑和算术运算,用于弥补CPU的实时不足问题;所述任务分配,是指将具备流水或者并行处理的计算任务分配到不同的运算节点完成,其中,运算节点包括中心控制节点和GPU运算节点,将处理逻辑复杂的海量计算交由GPU运算节点完成,而高实时性的逻辑和算术运算交由中心控制节点完成;所述时序控制,是指为各运算节点提供统一的时间基准和相互间的握手通信;所述外部通信,是指从外部接受运算任务和数据,并提供运算结果。多个GPU运算节点GPU1 131~GPUn 133,用作完成复杂运算任务。所述GPU是专门用于图形运算的微处理器,能够完成复杂的数学和几何计算。一个运算节点互联网络12,其作用是实现中心控制节点11和所有GPU运算节点GPU1 131~GPUn 133的通信互联。
所述方案的中心控制节点FPGA和GPU运算节点通过运算节点互联网络进行通信。假设采用4个GPU运算节点,则异构并行计算装置即运算节点互联网如图2所示。运算节点互联网络在逻辑上由以下3部分组成:
1-a)一个星形网络,以中心控制节点21为中心,通过数据交换装置SW1 221~ SW4 224分别和每个GPU运算节点GPU1 231~GPUn 234进行点对点互联;
2-b)一个环形网络,每个GPU运算节点GPU1 231~GPUn 234与相邻的GPU运算节点GPU1231~GPUn 234互联,组成一个环形网络;
2-c)若干数据交换节点SW1 221~ SW4 224,用于中心控制节点21、相邻的GPU运算节点之间进行数据转发,是上述星形网络和环形网络的数据交换装置。
更进一步,采用上述的星形网络,中心控制节点可以直接与所有GPU运算节点实现点对点通信,也就是说,中心控制节点21分别通过数据交换节点SW1 221、SW2 222、SW3223、SW4 224与GPU运算节点GPU1 231、GPU2 232、GPU3 233、GPU4 234进行点对点通信,用于传递实时控制信息和实时并行计算任务以及数据;适用于所执行的计算具备突发、并行的特点的场合。
采用上述的环形网络,GPU运算节点GPU1 231通过数据交换节点SW1 221和SW2222与GPU运算节点GPU2 232通信;GPU运算节点GPU3 233通过数据交换节点SW1 222和SW2223与GPU运算节点GPU3 233通信;以此类推,形成一个环形网络。此时中心控制节点21首先通过星形网络给各GPU节点逐级分配任务,而所处理的数据可以通过环形网络逐级传递而不需要通过中心控制节点21,以减轻中心控制节点21的数据吞吐率;适合于大规模的流水线式运算处理的场合。
图3和图4给出了用于星形网络和环形网络的数据交换节点SW1 321~ SW3 323、SW1 421~ SW3 423的两种工作模式。这些节点采用FPGA实现,通过高速口与中心控制节点31、中心控制节点41、GPU运算节点GPU2 332、GPU2 432、其他相邻数据交换节点SW1 321、SW3 323、SW1 421、SW3 423进行高速通信,接口可以是高速串行口、PCIe等,能够支持4个节点的数据交换能力,并且支持如下的数据交换方式。
2-a) 模式一:所述的数据交换节点支持中心控制节点与GPU运算节点的点对点通信;如图3所示,这时数据交换节点SW2 322完成中心控制节点31和GPU运算节点GPU2 332的数据通信转发。
2-b) 模式二:所述的数据交换节点支持当前GPU运算节点与其相邻两个GPU运算节点的点对点通信。如图4所示,这时数据交换节点SW2 422完成GPU运算节点GPU2 432分别与SW1 421和SW3 423之间的数据通信转发。而SW1 421和SW3 423又各自分别与GPU运算节点GPU1 431和GPU运算节点GPU3 433直接通信,所以构成了GPU运算节点GPU1 432分别和GPU运算节点GPU1 431以及GPU运算节点GPU3 433的点对点通信。进而,所有的GPU运算节点组成了环形网络。
应当理解的是,以上所述从具体实施例的角度对本发明的技术内容进一步地披露,其目的在于让大家更容易了解本发明的内容,但不代表本发明的实施方式和权利保护局限于此。本发明保护范围阐明于所附权利要求书中,凡是在本发明的宗旨之内的显而易见的修改,亦应归于本发明的保护之内。
Claims (5)
1.种异构并行计算装置,其特征在于,包括以下3个组成部分:
1-a)一个中心控制节点,其作用是实现实时运算加速、任务分配、时序控制和外部通信;
所述中心控制节点由FPGA构成;
所述实时运算加速是指能够完成实时的逻辑和算术运算;
所述任务分配,是指将具备流水或者并行处理的计算任务分配到不同的运算节点完成;将处理逻辑复杂的海量计算交由GPU运算节点完成,而高实时性的逻辑和算术运算交由中心控制节点完成;
所述时序控制,是指为各运算节点提供统一的时间基准和相互间的握手通信;
所述外部通信,是指从外部接受运算任务和数据,并提供运算结果;
1-b)多个GPU运算节点,用作完成运算任务;
1-c)运算节点互联网络,其作用是实现中心控制节点和所有GPU运算节点的通信互联。
2.一种用于异构并行计算装置的运算节点互联网络,其特征在于,包括以下3个组成部分:
2-a)一个星形网络,以中心控制节点为中心,通过数据交换节点和每个GPU运算节点进行点对点互联;
2-b)一个环形网络,每个GPU运算节点与相邻的GPU运算节点互联,组成一个环形网络;
2-c)若干数据交换节点,用于中心控制节点、相邻的GPU运算节点之间完成数据转发,是上述星形网络和环形网络的数据交换装置。
3.根据权利要求2所述的运算节点互联网络,其特征在于,所述中心控制节点可以直接与所有GPU运算节点实现点对点通信,用于传递实时控制信息和实时并行计算任务以及数据。
4.根据权利要求2所述的运算节点互联网络,其特征在于,所述环形网络适合于大规模的流水线式运算处理;所处理的数据可以通过环形网络逐级传递而不需要通过中心控制节点,以减轻中心控制节点的数据吞吐率。
5.根据权利要求2所述的运算节点互联网络,其特征在于,所述数据交换节点能够支持4个节点的数据交换能力,并且支持如下的数据交换方式:
5-a) 所述的数据交换节点支持中心控制节点与GPU运算节点的点对点通信;
5-b) 所述的数据交换节点支持当前GPU运算节点与其相邻两个GPU运算节点的点对点通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710683470.6A CN107391432B (zh) | 2017-08-11 | 2017-08-11 | 一种异构并行计算装置及运算节点互联网络 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710683470.6A CN107391432B (zh) | 2017-08-11 | 2017-08-11 | 一种异构并行计算装置及运算节点互联网络 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107391432A true CN107391432A (zh) | 2017-11-24 |
CN107391432B CN107391432B (zh) | 2020-07-28 |
Family
ID=60355492
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710683470.6A Active CN107391432B (zh) | 2017-08-11 | 2017-08-11 | 一种异构并行计算装置及运算节点互联网络 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107391432B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108804376A (zh) * | 2018-06-14 | 2018-11-13 | 山东航天电子技术研究所 | 一种基于gpu和fpga的小型异构处理系统 |
CN109412862A (zh) * | 2018-11-20 | 2019-03-01 | 新智能源系统控制有限责任公司 | 一种环网型scada系统的多节点数据采集方法 |
CN109495365A (zh) * | 2018-11-20 | 2019-03-19 | 新智能源系统控制有限责任公司 | 一种单环网型scada系统 |
CN109542061A (zh) * | 2018-11-20 | 2019-03-29 | 新智能源系统控制有限责任公司 | 一种环网型scada系统 |
CN109560962A (zh) * | 2018-11-20 | 2019-04-02 | 新智能源系统控制有限责任公司 | 一种单环网型scada系统的多节点数据采集方法 |
CN111105016A (zh) * | 2019-12-06 | 2020-05-05 | 浪潮电子信息产业股份有限公司 | 一种数据处理方法、装置、电子设备及可读存储介质 |
CN113268356A (zh) * | 2021-07-20 | 2021-08-17 | 西安芯瞳半导体技术有限公司 | 基于LINUX系统的多GPU板卡bounding的系统、方法及介质 |
CN114445260A (zh) * | 2022-01-17 | 2022-05-06 | 苏州浪潮智能科技有限公司 | 基于fpga的分布式gpu通信的方法及装置 |
CN115951974A (zh) * | 2023-03-10 | 2023-04-11 | 浙江宇视科技有限公司 | Gpu虚拟机的管理方法、系统、设备和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499052A (zh) * | 2008-01-31 | 2009-08-05 | 中国科学院过程工程研究所 | 一种面向粒子模型的多层直连集群并行计算系统中的节点 |
US7616206B1 (en) * | 2006-06-16 | 2009-11-10 | Nvidia Corporation | Efficient multi-chip GPU |
CN102521201A (zh) * | 2011-11-16 | 2012-06-27 | 刘大可 | 多核数字信号处理器片上系统及数据传输方法 |
US8284205B2 (en) * | 2007-10-24 | 2012-10-09 | Apple Inc. | Methods and apparatuses for load balancing between multiple processing units |
CN102135950B (zh) * | 2011-03-10 | 2012-11-28 | 中国科学技术大学苏州研究院 | 基于星型互联架构的片上异构多核系统及其通信方法 |
CN106547627A (zh) * | 2016-11-24 | 2017-03-29 | 郑州云海信息技术有限公司 | 一种Spark MLlib数据处理加速的方法及系统 |
-
2017
- 2017-08-11 CN CN201710683470.6A patent/CN107391432B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7616206B1 (en) * | 2006-06-16 | 2009-11-10 | Nvidia Corporation | Efficient multi-chip GPU |
US8284205B2 (en) * | 2007-10-24 | 2012-10-09 | Apple Inc. | Methods and apparatuses for load balancing between multiple processing units |
CN101499052A (zh) * | 2008-01-31 | 2009-08-05 | 中国科学院过程工程研究所 | 一种面向粒子模型的多层直连集群并行计算系统中的节点 |
CN102135950B (zh) * | 2011-03-10 | 2012-11-28 | 中国科学技术大学苏州研究院 | 基于星型互联架构的片上异构多核系统及其通信方法 |
CN102521201A (zh) * | 2011-11-16 | 2012-06-27 | 刘大可 | 多核数字信号处理器片上系统及数据传输方法 |
CN106547627A (zh) * | 2016-11-24 | 2017-03-29 | 郑州云海信息技术有限公司 | 一种Spark MLlib数据处理加速的方法及系统 |
Non-Patent Citations (1)
Title |
---|
ZFBNX: "《基于FPGA和GPU的并行信号处理方案》", 《百度文库》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108804376A (zh) * | 2018-06-14 | 2018-11-13 | 山东航天电子技术研究所 | 一种基于gpu和fpga的小型异构处理系统 |
CN108804376B (zh) * | 2018-06-14 | 2021-11-19 | 山东航天电子技术研究所 | 一种基于gpu和fpga的小型异构处理系统 |
CN109412862A (zh) * | 2018-11-20 | 2019-03-01 | 新智能源系统控制有限责任公司 | 一种环网型scada系统的多节点数据采集方法 |
CN109495365A (zh) * | 2018-11-20 | 2019-03-19 | 新智能源系统控制有限责任公司 | 一种单环网型scada系统 |
CN109542061A (zh) * | 2018-11-20 | 2019-03-29 | 新智能源系统控制有限责任公司 | 一种环网型scada系统 |
CN109560962A (zh) * | 2018-11-20 | 2019-04-02 | 新智能源系统控制有限责任公司 | 一种单环网型scada系统的多节点数据采集方法 |
CN109495365B (zh) * | 2018-11-20 | 2022-02-18 | 新智能源系统控制有限责任公司 | 一种单环网型scada系统 |
CN111105016A (zh) * | 2019-12-06 | 2020-05-05 | 浪潮电子信息产业股份有限公司 | 一种数据处理方法、装置、电子设备及可读存储介质 |
CN113268356A (zh) * | 2021-07-20 | 2021-08-17 | 西安芯瞳半导体技术有限公司 | 基于LINUX系统的多GPU板卡bounding的系统、方法及介质 |
CN114445260A (zh) * | 2022-01-17 | 2022-05-06 | 苏州浪潮智能科技有限公司 | 基于fpga的分布式gpu通信的方法及装置 |
CN114445260B (zh) * | 2022-01-17 | 2024-01-12 | 苏州浪潮智能科技有限公司 | 基于fpga的分布式gpu通信的方法及装置 |
CN115951974A (zh) * | 2023-03-10 | 2023-04-11 | 浙江宇视科技有限公司 | Gpu虚拟机的管理方法、系统、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107391432B (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107391432A (zh) | 一种异构并行计算装置及运算节点互联网络 | |
CN109858620A (zh) | 一种类脑计算系统 | |
US11893424B2 (en) | Training a neural network using a non-homogenous set of reconfigurable processors | |
CN107729990A (zh) | 支持离散数据表示的用于执行人工神经网络正向运算的装置及方法 | |
CN108268933A (zh) | 矩阵处理架构中的最大池化 | |
CN107688853A (zh) | 一种用于执行神经网络运算的装置及方法 | |
CN107077441A (zh) | 使用远程直接存储器访问(rdma)和主动消息的异构输入/输出(i/o) | |
CN105260339A (zh) | 一种基于Xilinx Zynq技术的大规模PLC系统 | |
CN104699654B (zh) | 一种基于chi片内互联总线与qpi片间互联总线互联适配系统和方法 | |
CN107430574A (zh) | 用于分析系统的io、处理和存储器带宽的优化的方法和装置 | |
CN105530206B (zh) | 一种具有双接入结构的Torus网络系统及其工作方法 | |
CN108320018A (zh) | 一种人工神经网络运算的装置及方法 | |
CN106776455A (zh) | 一种单机多gpu通信的方法及装置 | |
CN104866460B (zh) | 一种基于SoC的容错自适应可重构系统与方法 | |
CN205983537U (zh) | 数据处理装置和系统、服务器 | |
Dorta et al. | Reconfigurable multiprocessor systems: a review | |
JP2019537093A (ja) | 極度のスループットのニューラル・ネットワークのためのスケーラブル・ストリーム・シナプス・スーパーコンピュータ | |
CN107066802A (zh) | 一种面向基因数据计算的异构平台 | |
CN105550157B (zh) | 一种分形树结构通信结构、方法、控制装置及智能芯片 | |
CN206039231U (zh) | 运动控制系统及机器人系统 | |
CN102915010A (zh) | 基于fpga的串行通信分配装置及通信方法 | |
CN106154876A (zh) | 一种智能机器人及机器人操作系统 | |
CN114445260B (zh) | 基于fpga的分布式gpu通信的方法及装置 | |
CN103150952B (zh) | 可重构的eda实验平台 | |
CN110297802A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |