Paradigm CTO解读:Reth如何实现每秒1GB gas

作者:Georgios Konstantopoulos,Paradigm研究合伙人&CTO;翻译:金色财经xiaozou

我们于2022年开始构建Reth,为以太坊L1提供弹性的同时解决L2上的执行层扩展问题。

今天,我们很高兴与大家分享2024年Reth计划如何实现L2每秒1GB gas吞吐量的,以及我们如何超越这一目标的长期路线图。

我们邀请整个生态系统与我们一起,共同推动加密领域的性能前沿和严格的基准测试。

1、我们是否已实现规模化扩展?

加密货币要想达到全球规模,避免投机行为(成为主要用例),有一个非常简单的途径:交易一定要低价且快速。

1.1 如何衡量性能?每秒gas量指的是什么?

性能通常以“每秒交易数”(TPS)来衡量。特别是对于以太坊和其他EVM区块链而言,一个更微妙、也许更准确的衡量标准就是“每秒gas量”。该指标反映了网络每秒可以处理的计算工作量,其中“gas”是衡量执行交易或智能合约等操作所需的计算工作量的单位。

将每秒gas量作为性能指标进行标准化,可以更清楚地了解区块链的容量和效率。它还有助于评估系统的成本影响,防止潜在的拒绝服务(DOS)攻击,这些攻击可能会利用不太精细的测量方法。该指标有助于比较不同以太坊虚拟机(EVM)兼容链的性能。

我们建议EVM社区采用每秒gas量作为标准指标,同时结合其他gas定价维度来创建一个综合的性能标准。

1.2 我们如今的发展阶段

每秒gas量是通过将各区块的目标gas使用量除以区块时间来确定的。下表,我们展示了不同EVM链L1和L2的当前每秒gas吞吐量和延迟(并不详尽):

1dj43oxL2MlDukXJC8xs4DELX3Bv8tLSwazxgXby.jpeg

我们强调每秒gas量,用其来全面评估EVM网络性能,同时捕获计算和存储成本。Solana、Sui或Aptos等网络由于其独特的成本模式而不包括在内。我们鼓励努力协调所有区块链网络的成本模型,以实现全面和公平的比较。

我们正在为Reth开发一套无间断基准测试工具,以复制真实的工作负载。我们对节点的要求是符合TPC基准。

2、Reth如何达到每秒1GB gas?甚至更高?

我们2022年创建Reth的动机有一部分是因为我们迫切需要一个专为web rollup而构建的客户端。我们认为我们的前进道路充满希望。

在实时同步期间,Reth已经达到每秒100-200MB gas(包括发送方恢复,执行交易和计算各区块的trie);所以,要实现我们每秒1GB gas的短期目标,需要再扩展10倍。

随着Reth的发展,我们的扩展计划必须在可扩展性和效率之间寻找平衡:

  • 垂直扩展:我们的目标是最大限度地利用每个“box”,充分发挥其潜力。通过优化各单个系统处理交易和数据的方式,我们可以极大提高整体性能,同时也使各节点运营商的效率更高。

  • 水平扩展:尽管进行了优化,但web规模的绝对交易量超过了任何一台服务器的处理容量。要应对这种情况,我们考虑部署一个水平扩展架构,这个架构类似于区块链节点的Kubernetes模型。这意味着跨多系统分散工作负载,以确保没有哪一个节点可以成为瓶颈。

我们在这里探讨的优化不会涉及状态增长解决方案,这部分内容是我们将在其他文章单独探讨的。下面是我们实现这一目标的计划概况:

oNBbwPSyyuXZui3Dp3dsT98hp19cdOCmHCacTluP.jpeg

在整个技术栈中,我们还使用actor模型对IO和CPU进行了优化,支持堆栈的各部分都可以作为一项服务而部署,并对其运用进行精细控制。最后,我们正在积极评估备选数据库,但尚未确定。

2.1 Reth的垂直扩展路线图

我们垂直扩展的目标是最大化运行Reth的服务器或笔记本电脑的性能和效率。

(1)即使(Just-In-Time)EVM和提前(Ahead-of-Time)EVM

在像以太坊虚拟机(EVM)这样的区块链环境中,字节码的执行通过解释器(interpreter)进行,解释器按顺序处理指令。这种方法会带来一定开销,因为并不是直接执行原生汇编指令,而是通过VM层进行的操作。

即时(JIT)编译通过在执行前将字节码转换为原生机器码来解决这个问题,从而通过绕过VM的解释过程来提高性能。这种技术可以提前将合约编译成优化后的机器码,在Java和WebAssembly等其他虚拟机中已经得到了很好的应用。

但是,JIT可能容易遭受恶意代码攻击,恶意代码旨在利用JIT进程漏洞,或者在执行期间因速度太慢而无法实时运行。Reth将提前(AOT)编译需求最高的合约并将它们存储在磁盘上,避免在实时执行期间有不受信字节码试图滥用我们的原生代码编译过程。

我们一直在为Revm开发JIT/AOT编译器,目前正在与Reth集成。我们将在未来几周在完成基准测试后立即将其开源。平均而言,大约50%的执行时间花在了EVM解释器上,因此应该需要约2倍的EVM执行改进,但在一些计算需求更大的情况下,影响可能会更大。在接下来的几周内,我们将在Reth中分享我们的基准测试并集成我们自己的JIT EVM。

tFoc9IguZjl7qS83LNNTClCm5CFm0SKvabzG0GbB.jpeg

(2)并行EVM

并行以太坊虚拟机(Parallel EVM)的概念支持同时处理多个交易,与传统的EVM串行执行模型不同。我们有以下两条路径:

  • 历史同步:历史同步可以让我们通过分析历史交易和识别所有历史状态冲突来计算可能的最佳并行调度。

  • 实时同步:针对实时同步,我们可以使用类似Block STM的技术来推测执行,而不需要任何额外信息(如访问列表)。该算法在状态竞争严重期间性能较差,因此我们希望根据工作负载状况来探索串行和并行执行之间的切换,以及静态预测将访问哪些存储slot以提高并行质量。

根据我们的历史分析,大约有80%的以太坊存储slot是独立访问的,这意味着并行可以使EVM执行效率提高5倍。

p2jsoS9RYQMloUuDlcFkAMAW7NfTrhw6Mz1s5lHw.jpeg

(3)优化状态承诺

在Reth模型中,计算状态根是一个独立于执行交易的过程,允许使用无需获取trie信息的标准KV存储。这目前需要>75%的端到端时间来密封(seal)一个区块,这是一个非常令人兴奋的优化领域。

我们确定了以下两个“轻松取胜”的途径,可以在不做任何协议更改的情况下将状态根性能提高2-3倍:

  • 完全并行化状态根:现在我们只重新并行计算已更改帐户的存储树,但是我们可以更进一步,当存储根作业在后台完成时并行计算帐户树。

  • Pipelined状态根:在执行过程中,通过通知状态根服务所涉存储slot和帐户,从磁盘预取中间trie节点。

除此之外,我们还可以偏离以太坊L1状态根活动探索一些前进路径:

  • 更低频的状态根计算:不在每个区块上计算状态根,而是每T个区块计算一次。这减少了整个系统中投入状态根的总时间占比,这可能是最简单最有效的解决方案。

  • 跟踪状态根:与其在同一个区块上计算状态根,不如让它落后几个区块。这样就可以在不阻塞状态根计算的情况下推进执行。

  • 替换RLP编码器& Keccak256:相比使用RLP编码,直接合并字节并使用更快的哈希函数(如Blake3)可能成本更低。

  • 更宽的Trie:增加树的N-arity子节点,以减少由于trie的logN深度而导致的IO增大。

这里有几个问题:

  • 上述变化对轻客户端、L2、bridge、协处理器和其他依赖频繁帐户和存储证明的协议的次级影响是什么?

  • 我们能同时优化SNARK证明和原生执行速度的状态承诺吗?

  • 用我们现有的工具,我们能得到的最宽泛的状态承诺是什么?对见证大小有什么次级效应?

2.2 Reth的横向扩展路线图

我们将在整个2024年执行上述多项内容,以实现每秒1GB gas的目标。

然而,垂直扩展最终会遇到物理和实操限制。没有任何一台机器可以处理全世界的计算需求。我们认为这里有两条路径可以支持我们在负载增大后通过引入更多的box来扩展:

(1)多Rollup Reth

如今的L2堆栈需要运行多个服务来追踪链:L1 CL、L1 EL、L1 -> L2派生函数(可能与L2 EL绑定在一起)和L2 EL。虽然这对于模块化来说非常好,但在运行多个节点栈时情况会变得更加复杂。想象一下必须运行100个rollup会怎样!

我们希望允许在Reth的发展过程中同步发布rollup,并将运行数千个rollup的运营成本降至几乎为零。

我们已经在我们的执行扩展项目中进行了这方面的工作,未来几周还会有更多进展。

(2)云原生Reth

高性能排序器可能在单个链上有很多需求,它们需要扩展,一台机器并不能满足其需求。这在如今的单节点部署的情况下是不可能的。

我们希望可以支持运行云原生Reth节点,将其作为一个服务栈部署,可以根据计算需求自动扩展,并使用看似无限的云对象存储来实现持久存储。这是无服务器数据库项目(如NeonDB、CockroachDB或Amazon Aurora)中常见的架构。

3、未来前景

我们希望逐步向所有Reth用户推出这一路线图。我们的使命是让所有人都能获取每秒1GB gas甚至更高的速度。我们将在Reth AlphaNet上进行优化测试,我们希望人们将Reth用作SDK来构建优化的高性能节点。

有些问题我们还没有找到答案。

  • Reth如何帮助提高整个L2生态的性能?

  • 我们如何适当衡量在一般情况下,我们的一些优化可能出现的最坏情况?

  • 我们如何处理L1和L2之间的潜在分歧?

这些问题中很多我们都还没有答案,但我们有很多前景光明的最初设想,可足够让我们忙上一段时间了,我们希望看到这些努力在未来几个月结出硕果。

WEEX唯客是一家安全易用的加密货币交易所,由新加坡顶级区块链投资机构斥资1亿美元打造,注册用户超百万,日均交易额超15亿美元,已获得美国MSB、加拿大MSB、SVGFSA金融牌照。

WEEX唯客平台所有数据皆于海外数据库严格保存,服务器多地部署和备份,并采用满足银行级安全需求的亚马逊AWS及高速高稳定性的香港CDN,为全球用户提供最安全、最专业、最具隐私性的交易服务。

WEEX唯客是全球交易深度最好的合约交易所之一,位居CMC交易所流动性排名前五,订单厚度、价差领先同行,微秒级撮合,零滑点、零插针,最大程度降低交易成本及流动性风险,让用户面对极端行情也能丝滑成交。

在WEEX唯客,用户不仅能享受行业最低的交易手续费(Taker 0手续费,Maker 0.06%),还可零门槛一键跟随专业交易员操作,复制高手的交易策略,平台严格甄选数5,000多名优秀交易员供用户挑选。

为保障用户资金安全,WEEX唯客设立了1,000 BTC投资者保护基金,以在非用户自身原因的情况下有效补偿用户资金出现的意外损失,并公示资金池热钱包地址,让用户交易安心无忧。

WEEX官网:weex.com

你也可以在 CMCCoingecko非小号X (Twitter)中文 X (Twitter)YoutubeFacebookLinkedin微博 上关注我们,第一时间获取更多投资资讯和空投福利。

在线咨询

WEEX华语社群:https://t.me/weex_group

WEEX英文社群:https://t.me/Weex_Global

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情

    暂无评论内容

随即推荐
网站百度秒收录的方法免费放送-H5资源网

网站百度秒收录的方法免费放送

具体操作看图,不会就算了。。(现在效果不是那么好了,之前是必收录。)
1年前
0427
网页版聊天机器人保姆级部署视频教程 工具 源码-H5资源网

网页版聊天机器人保姆级部署视频教程 工具 源码

资源简介 网页版聊天机器人保姆级部署视频教程+工具+源码 下载地址:
6个月前
04310
蓝色低面多边形背景PPT模板-H5资源网

蓝色低面多边形背景PPT模板

蓝色低面多边形背景模板。一套多功能通用幻灯片ppt pptX 大小:1.17MB 日期:2017-04-23 效果:静态 下载地址1 下载地址2
10个月前
05013
Snapseed修图软件其效果和体验完爆美图秀秀-H5资源网

Snapseed修图软件其效果和体验完爆美图秀秀

Snapseed 已更新!一款广受用户好评的修图软件,其效果和体验完爆美图秀秀,堪称目前全世界最好的修图软件!
2年前
04712
windows更新重装的方法是什么-H5资源网

windows更新重装的方法是什么

windows更新重装的方法是什么?很多用户在使用电脑的过程中会发现Windows频繁提示更新的问题,有些朋友就选择了关闭windows的更新功能,但关闭更新功能,又无法及时更新微软提供的漏洞补丁。所 ...
11个月前
04410
简单在线画板HTML源码-H5资源网

简单在线画板HTML源码

资源简介 一个简单的在线画板示例HTML源码,本文将介绍如何使用HTML、JavaScript和CSS创建一个简单的在线画板示例,该示例支持在手机和电脑上使用,并支持画笔大小和颜色调节以及保存PNG格式的...
11个月前
0279
电脑重装系统怎么操作?这两种方法需掌握!-H5资源网

电脑重装系统怎么操作?这两种方法需掌握!

工具/原料: 系统版本:windows7系统 品牌型号:惠普星13 软件版本:咔咔装机一键重装系统1.0.0.100
11个月前
0257
Autodesk(批量激活工具)2014-2023全系列 v1.2.2.8中文一键版-H5资源网

Autodesk(批量激活工具)2014-2023全系列 v1.2.2.8中文一键版

Autodesk(批量激活工具)2014-2023全系列 v1.2.2.8中文一键版下载地址:https://nns.lanzoub.com/iKjZV0wxa9af
12个月前
04211
acer笔记本重装系统bios设置-H5资源网

acer笔记本重装系统bios设置

我们都知道不同品牌的电脑的BIOS设置是有所差异的,而里面的BIOS构造也都是有所不同的。如果使用了错误的设置,可能会使计算机无法正常启动或某些设备无法继续工作。那么acer笔记本如何配置BIOS...
12个月前
0266
电脑运行速度慢的原因是什么-H5资源网

电脑运行速度慢的原因是什么

电脑系统使用的时间久了之后,难免会因为各种各样的故障问题导致电脑运行慢等等情况发生。有很多用户不知道电脑运行速度慢的原因的问题,导致耽误自己正常使用。下面小编就教下大家常见的电脑运...
11个月前
0455