跳转到主要内容Stable EVM
Stable EVM 是 Stable 区块链的以太坊虚拟机兼容执行层,使用户能够通过现有的以太坊工具和钱包(如 MetaMask)无缝与链进行交互。Stable EVM 结合了 EVM 的开发体验与 StableSDK 的模块化、高性能基础设施。
Stable 的以太坊兼容执行层,支持使用现有的以太坊工具与钱包无缝交互。同时 Stable EVM 引入一系列 预编译合约,允许 EVM 智能合约安全且原子性地调用Stable底层接口。通过这种设计,智能合约可执行包括代币转账、质押、参与治理等特权操作。
未来路线图一:Optimistic并行执行(OPE)
传统区块链系统依赖顺序执行机制,逐个处理交易以确保所有节点的一致状态。虽然这种方式保证了确定性,但极大限制了吞吐量和可扩展性,尤其在现代区块链需要支持每秒成千上万笔交易时更为突出。
为突破此瓶颈,Stable 将采用 Block-STM,一种已验证的并行执行引擎,支持 Optimistic并行执行(Optimistic Parallel Execution,简称 OPE),允许在保证确定性的前提下并行处理交易,显著提升性能。
Block-STM 的工作原理
Block-STM 使用Optimistic并发控制机制:首先假设交易之间不会冲突并进行并行执行,随后进入验证阶段检查冲突并处理重执行。核心依赖以下五项关键技术:
1. 多版本内存结构
Block-STM 为每个内存键(memory key)存储多个版本:
- 每个交易读取先前交易已提交的最新版本;
- 执行过程中,读取和写入都会进行版本标记;
- 验证阶段会检查这些版本以确认是否存在冲突。
2. 基于读取集(Read-Set)/写入集(Write-Set)的验证机制
- 执行时,交易会记录其读取的键及其版本(Read-Set);
- 执行结束后,其写入操作记录为 Write-Set;
- 验证阶段,若任意 Read-Set 中的键在执行期间被其他交易修改,则该交易判定为冲突,程序中止然后进行重试并增加尝试编号(incarnation)。
3. 通过 ESTIMATE 标记实现快速冲突检测
- 失败的交易会将其 Write-Set 标记为 ESTIMATE;
- 若其他交易读取到 ESTIMATE 标记的值,会立即停止并等待该交易重试(触发
READ_ERROR);
- 该机制可快速识别依赖关系,减少不必要的执行负担。
4. 预设交易顺序
- 区块内的所有交易按照预设的确定顺序执行;
- 验证与提交阶段也遵循上述相同顺序;
- 即便并行执行,这能确保所有节点最终状态仍一致。
5. 任务调度器(Collaborative Scheduler)
- 任务调度器以线程安全的方式为执行和验证分配任务;
- 优先处理索引较早的交易,加速处理早期提交的任务、减少重试;
- 调度器管理已多次尝试的任务,直到成功提交。
Block-STM 的核心优势
- 无锁并行:基于 MVCC(多版本并发控制),允许多个交易同时读取/写入,无需加锁。在执行后才进行冲突检查,最大限度提升吞吐量。
- ESTIMATE 标记机制:失败交易通过 ESTIMATE 标记提前通知依赖交易暂停,避免资源浪费。
- 高效调度与优先提交机制:通过任务调度器优先提交索引较早的交易,提高整体吞吐并缩短执行周期。
- 确定性与共识兼容性:即使某些交易需要重试,也将在相同顺序下提交,确保所有节点达成相同的最终一致性。
Stable 上的 OPE
Stablechain 将把 Optimistic并行执行(OPE) 作为其执行层的核心功能,并结合 Optimistic区块处理(Optimistic Block Processing,简称 OBP)。需要注意的是,OPE 与 OBP 是互补但本质不同的两种优化策略。
关于 OBP
- OBP 并不涉及并行,而是优化执行时机;
- 在
ProcessProposal 阶段,Stable 会在交易 gossip 的同时预先执行区块;
- 执行结果缓存在内存中,在
FinalizeBlock 阶段复用,节省时间并避免重复计算。
通过结合 OPE 与 OBP,Stable 能在高交易负载下最大限度降低执行延迟与资源争用,带来卓越性能表现。
性能预期
内部基准测试表明,结合 基于 Block-STM 的 OPE 与 StableDB,Stable 的交易处理吞吐量有望提升 至少 2 倍。
未来路线图二:StableVM++
虽然 OPE 与 OBP 聚焦于优化「并行执行多笔交易」,但另一个关键的提升性能手段是:「如何更高效地处理每一笔交易」。
Stable 正在探索替代的 EVM 实现方式以加速交易执行。在当前选项中,EVMONE(一个高性能 C++ 编写的 EVM)是最具潜力的替代现有 Go 实现的EVM。理论基准测试表明,这一更换预计将带来高达 6 倍的 EVM 执行性能提升。