CN112527727A - 一种基于gpu的加速协议转换的算法 - Google Patents
一种基于gpu的加速协议转换的算法 Download PDFInfo
- Publication number
- CN112527727A CN112527727A CN202011416788.6A CN202011416788A CN112527727A CN 112527727 A CN112527727 A CN 112527727A CN 202011416788 A CN202011416788 A CN 202011416788A CN 112527727 A CN112527727 A CN 112527727A
- Authority
- CN
- China
- Prior art keywords
- gpu
- protocol
- conversion
- cpu
- 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.)
- Pending
Links
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 39
- 238000012545 processing Methods 0.000 claims abstract description 26
- 230000000694 effects Effects 0.000 claims abstract description 4
- 230000008676 import Effects 0.000 claims abstract description 4
- 238000004364 calculation method Methods 0.000 claims description 17
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000007704 transition Effects 0.000 claims description 6
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 claims 1
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000000034 method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004378 air conditioning Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000004146 energy storage Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 239000004951 kermel Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
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/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于GPU的加速协议转换的算法,该算法基于CUDA采用基于GPU异构运算架构,分为CPU处理部分和GPU处理部分,CPU部分处理工作包括原始数据导入、原始协议、目标协议,GPU部分处理数据流转换,以实现加速转换效果。本发明的有益效果为:本发明利用GPU的并行计算能力,提升协议转换的效率,降低CPU占用时间,提升采集,上传等任务的成功率。
Description
技术领域
本发明涉及数据采集算法领域,主要是一种基于GPU的加速协议转换的算法。
背景技术
智慧能源系统接入的信息种类越来越多,其数据流分为采集数据流、控制数据流和档案数据流三类。采集数据流包括用户侧电、水、气、热等能源数据。控制数据流包括用户侧控制策略及配电系统、光伏系统、中央空调系统等用户侧可控设备的遥调、遥控、遥测、遥信。档案数据流包括用户侧各类监控设备的档案数据。接入的信息设备包括空调、照明、配电设备、光伏、储能、充电桩及各种工业用电机器设备等多类型能源设备,对接入协议的转换要求越来越复杂,转换的工作量越来越大。
近年来,随着图形处理器(graphics processingunit,GPU)技术的高速发展,该技术被应用到了诸多科学计算领域.GPU中大量的晶体管被用于算术逻辑单元,擅长处理密集型计算,而中央处理器(central processing unit,CPU)在逻辑控制、分支结构控制方面占优。CPU-GPU异构通信模式可以发挥各自的优势且性能互补,具有较高的性价比。
能源控制器在进行协议转换时,会占用大量CPU运算时间,由于CPU同时进行数据采集,上传等任务,在大任务量情况下,会出现线程阻塞的情况,造成采集,上传等任务的失败
发明内容
本发明的目的在于克服现有技术存在的不足,而提供一种基于GPU的加速协议转换的算法。
本发明的目的是通过如下技术方案来完成的。一种基于GPU的加速协议转换的算法,该算法基于CUDA采用基于GPU异构运算架构,分为CPU处理部分和GPU处理部分,CPU部分处理工作包括原始数据导入、原始协议、目标协议,GPU部分处理数据流转换,以实现加速转换效果。
更进一步的,该算法包括如下步骤:
a.输入基本属性数据、原始协议、目标协议属性;设置数据缓冲池大小,数据缓冲队列数量,队列长度;
b.将不同类型设备接口原始数据数据标记原始协议属性传至GPU;
c.根据原始协议属性和目标协议属性,选取计算特征码,建立状态转移矩阵,调用GPU、转换计算,当状态转移矩阵返回非空项,则返回CPU;否则dd+1,进行下一步;
d.GPU转换计算,GPU部分处理数据流转换。
更进一步的,所述的GPU转换计算包括如下步骤:
①初始化调用Gr_cublasCreateHandleO获取设备计算句柄;
②使用Gr_cudaMalloc分配device资源;
③使用Gr_cublasSetVector填充数据;
④使用Gr_TrasProtocol进行转换计算;
⑤使用Gr_cublasGetVector获取计算结果;
⑥释放资源。
本发明的有益效果为:本发明利用GPU的并行计算能力,提升协议转换的效率,降低CPU占用时间,提升采集,上传等任务的成功率。
附图说明
图1为本发明的CUDA编程模型示意图。
图2为本发明的流程示意图。
具体实施方式
下面将结合附图对本发明做详细的介绍:
1、基于GPU的异构计算架构及编程框架
基于GPU异构计算架构程序包括三部分:CPU运算程序、GPU运算程序和CPU-GPU通信程序。CPU运算程序主要负责控制任务和逻辑复杂的运算任务,GPU运算程序主要负责逻辑简单的高密度运算任务。由于CPU和GPU拥有各自的外存储器,两者之间不能直接通信,须通过PCIE总线进行通信,即通过CPU-GPU通信程序传递数据。CPU-GPU异构计算架构程序可通过统一计算设备架构(Compute Unified Devices Architecture,CUDA)编程框架实现。
CUDA编程框架是NVIDIA公司发布的新指令集编程模型和通用GPU计算架构。CUDA编程框架对标准C语言进行扩展,使用户能直接在GPU上编程、调试及运行,降低了使用GPU进行并行计算的编程难度。CUDA框架通过定义内核函数(Kermel)来调用GPU进行计算.当启动核函数时,将调用大量的线程进行并行计算。CUDA模型中通过线程块(Block)及网格(Grid)形式组织线程。一个核函数占用一个网格,每个网格由多个线程组成成,线程块之间无法通信.每个线程块由多个线程组成,各线程对不同数据并行执行相同指令。CUDA编程框架为CPU-GPU异构运算架构的实现提供了软件环境,其编程模型如图1所示。
2、算法步骤
本文结合GPU通用计算技术,设计一种协议转换加速算法。该算法基于CUDA采用基于GPU异构运算架构,分为CPU处理部分和GPU处理部分,CPU部分处理工作包括原始数据导入(串口参数:波特率、数据位、停止位、校验位、控制流、串口类型;网络参数:BCAST、BLISTENER、CPORT、DOBROAD、IP、LOCAL、LDAP、ME、RCVBUFSZ、SNDBUFSZ、PORT)、原始协议、目标协议等,GPU部分处理数据流转换,以实现加速转换效果。基于CUDA的加速协议转换逻辑流程图如图2所示。主要流程如下∶
e.输入基本属性数据、原始协议、目标协议属性;设置数据缓冲池大小,数据缓冲队列数量,队列长度;
f.将不同类型设备接口原始数据数据标记原始协议属性传至GPU;
g.根据原始协议属性和目标协议属性,选取计算特征码,建立状态转移矩阵,调用GPU、转换计算,当状态转移矩阵返回非空项,则返回CPU;否则dd+1,进行下一步;
h.GPU转换计算
⑦初始化调用Gr_cublasCreateHandleO获取设备计算句柄;
⑧使用Gr_cudaMalloc分配device资源;
⑨使用Gr_cublasSetVector填充数据;
⑩使用Gr_TrasProtocol进行转换计算;
11使用Gr_cublasGetVector获取计算结果;
12释放资源;
3、结论
因为GPU的特点特别适合于大规模并行运算,GPU在高并发的协议转换处理中发挥着巨大的作用,因为GPU可以平行处理多接口设备信息,而不需要等待设备接口处理完信息再进行下一个接口或者下个队列的处理,更不需要再设备通讯异常的时候花费大量的资源进行等待处理,因此,基于GPU的协议转换处理可以在高速的状态下分析海量的数据。而且相比于CPU,GPU的另一大优势,就是它对能源的需求远远低于CPU。GPU擅长的是海量数据的快速处理,通过本文设计的协议转换方法,明显的提高了协议转换的效率,降低了资源开销。
可以理解的是,对本领域技术人员来说,对本发明的技术方案及发明构思加以等同替换或改变都应属于本发明所附的权利要求的保护范围。
Claims (3)
1.一种基于GPU的加速协议转换的算法,其特征在于:该算法基于CUDA采用基于GPU异构运算架构,分为CPU处理部分和GPU处理部分,CPU部分处理工作包括原始数据导入、原始协议、目标协议,GPU部分处理数据流转换,以实现加速转换效果。
2.根据权利要求1所述的基于GPU的加速协议转换的算法,其特征在于:该算法包括如下步骤:
a.输入基本属性数据、原始协议、目标协议属性;设置数据缓冲池大小,数据缓冲队列数量,队列长度;
b.将不同类型设备接口原始数据数据标记原始协议属性传至GPU;
c.根据原始协议属性和目标协议属性,选取计算特征码,建立状态转移矩阵,调用GPU、转换计算,当状态转移矩阵返回非空项,则返回CPU;否则dd+1,进行下一步;
d.GPU转换计算,GPU部分处理数据流转换。
3.根据权利要求2所述的基于GPU的加速协议转换的算法,其特征在于:所述的GPU转换计算包括如下步骤:
①初始化调用Gr_cublasCreateHandleO获取设备计算句柄;
②使用Gr_cudaMalloc分配device资源;
③使用Gr_cublasSetVector填充数据;
④使用Gr_TrasProtocol进行转换计算;
⑤使用Gr_cublasGetVector获取计算结果;
⑥释放资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011416788.6A CN112527727A (zh) | 2020-12-07 | 2020-12-07 | 一种基于gpu的加速协议转换的算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011416788.6A CN112527727A (zh) | 2020-12-07 | 2020-12-07 | 一种基于gpu的加速协议转换的算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112527727A true CN112527727A (zh) | 2021-03-19 |
Family
ID=74997942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011416788.6A Pending CN112527727A (zh) | 2020-12-07 | 2020-12-07 | 一种基于gpu的加速协议转换的算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527727A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110275850A (zh) * | 2018-12-29 | 2019-09-24 | 中国科学院软件研究所 | 天基超算平台的计算方法和装置 |
US20190324969A1 (en) * | 2016-04-27 | 2019-10-24 | Hitachi, Ltd. | Computing system and server |
CN111930666A (zh) * | 2020-09-11 | 2020-11-13 | 之江实验室 | 一种高速可配置工业协议转换器 |
-
2020
- 2020-12-07 CN CN202011416788.6A patent/CN112527727A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190324969A1 (en) * | 2016-04-27 | 2019-10-24 | Hitachi, Ltd. | Computing system and server |
CN110275850A (zh) * | 2018-12-29 | 2019-09-24 | 中国科学院软件研究所 | 天基超算平台的计算方法和装置 |
CN111930666A (zh) * | 2020-09-11 | 2020-11-13 | 之江实验室 | 一种高速可配置工业协议转换器 |
Non-Patent Citations (1)
Title |
---|
王远昌: "《人工智能时代电子产品设计与制作研究》", 电子科技大学出版社, pages: 171 - 173 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104794100B (zh) | 基于片上网络的异构多核处理系统 | |
WO2022252717A1 (zh) | 一种实现电力数据处理的同异构混合多核芯片架构 | |
CN108874623A (zh) | 分布式集群性能监控方法、装置、设备、系统及存储介质 | |
CN108667851A (zh) | 一种调控系统轻量化人机交互系统 | |
CN102662889A (zh) | 中断处理方法、中断控制器及处理器 | |
CN112882851B (zh) | 一种基于超级计算机的云交互系统 | |
CN106648905A (zh) | 一种电力大数据分布控制系统及其构建方法 | |
CN114138488A (zh) | 一种基于弹性高性能计算的云原生实现方法及系统 | |
CN113028603A (zh) | 一种应用于中央空调系统的设备监测系统 | |
CN109697251A (zh) | 基于分布式光伏电站的云计算方法及云服务平台 | |
CN112055047A (zh) | 一种面向智慧燃煤电厂的基于发布订阅的数据通信方法 | |
CN116244081A (zh) | 一种多核存算一体加速器网络拓扑结构控制系统 | |
CN112527727A (zh) | 一种基于gpu的加速协议转换的算法 | |
CN106990913B (zh) | 一种大规模流式集合数据的分布式处理方法 | |
CN112395056B (zh) | 一种嵌入式非对称实时系统及电力二次设备 | |
CN110879753B (zh) | 基于自动化集群资源管理的gpu加速性能优化方法和系统 | |
CN108109104B (zh) | 一种面向统一染色架构gpu的三级任务调度电路 | |
CN103246497A (zh) | 一种基于数据划分的实时数据并行处理方法 | |
CN114064153A (zh) | 一种基于多核处理器的嵌入式动态模块加载方法及装置 | |
CN112445150A (zh) | 一种针对乙二醇再生和回收系统的自动化仿真方法 | |
CN109302724B (zh) | 一种分布式多节点无线电实时数据处理系统及方法 | |
CN111427687A (zh) | 一种人工智能云平台 | |
CN110442442A (zh) | 核电厂dcs平台工程师站软件维护网络通讯方法 | |
CN204669395U (zh) | 一种多核架构的智能网络加速卡 | |
CN105468451A (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 |