在区块链技术的发展中,并行执行模型的设计是一个复杂且至关重要的领域。其设计需要在多个维度上进行权衡,这些选择直接影响系统的整体性能和可扩展性。本文旨在深入分析几种具代表性的区块链并行执行架构,并展示我们在性能与可扩展性方面的实验结果。
在区块链的高性能追求中,即使出现了多链系统和Layer2解决方案,每个智能合约的执行能力仍然受限于单一虚拟机(VM)。然而,并行虚拟机(Parallel VM)的出现打破了这一限制。通过在多个EVM/VM上同时执行交易,并行虚拟机利用了更多的CPU核心,显著提升了系统的性能。
在众多支持并行VM的高性能区块链系统中,Sei(V2)、Aptos、Sui、Crystality和PREDA表现尤为突出,每个系统在设计上各具特色。本文将首先展示一组实验结果,重点关注在128核机器上执行相同ERC20智能合约时,五个系统的每秒交易数(TPS)的表现。从结果来看,PREDA在这五个并行执行系统中的TPS和可扩展性表现出明显优势。
实验方法与数据分析
我们对比了五个系统的TPS值,并分析了在不同系统中执行相同数量的交易时,系统的加速效果。在Sui、Aptos、Crystality和PREDA系统中,每个线程都被分配了一个专用CPU核心,以确保对各系统并行执行能力的准确评估。所有详细实验数据,请参阅完整报告。
代表性并行执行架构
1. Aptos:乐观并行化的高性能Layer 1
Aptos采用了乐观并行化策略,通过初步假设交易无状态冲突并行执行,随后检查并处理可能的冲突,从而最大化并行执行优势。这种方法无需修改现有代码,并且在冲突较少的场景中表现尤为出色。
2. Sui:悲观并行化的高效执行
Sui采用了悲观并行化策略,在执行前预先检查交易是否可能发生资源争用,以减少回滚需求,确保系统在高冲突场景中的性能稳定性。
3. Sei:与EVM兼容的乐观并行化
Sei是基于Cosmos SDK构建的交易型应用链,后升级为首个并行化EVM链。它采用了与Aptos类似的乐观并行化模型,并保持了与Solidity和EVM的兼容性。
4. Crystality与PREDA:并行接力执行架构
Crystality和PREDA引入了并行接力执行分布式架构。PREDA模型首次实现了智能合约功能的完全并行化,最大限度地利用了硬件资源,提升了系统性能与可扩展性。
实验结果与启示
我们测试了包括ETH TokenTransfer、Voting、Airdrop、CryptoKitties和MillionPixel在内的五个常用智能合约,比较了不同并行执行系统的TPS和加速比。实验结果显示,PREDA模型在解决写冲突和提高执行效率方面具有显著优势。
通过本文的分析与实验,我们发现不同的并行执行策略在不同应用场景中表现各异。Aptos在低冲突场景中表现优异,而Sui在高冲突场景中的性能更加稳定。Sei通过与EVM的兼容性和乐观并行化策略,提供了广泛的应用支持,而Crystality和PREDA则通过创新的并行架构,实现了高效的智能合约执行。