当前位置:首页区块链[Hardcore Science] PlatON并行计算技术的实现

[Hardcore Science] PlatON并行计算技术的实现

有关更多令人兴奋的建议,请关注我们

在先前版本的PlatON中,无论验证者是打包块还是验证块,都按顺序执行块中的事务,并且在计算MPT树的根(哈希)时,依次从根节点使用递归。 。树的根是以某种方式计算的,并且从算法级别进行的分析也属于“串行”计算根。

以上两个“串行计算”不能充分利用硬件多核的优势。实际上,在执行交易和计算根的过程中,可以并行执行没有“依赖关系”的计算步骤,然后将并行计算的结果汇总为最终结果。

在底层版本的PlatON 0.13.0中,事务并行和并行计算的实现通过有向无环图(DAG)技术实现。 DAG图是最复杂的数据结构,由一组顶点和一组可以连接两个顶点的边组成。根据测试,事务并行TPS优于事务串行TPS,整体性能提高了约30%。

交易并行

块中的事务按顺序打包,这要求相互依赖的事务必须保持与打包顺序相同的顺序,并且不相互依赖的事务实际上可以并行执行。您可以使用有向无环图来分析事务依赖性。

[Hardcore Science] PlatON并行计算技术的实现

串行事务序列和并行事务DAG

技术术语

顶点:图中的一个点

边:连接两个顶点的线称为边。

度:从一个顶点开始,有多个边将顶点称为几度,或者说顶点的度为几度

路径:由边连接,一组顶点按顺序从一个顶点传递到另一个顶点

简单路径:没有重复顶点的路径

环:一条路径,至少包含一条边,并且起点和终点是相同的顶点

出度:从顶点开始的边总数

Indegree:指向顶点的边总数

根据原始交易清单的执行顺序,通过交易起始地址和接收地址,可以识别交易之间的依赖关系,并可以构建交易依赖的DAG图,入口度为0(没有前一个交易是取决于)事务可以并行执行。

并行计算根

通过深入了解MPT的数据结构,发现叶节点可以并行计算哈希,而MPT类似于DAG,可以将MPT转换为DAG进行并行计算。

假设插入了以下数据:

[Hardcore Science] PlatON并行计算技术的实现1

如下图所示,将生成MPT树。 MPT树可以生成相应的DAG图,入口为0的节点可以并行计算哈希。

[Hardcore Science] PlatON并行计算技术的实现2

性能比较

对于串行和并行版本,使用5000个帐户对25个验证节点(机器配置为4核8G)执行传输压力测试。性能数据如下:

[Hardcore Science] PlatON并行计算技术的实现3

并行版本的性能明显优于串行版本。 PlatON将继续改善性能指标,同时确保安全性和稳定性,并为用户提供更好的服务质量。

[Hardcore Science] PlatON并行计算技术的实现4

了解有关PlatON的更多信息

PlatON·GitHub

https://github.com/PlatONnetwork

平台·论坛

https://forum.latticex.foundation/c/PlatON-CN

平台·电报

https://t.me/PlatONNetworkCN

推特

https://twitter.com/PlatON_Network

平台·关联

https://linkedin.com/company/platonnetwork

[Hardcore Science] PlatON并行计算技术的实现4

[Hardcore Science] PlatON并行计算技术的实现5

[Hardcore Science] PlatON并行计算技术的实现6

戳阅读原文并访问PlatON网站!

温馨提示:

文章标题:[Hardcore Science] PlatON并行计算技术的实现

文章链接:https://www.btchangqing.cn/53685.html

更新时间:2023年04月06日

本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。

区块链

独家透露IOSG投资逻辑,技术进步是登陆的最大动力巴比特工业课程

2020-7-12 0:47:04

区块链

“新基础设施”就在这里!云南省三年内投资3776亿!

2020-7-12 2:19:38

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索