CN111611198A - 一种国产化异构计算加速平台 - Google Patents

一种国产化异构计算加速平台 Download PDF

Info

Publication number
CN111611198A
CN111611198A CN202010253886.6A CN202010253886A CN111611198A CN 111611198 A CN111611198 A CN 111611198A CN 202010253886 A CN202010253886 A CN 202010253886A CN 111611198 A CN111611198 A CN 111611198A
Authority
CN
China
Prior art keywords
heterogeneous
accelerator
acceleration
platform
computing
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
Application number
CN202010253886.6A
Other languages
English (en)
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.)
Tianjin Qisuo Precision Electromechanical Technology Co ltd
Original Assignee
Tianjin Qisuo Precision Electromechanical 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 Tianjin Qisuo Precision Electromechanical Technology Co ltd filed Critical Tianjin Qisuo Precision Electromechanical Technology Co ltd
Priority to CN202010253886.6A priority Critical patent/CN111611198A/zh
Publication of CN111611198A publication Critical patent/CN111611198A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Abstract

本发明涉及一种国产化异构计算加速平台,其技术特点是:包括加速器硬件平台、操作系统层、GPU加速器驱动层、FPGA加速器驱动层、异构加速栈中间件、应用程序和加速库;加速器硬件平台负责计算存储资源分配和调度;GPU加速器驱动层和FPGA加速器驱动层提供底层硬件内部资源管理接口,供异构平台中间件调用;加速栈中间件将异构系统计算和存储资源映射到操作系统用户空间,为顶层应用程序提供标准化的调用接口;加速库提供基本运算并行化以及底层优化,应用程序执行时由主机提交计算内核和执行指令,在设备上的计算单元中执行计算。本发明构建了异构众核加速栈和异构并行计算框架,隐藏了异构系统平台之间的差异,实现了异构加速软硬件平台的国产化。

Description

一种国产化异构计算加速平台
技术领域
本发明属于计算机异构技术领域,尤其是一种国产化异构计算加速平台。
背景技术
随着智能化、信息化的快速发展,舰艇作战指挥系统、综合导航、云计算中心、密码系统等装备对计算性能提出了更高要求。目前,部署在舰艇中的计算中心仍采用CPU集群并行计算架构,其处理器性能和功耗不断逼近物理极限,其性能已经无法满足人工智能、大数据等应用场景需求,因此需要开拓新的计算架构突破性能瓶颈。
随着“中兴事件”带来的冲击使得国产化自主可控成为舰艇装备发展的必经之路。具有我国自主知识产权的CPU、GPU以及FPGA芯片近年来才逐渐浮出水面,国产化异构计算平台的研究仍处于起步阶段。如何有效提高国产CPU平台通用计算能力,满足武器装备智能化需求是目前迫切需要解决的问题。
发明内容
本发明的目的在于克服现有技术的不足,提出一种设计合理、处理速度快且性能稳定可靠的国产化异构计算加速平台。
本发明解决其技术问题是采取以下技术方案实现的:
一种国产化异构计算加速平台,包括加速器硬件平台、操作系统层、GPU加速器驱动层、FPGA加速器驱动层、异构加速栈中间件、应用程序和加速库;所述加速器硬件平台负责计算存储资源分配和调度;所述GPU加速器驱动层和FPGA加速器驱动层提供底层硬件内部资源管理接口,供异构平台中间件调用;所述加速栈中间件将异构系统计算和存储资源映射到操作系统用户空间,为顶层应用程序提供标准化的调用接口;所述加速库提供基本运算并行化以及底层优化,应用程序执行时由主机提交计算内核和执行指令,在设备上的计算单元中执行计算。
所述加速器硬件平台包括主机端CPU、GPU加速器和FPGA加速器,所述主机端CPU与GPU加速器、FPGA加速器通过PCIe总线相连接实现高速通信功能。
所述主机端包括多核CPU和系统存储器,多核CPU内置高速缓存和异构体系结构存储器控制器;所述GPU加速器包括PCIe控制器、存储器、线程调度引擎、计算单元、视频加速器、编解码器和L2缓存;所述FPGA加速器包括PCIe控制器、ARM内核、并行逻辑计算单元、高速互联总线控制器、DDR存储器。
所述主机端CPU采用飞腾CPU芯片,适配国产银河麒麟操作系统;所述GPU加速器采用景嘉微电子JM7200芯片;所述FPGA加速器采用复旦微电子JMF7K325T芯片。
所述异构加速栈中间件包括异构平台运行时和异构并行编程框架;所述异构平台运行时是建立在硬件平台驱动层之上的一组底层API,将应用程序运行过程中的计算内核动态编译成底层硬件语言,再将指令队列和内核发送到设备中运行;所述异构并行编程框架是一种跨平台的并行编程接口,具备异构资源调度管理、内核生成与执行、内存共享传输功能。
本发明的优点和积极效果是:
本发明使用国产化的CPU、GPU、FPGA以及操作系统搭建基础软硬件平台,通过专用加速器,以异构计算的方式提升计算性能,构建异构众核加速栈和异构并行计算框架,隐藏异构系统平台之间的差异;同时,实现异构加速软硬件平台的国产化替代,为核心技术的自主可控以及智能化技术应用于综合导航系统提供技术支撑。
附图说明
图1是本发明的体系架构图;
图2是本发明的加速栈硬件平台架构图;
图3是本发明的CPU+GPU异构平台执行模型;
图4是本发明的CPU+FPGA异构平台执行模型。
具体实施方式
以下结合附图对本发明做进一步详述。
一种国产化异构计算加速平台,采用如下四项核心技术实现:基于GPU的异构并行加速技术、基于FPGA的异构并行加速技术、异构加速栈中间件设计与实现和众核协同处理技术。异构计算是将不同指令集和体系架构的计算单元融合在一起,将适当的计算任务提交给专用加速器进行加速运算,分担CPU任务负荷。
如图1所示,本发明提出的国产化异构计算加速平台由加速器硬件平台(CPU、GPU、FPGA)、操作系统层、GPU加速器驱动层和FPGA加速器驱动层、异构加速栈中间件、应用程序和加速库共同构成。其中,加速器硬件平台中的CPU主要负责计算存储资源分配和调度;GPU加速器驱动层和FPGA加速器驱动层提供底层硬件内部资源管理接口,供异构平台中间件调用。加速栈中间件将异构系统计算和存储资源映射到操作系统用户空间,为顶层应用程序提供标准化的调用接口,实现“软件定义计算”;加速库提供基本运算并行化以及底层优化,应用程序执行时由主机提交计算内核和执行指令,在设备上的计算单元中执行计算。在本实施例中,使用国产CPU与国产操作系统进行适配;使用国产GPU芯片与国产CPU和操作系统进行适配,同时实现GPU底层驱动、2D与3D图形库的移植,为异构平台运行时提供底层接口;使用国产FPGA芯片与国产CPU和操作系统进行适配,同时设计并开发加速器底层驱动,为异构平台运行时提供计算逻辑资源调用接口。
如图2所示,所述加速器硬件平台包括主机端CPU、GPU加速器和FPGA加速器,主机端CPU与GPU加速器、FPGA加速器通过PCIe总线相连接实现高速通信功能。所述主机端包括多核CPU和系统存储器,多核CPU内置高速缓存和异构体系结构存储器控制器;所述GPU加速器包括PCIe控制器、存储器、线程调度引擎、计算单元、视频加速器、编解码器和L2缓存;所述FPGA加速器包括PCIe控制器、ARM内核、并行逻辑计算单元、高速互联总线控制器、DDR存储器。在本实施例中,所述主机端的硬件平台采用飞腾CPU芯片,适配国产银河麒麟操作系统,
GPU加速器的硬件平台采用国产景嘉微电子JM7200芯片。GPU的基本模块是计算单元,具有独立的指令执行能力,其指令前端负责取值和动态调度各种计算资源。CPU与GPU组成的异构平台模型由主机和设备组成,每个计算单元内所有的计算内核都会执行相同指令。异构加速栈中间件通过创建上下文、内存对象和命令队列管理计算资源,并控制内核程序行为。CPU+GPU异构平台的执行模型如图3所示。
FPGA加速器的硬件平台采用国产复旦微电子JMF7K325T芯片,其特点在于动态可重构,可以根据特定算法进行逻辑设计优化,实现低延时和高带宽。CPU与FPGA组成的异构平台模型同样由主机和设备组成。CPU+FPGA异构平台执行模型如图4所示。计算内核程序通过高层次综合转换成FPGA上的硬件逻辑电路,并将其作为FPGA的配置数据输出。主机端将计算任务和配置数据动态编译成计算内核发送到FPGA加速器中进行处理。数据密集型应用需要频繁地将主机内存与计算设备内存中的数据进行迁移,因此采用共享物理内存技术进行访存优化。CPU与FPGA通过芯片内部的DDR内存控制器访问内存共享区域,避免主机和设备之间的数据拷贝。
异构加速栈中间件是基于异构硬件平台构建的并行加速环境,包括异构平台运行时和异构并行编程框架。异构平台运行时是建立在硬件平台驱动层之上的一组底层API,将应用程序运行过程中的计算内核动态编译成底层硬件语言,再将指令队列和内核发送到设备中运行。异构并行编程框架是一种跨平台的并行编程接口,具备异构资源调度管理、内核生成与执行、内存共享传输等功能。
异构并行编程框架基于OpenCL标准开发,将异构并行系统分为主机(Host)和设备(Device)。主机通过高速总线配置不同的设备完成不同的任务,并创建上下文管理各计算设备。主机建立命令队列向设备发送指令和内核参数,计算内核可以以并行的方式分配在多个计算单元上执行。数据密集型应用会频繁对内存进行读写,访存性能是制约异构系统整体计算性能的重要因素,因此需要对异构体系存储模型进行研究。OpenCL将设备中的内部存储器抽象成四层结构:全局内存、常量内存、本地内存和私有内存。异构并行编程框架提供设备全局内存和常量内存与主机间的共享,主机通过创建内存对象映射设备内存,同时利用设备计算内核的高速缓存实现主机和设备之间的高效数据传输。
本发明在计算内核时,采用如下两种方式进行同步:一种是通过事件列表的方式实现,另一种是通过栅栏技术实现同步。栅栏技术的原理是当且仅当所有计算内核到达栅栏以后才能继续执行,使得并行计算任务能以可控的方式工作。一个工作项之内如果存在同一数据的store和load指令,异构并行计算同步技术保证load指令总会拿到store指令完全执行结束的结果。基于多核协同处理技术充分利用多核CPU资源,不同CPU核心以完全并行的方式管理不同计算资源,隐藏阻塞等待时间。在并行程序执行时,多核协同处理基于多线程技术,主线程在遇到并行区域时会派生出一组线程,主线程和派生线程共享进程内存空间,两者协同工作。
需要强调的是,本发明所述的实施例是说明性的,而不是限定性的,因此本发明包括并不限于具体实施方式中所述的实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,同样属于本发明保护的范围。

Claims (5)

1.一种国产化异构计算加速平台,其特征在于:包括加速器硬件平台、操作系统层、GPU加速器驱动层、FPGA加速器驱动层、异构加速栈中间件、应用程序和加速库;所述加速器硬件平台负责计算存储资源分配和调度;所述GPU加速器驱动层和FPGA加速器驱动层提供底层硬件内部资源管理接口,供异构平台中间件调用;所述加速栈中间件将异构系统计算和存储资源映射到操作系统用户空间,为顶层应用程序提供标准化的调用接口;所述加速库提供基本运算并行化以及底层优化,应用程序执行时由主机提交计算内核和执行指令,在设备上的计算单元中执行计算。
2.根据权利要求1所述的一种国产化异构计算加速平台,其特征在于:所述加速器硬件平台包括主机端CPU、GPU加速器和FPGA加速器,所述主机端CPU与GPU加速器、FPGA加速器通过PCIe总线相连接实现高速通信功能。
3.根据权利要求1所述的一种国产化异构计算加速平台,其特征在于:所述主机端包括多核CPU和系统存储器,多核CPU内置高速缓存和异构体系结构存储器控制器;所述GPU加速器包括PCIe控制器、存储器、线程调度引擎、计算单元、视频加速器、编解码器和L2缓存;所述FPGA加速器包括PCIe控制器、ARM内核、并行逻辑计算单元、高速互联总线控制器、DDR存储器。
4.根据权利要求2或3所述的一种国产化异构计算加速平台,其特征在于:所述主机端CPU采用飞腾CPU芯片,适配国产银河麒麟操作系统;所述GPU加速器采用景嘉微电子JM7200芯片;所述FPGA加速器采用复旦微电子JMF7K325T芯片。
5.根据权利要求2或3所述的一种国产化异构计算加速平台,其特征在于:所述异构加速栈中间件包括异构平台运行时和异构并行编程框架;所述异构平台运行时是建立在硬件平台驱动层之上的一组底层API,将应用程序运行过程中的计算内核动态编译成底层硬件语言,再将指令队列和内核发送到设备中运行;所述异构并行编程框架是一种跨平台的并行编程接口,具备异构资源调度管理、内核生成与执行、内存共享传输功能。
CN202010253886.6A 2020-04-02 2020-04-02 一种国产化异构计算加速平台 Pending CN111611198A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010253886.6A CN111611198A (zh) 2020-04-02 2020-04-02 一种国产化异构计算加速平台

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010253886.6A CN111611198A (zh) 2020-04-02 2020-04-02 一种国产化异构计算加速平台

Publications (1)

Publication Number Publication Date
CN111611198A true CN111611198A (zh) 2020-09-01

Family

ID=72203517

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010253886.6A Pending CN111611198A (zh) 2020-04-02 2020-04-02 一种国产化异构计算加速平台

Country Status (1)

Country Link
CN (1) CN111611198A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463718A (zh) * 2020-11-17 2021-03-09 中国计量大学 一种信号识别处理装置
CN112559336A (zh) * 2020-12-09 2021-03-26 成都海光集成电路设计有限公司 自适应调试异构计算芯片的方法、装置、系统及主板芯片
CN113312283A (zh) * 2021-05-28 2021-08-27 北京航空航天大学 一种基于fpga加速的异构图学习系统
CN114282641A (zh) * 2022-03-07 2022-04-05 麒麟软件有限公司 一种通用异构加速框架的构建方法
CN114326452A (zh) * 2020-10-10 2022-04-12 中国科学院沈阳自动化研究所 一种用于精密运动控制的异构计算加速方法
CN114490484A (zh) * 2022-01-24 2022-05-13 长春一汽富维汽车零部件股份有限公司 Adas域和信息娱乐域一体化柔性芯片

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103226541A (zh) * 2013-03-29 2013-07-31 江苏复芯物联网科技有限公司 一种基于fpga和arm的嵌入式高性能异构计算平台
CN107102824A (zh) * 2017-05-26 2017-08-29 华中科技大学 一种基于存储和加速优化的Hadoop异构方法和系统
CN107273331A (zh) * 2017-06-30 2017-10-20 山东超越数控电子有限公司 一种基于cpu+gpu+fpga架构的异构计算系统和方法
US20180307711A1 (en) * 2017-04-24 2018-10-25 Reniac, Inc. System and method to accelerate compaction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103226541A (zh) * 2013-03-29 2013-07-31 江苏复芯物联网科技有限公司 一种基于fpga和arm的嵌入式高性能异构计算平台
US20180307711A1 (en) * 2017-04-24 2018-10-25 Reniac, Inc. System and method to accelerate compaction
CN107102824A (zh) * 2017-05-26 2017-08-29 华中科技大学 一种基于存储和加速优化的Hadoop异构方法和系统
CN107273331A (zh) * 2017-06-30 2017-10-20 山东超越数控电子有限公司 一种基于cpu+gpu+fpga架构的异构计算系统和方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114326452A (zh) * 2020-10-10 2022-04-12 中国科学院沈阳自动化研究所 一种用于精密运动控制的异构计算加速方法
CN114326452B (zh) * 2020-10-10 2023-11-21 中国科学院沈阳自动化研究所 一种用于精密运动控制的异构计算加速方法
CN112463718A (zh) * 2020-11-17 2021-03-09 中国计量大学 一种信号识别处理装置
CN112463718B (zh) * 2020-11-17 2022-05-20 中国计量大学 一种信号识别处理装置
CN112559336A (zh) * 2020-12-09 2021-03-26 成都海光集成电路设计有限公司 自适应调试异构计算芯片的方法、装置、系统及主板芯片
CN113312283A (zh) * 2021-05-28 2021-08-27 北京航空航天大学 一种基于fpga加速的异构图学习系统
CN114490484A (zh) * 2022-01-24 2022-05-13 长春一汽富维汽车零部件股份有限公司 Adas域和信息娱乐域一体化柔性芯片
CN114282641A (zh) * 2022-03-07 2022-04-05 麒麟软件有限公司 一种通用异构加速框架的构建方法
CN114282641B (zh) * 2022-03-07 2022-07-05 麒麟软件有限公司 一种通用异构加速框架的构建方法

Similar Documents

Publication Publication Date Title
CN111611198A (zh) 一种国产化异构计算加速平台
Choquette et al. Nvidia a100 tensor core gpu: Performance and innovation
KR102197874B1 (ko) 멀티-코어 프로세서를 포함하는 시스템 온 칩 및 그것의 쓰레드 스케줄링 방법
US9141173B2 (en) Thread consolidation in processor cores
US9244629B2 (en) Method and system for asymmetrical processing with managed data affinity
US7275249B1 (en) Dynamically generating masks for thread scheduling in a multiprocessor system
US9052957B2 (en) Method and system for conducting intensive multitask and multiflow calculation in real-time
US20150177811A1 (en) Power management for in-memory computer systems
WO2021159820A1 (zh) 一种数据传输和任务处理方法、装置及设备
CN107463442B (zh) 一种星载多核SoC任务级负载均衡并行调度方法
De La Lama et al. Static multi-device load balancing for opencl
US9317296B2 (en) High level software execution mask override
CN112631986B (zh) 大规模dsp并行计算装置
Robson et al. Runtime coordinated heterogeneous tasks in Charm++
CN116028418B (zh) 基于gpdsp的可扩展多核处理器、加速卡及计算机
KR20140001970A (ko) 결합된 cpu/gpu 아키텍처 시스템에서의 디바이스의 발견 및 토폴로지 보고
CN111857669A (zh) 软硬件解耦合软件化雷达系统、实时性设计方法和服务器
KR20210108749A (ko) 가속기, 가속기의 동작 방법 및 이를 포함한 가속기 시스템
Liu et al. π-rt: A runtime framework to enable energy-efficient real-time robotic vision applications on heterogeneous architectures
KR20140004654A (ko) 처리 디바이스의 동기 동작을 위한 방법 및 시스템
CN101290592A (zh) 一种mpsoc上多道程序共享spm的实现方法
US8914778B2 (en) Data placement for execution of an executable
CN111459871A (zh) 一种基于fpga异构计算的区块链加速系统及方法
Volovich et al. Deployment of parallel computing in a hybrid high-performance cluster based on virtualization technologies
Huang et al. A quantum computing simulator scheme using MPI technology on cloud platform

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