Starknet:通过原生Cairo执行解锁更好的性能

本文详细介绍了Starknet及其Cairo执行环境的革新,特别是Cairo-Native技术如何提升事务处理速度和资源使用效率,伴随着对Starknet性能提升的实证数据分析。文章探讨了Starknet的未来潜力以及其在以太坊生态系统中的重要性,提供了关于执行模型演变的深入见解。整体内容逻辑清晰,结构合理,适合对Layer 2技术以及Starknet有更深理解需求的技术人员。

介绍:Starknet 和 Cairo 执行

Starknet 是一个以太坊第二层(L2)协议,利用加密 STARK 证明(S uccinct T ransparent A rguments of K nowledge)来实现可验证的大规模计算。与其他 L2 区块链一样,Starknet 能够为 L2 事务提供有意义的可扩展性和安全性,同时保持去中心化。

Starknet 的核心是 Cairo 虚拟机(VM),这是一个为利用 STARK 的加密证明能力而专门构建的执行环境。与其他虚拟机不同,Starknet 的 Cairo VM 旨在运行可证明的程序,这减少了生成证明以验证计算所需的开销。这使得 Starknet 能够在保持无信任验证的情况下处理大量事务。

话虽如此,Starknet 性能的真正衡量标准——用户所体验到的——依赖于其排序器处理事务和确认执行结果的速度。排序器对事务成功(或失败)的确认也被称为 “软确认”,对于那些希望在确认事务状态之前避免等待以太坊 L1 上事务完成的时间敏感用户非常有用。

截至目前,Starknet 的事务吞吐量在很大程度上依赖于排序器的效率。排序器负责接收、组织和证明事务,然后将其提交给以太坊进行最终验证。尽管 Starnet 目前使用单个排序器,但它计划去中心化排序器,以提高抵制审查能力和故障容忍度(一个离线的排序器不会使网络瘫痪)。

在 10 月 29 日,Starknet 记录了在连续 24 小时内平均 127 笔交易每秒(TPS) 的交易量。这不仅仅是一次性的峰值,而是在正常运营中达到的持续吞吐里程碑,展示了 rollup 在真实世界环境下处理高交易量的能力。与这一成就相伴,Starknet 的性能在于其闪电般快速的交易确认(平均不到 两秒)和超低费用(每笔交易 $0.002)——使其成为规模化以太坊的高效且经济的解决方案。

然而,保持这种性能水平需要不断的创新,尤其是在用户需求不断增长的情况下。这就是 Starknet 即将推出的执行模型增强的意义所在,这些增强承诺不仅将更快的事务处理,还能更高效的资源使用。这些发展标志着提升 Starknet 执行环境以满足快速发展的生态系统需求的重要一步。

Starknet 已经对其架构进行了变革性的升级,以提高性能并增强用户体验(例如,通过 Bolt 升级实现并行执行和区块打包)。这些创新通过使排序器更高效地处理事务,显著降低了事务处理时间和Gas成本。要了解有关 Bolt 升级以及其如何改善 Starknet 扩展性的更多信息,请阅读我们的 Starknet Bolt 解释.

在此基础上,Starknet 现在专注于进一步优化其执行环境,推出 Cairo-Native。即将到来的增强将重新定义事务的处理方式,从基于虚拟机的仿真转向原生执行。这些变化承诺显著提高处理速度和资源效率,确保 Starknet 能够满足日益增长的用户需求。

在接下来的部分中,我们将更仔细地审视 Starknet 的执行环境,并深入探讨 Cairo VM 和更广泛的架构如何被重新构想,以支持下一阶段的可扩展性和效率。让我们深入了解吧!

对 Cairo-Native 执行的温和介绍

Starknet 的执行环境随着时间的推移显著发展,以提高性能并确保安全。最初,Starknet 依赖一个简单的管道,其中高级 Cairo 代码直接编译为 CASM(Cairo 汇编)以供执行。虽然这种方法有效,但使网络在效率和安全性上面临风险。例如,无法证明无效代码,并且由于缺乏Gas计量的保护,排序器可能会受到潜在的 DoS 攻击。

为了解决这些问题,Cairo 1.0 升级引入了 Sierra,一种通过设计强制执行安全性的中间表示(IR)。受到 Rust 等语言的启发,Sierra 确保开发者遵循更严格的编码模式,有效消除运行时错误并实现准确的Gas计量。该升级已在 Starknet 的主网上生效,并标志着向更强健、更安全的执行环境迈出的重要一步。

Cairo-Native 在此基础上进行构建,并通过启用 原生执行 进一步提升 Starknet 的性能。原生执行不同于之前在 Cairo VM 中执行程序的模式,代表了 Starknet 在性能上的下一次飞跃。

Cairo-Native 执行如何工作?

此前,Starknet 排序器通过一个模拟代码的虚拟机执行程序,这引入了显著的开销并减慢了事务处理速度。模拟 在此背景下涉及到编程 CPU 来像一个理论上的 Cairo CPU 一样运行,逐步解释指令。虽然功能齐全,但这个过程固有地低效,因为它阻止 CPU 充分利用其本机能力和执行风格。

相反,原生执行消除了这种尴尬,允许程序直接在操作系统中以 CPU 的本机指令集运行。这一变化显著提升了执行速度和资源效率,使得 Starknet 能够比以往更快地处理事务。

为此,Cairo-Native 执行集成了高级编译技术,如 MLIR (多层中间表示)LLVM (低级虚拟机)。这些工具在现代软件开发中被广泛用于将代码编译成优化的机器级指令。

Cairo-Native 获取 Sierra 程序并将其组织为一种中间形式 MLIR,这也允许复杂的优化,LLVM 进一步将其编译为适合底层操作系统的本机可执行文件。这个双层编译过程确保所生成的可执行文件快速、高效,并准备好进行直接执行,而无需任何额外的开销。

这一升级对排序器性能(以及网络总体性能)的影响是深远的:

  • 速度提升:通过消除对虚拟机仿真的需求,原生执行使得排序器能够显著更快地处理事务,降低了整个网络的延迟。
  • 更好的资源利用:由 LLVM 生成的优化可执行文件更好地利用系统资源,使得排序器能够处理更高的交易量。
  • 更低的成本:虽然更快的执行并不会立即导致Gas费用的减少(因为没有收费机制),但 Starknet 仍展示了成本效率。例如,在 Starknet 创纪录的性能期间,Gas费用平均在 $0.002 每笔交易。引入 Cairo-Native 的 0.13.4 更新还包括与定价相关的改进。然而,这些改进与 Cairo-Native 本身没有直接关系。尽管 Cairo-Native 在事务费用上的可扩展性尚未完全实现,但这种可扩展性与未来与费用相关的改进相结合,使 Starknet 成为一个高度经济且可扩展的以太坊解决方案。
  • 增强的创新:原生执行带来的性能提升使得更复杂和动态的应用能够在 Starknet 上蓬勃发展,为开发者开辟了创新的用例和机会。

尽管原生执行带来了显著的速度提升,但开发者们自然会对排序器和证明者之间的双重执行工作流程有所担忧。虽然排序器通过使用原生工件来快速运行事务,证明者仍然依赖于 Cairo VM 按一步一步的方式执行事务,以确保它们可以被证明给以太坊的 STARK 验证者。

CASM 在这个过程中仍然使用,因为它是被以太坊上的 STARK 验证者验证的表示。这种双重性——通过两个不同系统执行相同事务——可能引发关于一致性和正确性的有效质疑。具体来说,我们如何确定原生执行与 Cairo VM 执行的结果始终一致?

简短的回答在于严格的测试和验证。特别是,LambdaClass 团队进行了广泛的 重放测试,这一过程是对历史 Starknet 区块在新系统下进行重新执行,确保每个事务都产生相同的结果。

重放测试是一种关键的方法,用于验证即使在两种不同的执行路径下,输出依然一致。因此,开发者可以放心,这一广泛的验证过程大大降低了不一致的风险。

此外,值得注意的是,Starknet 一直以来都在运行两个独立的执行流程。在 Cairo-Native 之前,排序器并未完全依赖 Cairo VM 处理诸如系统调用或状态访问的任务。这些早已以不同的方式进行处理,而证明者专注于生成加密证明,以更新 Starknet 在以太坊上的状态。

从这个意义上说,原生执行的引入代表了一种演变——而非脱离——Starknet 既有架构。这也意味着开发者在设计与 Starknet 新执行模型兼容的应用时应没有多少问题。

总体而言,Cairo-Native 为 Starknet 解锁了新的可扩展性和速度。通过从基于虚拟机的仿真转向原生执行,网络可以支持更多用户、处理更大的交易量,并为开发者和最终用户提供无缝体验。这一转变巩固了 Starknet 作为领先 L2 解决方案的地位,并为以太坊生态系统内更大的创新铺平了道路。

Cairo-Native vs Cairo:Starknet 执行模型的比较

Cairo-Native 标志着 Starknet 执行环境的一个突破性改进——相较于传统的 Cairo VM 提供了显著的速度提升。通过 LambdaClass 和 Nethermind 进行的大量基准测试,量化了原生执行带来的性能增益,突显了 Cairo-Native 能够显著增强交易和合约处理速度。

执行基准测试

基准测试显示,Cairo-Native 在性能上实现了平均 5x 的速度提升,其增益范围从 1.5x20x 不等,具体取决于合约的特定情况。这些结果不仅仅是数字——它们说明了原生执行如何直接惠及用户和开发者。

例如,在两个 Argent 账户之间进行简单的 STRK 转账,不仅完成了 2.3x 更快,而且 ERC-20 合约逻辑的速度提升也达到了 4.8x。对用户来说,这意味着交易等待时间更短,与去中心化应用(dApps)的互动更加顺畅。对开发者来说,这些改进确保他们的应用即使在网络负载较重的情况下也能更快地运行,更加可靠。

在像 STRK/ETH 兑换或开发如 Influenceth 这样的游戏应用等更具挑战性的场景中,收益更加明显。Influenceth 交易的记录显示 10.5x 的交易速度提升,一些合约的执行速度提高了高达 70x。这些进步使开发者能够创造复杂、高性能的去中心化应用,为更丰富的游戏体验、高级 DeFi 协议等计算密集型用例铺平道路。

由仿真转向原生执行为这些进展奠定了基础。通过将程序直接编译为机器本机代码,Cairo-Native 消除了仿真 Cairo 指令的低效,其中 CPU 本质上模拟了另一个虚拟 CPU。原生执行使硬件能够充分运作,提供了在所有交易类型上无与伦比的性能提升。

编译基准测试

Cairo-Native 引入了更先进的编译管道,增加了几个步骤将 Sierra 代码转换为本机可执行文件。这包括将 Sierra 转换为 MLIR、优化代码,最后将其编译为机器本机指令的过程。尽管这一更复杂的管道直观上似乎会增加总体编译时间,但基准测试显示,额外的步骤对总编译时间的贡献不到 15%,证明这个过程依然高效。

还值得注意的是,原生可执行文件的大小相比 CASM 工件更大。这一增加反映了机器本机代码所需的详细程度和优化,但并不影响网络性能。重要的是,编译仅在合约部署到网络时进行一次,确保此步骤不会影响排序器的实时性能。

Cairo-Native 执行对 Starknet 的影响是什么?

Cairo-Native 对 Starknet 的生态系统的影响是深远的。通过实现更快、更高效的交易执行,此升级将大幅提升网络上所有应用的用户体验。预计到 2024 年底,网络将处理近 1000 笔交易每秒(TPS),Starknet 将成为以太坊生态系统中最具可扩展性和响应性的 L2 链之一。

对于用户来说,Cairo-Native 升级意味着更快的事务确认和更低的成本。在今年早些时候 Starnet 创纪录的表现中,Gas费用的平均水平约为 $0.002 每笔交易。随着 Cairo-Native 的引入,这些费用预计将进一步降低,巩固 Starknet 作为最经济的 Layer-2 网络之一。

Cairo-Native 执行的引入还有助于以下用例的超charged:

链上游戏应用

Starknet 已经作为一个区块链游戏平台获得了关注,而 Cairo-Native 使其更进一步。诸如 Influenceth 这样的游戏,依赖复杂的逻辑和快速的交互,将从速度的提升中大大受益。更快的执行时间减小了游戏中的延迟,使得玩家能够获得更流畅的体验。

开发者们也可以引入更复杂的游戏机制,如实时多人游戏能力和动态 NFT 互动,而无需担心性能瓶颈。这可以带来一类新的链上游戏应用,其游戏体验能够比肩传统竞争对手。

社交媒体平台

去中心化社交媒体平台需要高交易吞吐量和低延迟,以确保无缝的用户交互,例如发布、评论和投票。借助 Cairo-Native,这些平台能够扩展到支持数百万用户,提供实时动态和即时反应,力竞争争传统 Web2 对手的性能。较低的燃油成本进一步增强了可访问性,使去中心化社交媒体成为中心化平台更可行的替代方案,并为主流采用做好准备。

去中心化金融(DeFi)

Starknet 上的 DeFi 生态系统也将受益于 Cairo-Native。复杂的金融操作如交换、借贷和收益农业需要高吞吐量和精度。更快的执行时间确保交易和清算在实时发生,最小化滑点并为用户提供更好的结果。另外,较低的Gas费用使微交易变为可能,让 DeFi 协议的门槛更低,能够吸引更广泛的受众。

结论

Cairo-Native 执行是 Starknet 路线图 中的一个关键里程碑。通过引入新的执行水平,Starknet 不仅巩固了其作为领先 Layer-2 平台的地位,也为更广泛的以太坊 rollup 生态系统树立了榜样。Starknet 的创新展示了 rollups 如何实现无与伦比的可扩展性和效率,帮助以太坊更接近其大规模采用的愿景,同时保持去中心化和安全性原则。

Cairo-Native 提供了一个强大、高性能的环境,支持更动态和创新的应用。通过减少执行时间和资源开销,开发者可以专注于创建更丰富和互动体验,而这一切在以前受网络限制的情况下几乎是不可能的。

正如 在一条推文中提到的,Cairo-Native 仍然有进一步的优化潜力——这意味着 Cairo-Native 的性能可能会随着时间的推移而继续改善。在这个意义上,升级到 Cairo-Native 执行是实现 Starknet 作为快速、可扩展且友好开发者的平台的全部潜力,并促进以太坊生态系统中 rollup 技术能力的关键一步。

  • 原文链接: research.2077.xyz/starkn...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
2077 Research
2077 Research
https://research.2077.xyz