讯琥科技基于FPGA 的区块链硬件加速服务性能直逼100,000 TPS
区块链是一种防篡改的去中心化账本,可建立必要的信任机制,从而在免去中间环节的情况下交换价值。据IDC预测,到2025年,全球物联网(IoT)设备数将达到416亿台。当前,物联网行业高度碎片化、相互孤立,且面临通信协议不统一和集中式数据管理(中心化云计算)等安全隐患,分布式账本技术(DLT)内置的密码学共识算法可为数百亿IoT设备构建信任根基,区块链这台“信任机器”将为物联网带来重大机遇。
然而,区块链技术因为其去中心化的网络构建,一直受到“三元悖论”问题(也称“不可能三角”)的困扰:即在区块链系统中,去中心化(Decentralization)、可扩展性(Scalibility)和安全性(Security)不可同时满足,如下图所示。其系统性能难以获得提升,无法满足海量IoT设备高并发、低时延的服务需求。
很多区块链和分布式账本项目在寻求扩展性方面进行了诸多探索,也取得了一些进展,这包括共识算法改进、分片、layer2、侧链、跨链等。随着边缘计算的兴起以及移动网络边缘价值的显现,讯琥科技当前正在尝试从另外一个完全不同的方向切入,意图采用可灵活编程、时延性低,拥有流水线并行和数据并行能力的FPGA加速方案,将例如椭圆曲线相关计算、零知识证明、默克尔根计算等计算密集型任务从CPU卸载至加速装置,并充分利用移动网络运营商的5G网络和多接入边缘计算(MEC)基础设施对其进行加速。
运营商MEC节点网络的分布式架构可为区块链提供理想的部署和运行环境,讯琥科技“5G+MEC+DLT”的创新性解决方案将有效缓解区块链的“三元悖论”问题,可在保证去中心化和安全性的前提下帮助区块链实现更高的性能,使得海量智能化的物联网设备可以快速、安全地在移动网络边缘进行自动化的价值交换。另外,对于运营商来说,与叠加CPU实现加速相比,使用高性能、低能耗的FPGA硬件加速解决方案可以节省计算资源,提升投资回报率(ROI)。
根据实际的测试结果,讯琥科技的FPGA加速装置 - Triden,针对椭圆曲线验签服务,目前的吞吐量(每秒处理的事务数,TPS)已达到90K+笔/秒。
对于区块链技术来说,在每次成功的出块之前,通常都会有一系列的“重复性”工作。这里的“重复性”可以简单定义为:针对不同的输入数据,执行极为相似的算法操作,以下是两个典型的例子:
以比特币的POW共识机制为例,成千上万的矿工(Miner)对等待出块数据,反复改动nonce做哈希计算,直至某位幸运儿得到达成”目标难度”的一个哈希值,广播出去并得到认可,即称为达成共识。
以EOS的出块机制为例,每个出块节点(Block Producer)在出块之前,需要针对预计将会被打包入块的每一笔交易(Tx),进行哈希计算,签名验证,账户校验等等一系列操作。只有全部通过验证的那些Tx才会被打包进入最新的块。而其它所有负责验证的节点,同样需要完成非常类似的工作。
如何能够提高这类“重复性发生”的工作的效率,对于提高区块链的底层能力来说至关重要--这有助于在不牺牲其它两方面能力(可扩展性,安全性)的前提下,显著提高区块链的系统性能(TPS)。
因此,对于相关区块链涉及到的技术进行分解,找到重复发生的工作,把它们模块化,实例化,并提交(Offload)给专用硬件模块去实现,而非全部塞给CPU去执行,将可以极大提升区块链的效率。这是讯琥科技提出的区块链加速器概念(Triden)的原始动力之一。
下图展示的是Triden的理论概念模型,从基本原理上展示了,使用专用硬件加速设备(本示例中使用FPGA)相比传统CPU的方案,将可以数倍至数十倍地加速区块链底层数据处理:
基本上所有区块链技术都采用了基于椭圆曲线的签名和验证签名。从技术需求分析,这类工作负载属于典型的计算密集型任务,它们具备这些特性:
输入、输出数据量小,计算量大;
数据格式规整,算法相对统一;
输入输出呈现流式数据格式,适合流水线模式处理;
数据处理实时性要求较高;
当面向边缘计算的应用场景时,还需加上对 于能效比(即功耗)的严格要求。
基于以上原因,讯琥科技选择针对椭圆曲线的签名验证作为第一个加速对象,设计了基于FPGA的加速器模型。该原型使用Xilinx提供的ALVEO 系列数据中心FPGA加速卡 U200,利用Xilinx Vitis 异构计算SDK软件包(OpenCL Framework)完成设计。该加速器模型由10个并行加速单元组成。
为了验证该加速器吞吐量,我们生成了10240组椭圆曲线签名 (10240 Tx)。加速器控制软件将这10240组签名验证任务分配给了十个加速器引擎(下图中的ecc_eng)。因此,每个加速引擎将负责处理1024组参数。
重复10次上述测试,来更逼近实际工作当中的流水线模式。
测试数据分析,使用两种方式抓取数据并做相互印证:
使用Xilinx设计套件内的时序分析工具抓取的时序图,如下图:
可以看到,所有计算工作(下图中Computing Start → Computing Finish)在1147ms内完成。由此计算可得,该加速器模型的吞吐量= (10240 Tx * 10) /1.147sec = 89.276k Tx/sec。由于该计算已计入了FPGA控制软件(运行在CPU上,执行所有加速器引擎的控制和写入/读回)的写入和读取延迟。因此,这个数据就是实际基于区块链业务逻辑,当前可达的系统吞吐量峰值。
2. 使用加速器内置代码做时延分析(Timing Profiling)计算每个计算单元的延迟,该计算并不计入CPU的写入和读取延迟。
我们可以得到90.466k的吞吐量,这是硬件加速器本身的能力;
结合#1的结果,简单计算可以得到当前加速模型的硬件利用效率为:89.276k/90.466k=98.7%,换句话说,我们可以让专用加速设施在98.7%的时间内满负荷运转。
根据互联网上可查询的公开资料 【1】、【2】,综合评估,使用X86 CPU完成椭圆曲线验签,典型可达到的吞吐量在大约2K~2.6K op/sec/core 。进一步提高吞吐量当然可以依靠叠加CPU多核(软件并行)来实现。但是这是一个经济性很差的选择,因为操作系统需要花费更多的额外资源,来提供多核调度和同步开销【3】,简单堆叠CPU并不能获得性能的线性增长。根据Amdahl's_law ,即使是一台具备64独立线程(即64 core) 处理能力的服务器,使用软件并行化处理相对单核CPU,也仅仅能够提供大约15倍的性能提升。
因此若以椭圆曲线签名验证服务为比较基础,一个合理的估计是,Triden目前可以达成的性能 (90k TPS),大约等同于3台中端X86 服务器使用软件并行化可实现的性能。而如果使用进阶版的硬件加速卡,例如Xilinx U250 (可提供当前U200加速卡约1.5倍的布线资源,预计可以提供130k tps的吞吐量),将可以提供约等同于5台中端X86 服务器的效能。这对于在移动边缘提供服务的运营商来说,将是一笔非常划算的投资。
Triden 的硬件加速方案让讯琥科技离“5G边缘服务自动化”的目标更近一步。讯琥科技致力于在移动网络边缘为海量的物联网设备提供互通互信的区块链增值服务,其核心产品是融合了区块链能力的边缘服务管理平台,该平台将搭载在移动运营商的MEC服务器上,借助于MEC节点丰富的计算、存储和网络资源,使区块链的性能得到了有效保障。Triden - 基于FPGA的硬件加速解决方案和丰富的隐私交易算法将为物联网设备提供可信执行环境(TEE),并支持海量物联网设备高并发、自动化的数据及交易服务(如设备身份验证、可信数据管理、 M2M支付)。
打造高性能、易用的区块链平台,跟物联网系统深度结合,满足真实存在的商业需求,最终实现5G边缘服务的自动化,一直是讯琥科技孜孜不倦的追求。目前,讯琥科技正稳步成长,逐步推进设备即服务(EaaS)、无人机等解决方案在5G网络边缘的落地,欢迎有意合作者与我们联系!
参考资料
【1】https://arxiv.org/ftp/arxiv/papers/1508/1508.00184.pdf
【2】https://link.springer.com/article/10.1007/s11227-019-02744-6
【3】https://en.wikipedia.org/wiki/Amdahl%27s_law
讯琥科技基于FPGA 的区块链硬件加速服务性能直逼100,000 TPS相关推荐
- 目标检测YOLO实战应用案例100讲-基于FPGA的目标检测硬件加速技术及其应用研究
目录 基于FPGA的目标检测加速器设计 目标检测算法与加速方法 2.1 YOLO v2算法
- 讯琥科技与中国移动开展“边缘计算+区块链”应用联合测试
近日,讯琥科技基于区块链技术的智能制造解决方案在中国移动边缘计算通用平台OpenSigma 完成了最终验证和测试.本次的联合测试标志着讯琥科技的"边缘计算+区块链"行业应用正在准 ...
- XENIRO 讯琥科技应用案例(八)| 基于边缘计算和区块链的跨境漫游结算
在遭遇此次新冠疫情之前,出境旅游早已变得很寻常.其中,随时随地上网是提高出行品质和体验的重要保证. 出境随身WiFi.虚拟流量卡.境外电话卡因为成本低.体验友好逐渐成为境外上网的主要方式,对移动网络 ...
- XENIRO 讯琥科技应用案例(三)| 5G+区块链助力物流升级,打造智慧供应链
随着互联网经济的蓬勃发展,作为互联网行业重要"基础设施"的物流行业迎来了黄金发展期.据估计,2020年快递业务量将超740亿件,同比增长18%:预计2020年快递业务收入超8690 ...
- 讯琥科技精彩亮相2021 MWC 上海:构建集成区块链技术的下一代移动网络
2月23日-25日,2021 世界移动通信大会(MWC)上海站盛大召开,全球领先科技企业汇聚一堂,同台共秀技术实力.作为边缘计算和区块链领域的创新型企业,讯琥科技也展示了自己最新的产品和解决方案. ...
- 讯琥科技与VoerEir AB 达成战略合作,受邀加入Linux Foundation 旗下项目Akraino
近日,讯琥科技与VoerEir 达成战略合作,并接受VoerEir 的邀请即将加入LF Edge 旗下Akraino 的子项目Kontour .双方将结合区块链和边缘计算技术,利用FPGA 对5G网络 ...
- 相约GSMA Thrive线上展会,讯琥科技CEO将出席法国电信Orange 5G创新企业路演
疫情当前,但是时空的限制难以阻隔信息的传递,我们创新求变的脚步也从未停止. 讯琥科技将于6月30日到7月2日参加首届GSMA Thrive • 万物生辉线上展会,与众多来自人工智能.物联网.大数据.边 ...
- XENIRO 讯琥科技应用案例(二)| 5G+边缘计算为云游戏赋能
随着人们娱乐方式逐步从线下向线上转移,游戏行业迎来了新的发展机遇.游戏变得更加社交化,游戏玩家也更加追求身临其境的互动性体验. 然而,目前传统的数据中心难以提供低延迟(10ms以内)的网络服务,5G ...
- 讯琥科技 | 云计算 VS 边缘计算,是朋友还是敌人?
云计算(Cloud computing)由分布式计算.并行处理.网格计算发展而来,是一种商业计算模型.而狭义的云计算是指IT 服务的交付和使用模式,即通过互联网提供动态.易扩展的虚拟化资源.这些虚拟化 ...
最新文章
- eclipse中如何将java项目转为java Web项目
- leangoo自由配置任务卡片(需求、迭代、bug)自定义字段
- c语言编一个开关量上升沿的程序,电工学(1)习题解答
- Python字典:字典操作
- 网络编程-关于get请求与post请求
- 和 jQuery 说再见,Bootstrap 5 将移除对其依赖
- python生成器迭代器_python 生成器 迭代器
- 餐饮为什么很难做到薄利多销?
- 小心!你的脸正在成为色情片主角
- oracle在线重定义表分区,oracle把一张表在线重定义成分区表
- 基于opencv的对CV_16U深度图像MAT中某点的像素值提取问题
- Windows搭建基于EClipse的CppUTest单元测试环境
- 邮件开发:邮件作用、邮件服务器、电子邮箱与邮件客户端软件
- wlop一张多少钱_为什么都说wlop的画很烂?
- 接口优化从20s优化到500ms
- 软考-软件设计师 UML建模
- html5新标签 figure 和 figcaption
- 3个小球放入4个盒子
- Java技术Jsoup爬取数据手动登录
- 烂泥行天下 php,烂泥:php5.6源码安装及php-fpm配置与nginx集成