- What is the Parallel EVM?
The Parallel Ethereum Virtual Machine (Parallel EVM) is an upgraded version of the traditional Ethereum Virtual Machine (EVM). By processing multiple non-conflicting transactions simultaneously, it improves the blockchain transaction throughput and increases the transaction processing speed and efficiency.
The Ethereum Virtual Machine (EVM) is the consensus and execution mechanism of the Ethereum network, responsible for processing and executing transactions. But in the traditional EVM, transactions and smart contract execution proceed sequentially. Each transaction must be processed one after another, forming a linear and orderly process. Although simple, this approach can lead to bottlenecks, especially as transaction volume increases. As each transaction waits for its turn, processing time can increase, resulting in potential delays and higher costs (in terms of gas fees).
Parallel EVM significantly improves the throughput and execution speed of the blockchain by processing multiple non-conflicting transactions at the same time. For example, if Bob wants to make an exchange, Alice wants to mint a new NFT, and Eric wants to stake funds to a validator, these transactions can be processed simultaneously instead of sequentially, reducing transaction processing time and costs. This parallel processing capability enables the blockchain to process more transactions in a shorter time, solving the congestion problem of traditional blockchain systems.
How does the parallel EVM work?
In the current EVM architecture, the finest-grained read and write operations are sload and sstore, which are used to read and write the state trie, respectively. Therefore, ensuring that different threads do not conflict on these two operations is a direct entry point for implementing a parallel/concurrent EVM. In fact, in Ethereum, there is a special type of transaction that contains a special structure called an "access list" that allows transactions to carry the storage addresses they will read and modify. Therefore, this provides a good starting point for implementing a scheduler-based concurrent approach.
In terms of system implementation, there are three common forms of parallel/concurrent EVM:
- Schedule-based concurrent processing
Access list: Before executing a transaction, the storage address that the transaction will read and modify is determined in advance through the access list. The access list contains all the state information that each transaction needs to access. Scheduling algorithm: The scheduling algorithm arranges transactions to be executed on different threads according to the access list, ensuring that transactions executed at the same time do not access the same storage address, thereby avoiding conflicts. Concurrent execution: During actual execution, multiple transactions can be carried out simultaneously on different threads, and the scheduling algorithm ensures that there is no mutual dependence or conflict between these transactions.
- Multithreaded EVM Example
Instantiate multiple EVMs: Create multiple EVM instances on a node, each of which can run and process transactions independently. Distribute transactions: Distribute pending transactions to different EVM instances according to a certain strategy (such as hash value, timestamp, etc.). Parallel execution: Each EVM instance executes the transactions assigned to it in its own thread, and multiple instances can run at the same time, thus achieving parallel processing.
- System-level sharding
Data Sharding: Divide the entire blockchain state into multiple shards, each of which contains a portion of the global state information. Shard Nodes: Run multiple nodes on each shard, each of which is responsible for maintaining and processing transactions and states within that shard. Cross-Shard Communication: Ensure data consistency and global order of transactions between different shards through a cross-shard communication protocol. Cross-shard communication can be achieved using cross-shard messaging and cross-shard locking mechanisms. Parallel Processing: Nodes within each shard can independently process transactions within that shard, and multiple shards can also run in parallel, thereby achieving parallel processing capabilities for the entire system.
- Head Project
3.1 Monad: L1 with parallel EVM
Monad is an EVM-based layer 1 blockchain project that aims to significantly improve the scalability and transaction speed of blockchain through its unique technical features. Monad processes up to 10,000 transactions per second with one-second block time and instant finality. Such high performance is due to the unique Monadbft consensus mechanism and compatibility with the Ethereum Virtual Machine (EVM).
Application of parallel EVM in Monad:
- Implementation of parallel execution
Optimistic execution approach: Execution of subsequent transactions begins before earlier transactions in a block have completed, which sometimes leads to incorrect execution results. To address this problem, Monad tracks the inputs used in transaction execution and compares them with the outputs of previous transactions. If a difference is found, it indicates that the transaction needs to be re-executed. Static code analysis: Monad uses static code analyzers to predict dependencies between transactions during execution and avoid invalid parallel execution. In the best case, Monad can predict many dependencies in advance; in the worst case, Monad falls back to a simple execution mode.
- Monadbft consensus mechanism
Efficient communication: Paired BLS signatures are used to solve scalability issues, allowing signatures to be gradually aggregated into one signature that proves the shared signed message associated with the public key. Hybrid signature scheme: BLS signatures are only used for aggregatable message types (such as voting and timeouts), and the integrity and authenticity of the message are still provided by ECDSA signatures.
- Delayed execution
Greater fault tolerance: Since execution only has to keep up with the speed of consensus, this approach is more tolerant to variations in specific computation times. Merkle root delay: To ensure state machine replication, Monad includes a Merkle root delayed by d blocks in the block proposal. This ensures consistency across the network, even in the presence of node execution errors or malicious behavior.
Currently, Monad's parallel EVM supports processing 10,000 transactions per second with a block time of only 1 second. It uses the PoS mechanism to enhance network security and energy efficiency, and is expected to launch the mainnet in the third quarter of 2024.
The official account has also amassed 283k followers on Twitter, commanding a passionate and active community. The Ethereum community in particular seems very excited about the upcoming launch of Monad, which will put Monad in a good position to capture early hype and adoption.
In terms of project background, Monad Labs has completed two rounds of financing, in February 2023 and April this year. The $225 million financing completed on April 9 this year was led by Paradigm, and other investors included Electric Capital. The $19 million seed round of financing completed in 2023 was led by Dragonfly Capital, with participation from Placeholder Capital, Lemniscap, Shima Capital, Finality Capital, angel investors Naval Ravikant, Cobie and Hasu.
The Monad team has a strong background, with members from top projects in the blockchain field, and has a strong technical team and financial support. Keone Hon, co-founder and CEO of Monad, previously led a high-frequency trading department at Jump Trading. He graduated from MIT. Another co-founder, James Hunsaker, is also a senior software engineer at Jump Trading. He graduated from the University of Iowa. In addition, Eunice Giarta is the co-founder and COO of Monad, and has extensive experience in traditional financial technology. Eunice worked in the payment and infrastructure licensing department of Shutterstock, and led the development team to build an enterprise trading system at Broadway Technology.
3.2 SEI Network: L1 with built-in parallel EVM, V2 version will put parallel EVM on the agenda
SEI Network is a layer 1 blockchain focused on decentralized finance (DeFi) infrastructure, with a primary focus on order book development.
By adopting the mechanism of parallel EVM, SEI Network performs order matching in parallel, achieving the goals of high speed, low fees and dedicated functions to support various trading applications. Sei has an average block time of 0.46 seconds and has more than 80 applications.
Application of Parallel EVM in SEI Network:
Smart block propagation and optimistic block processing: speed up transaction processing time, reduce latency and increase throughput by providing all relevant transaction hashes. Local order matching engine: unlike the currently commonly used automated market maker (AMM) system, SEI uses an on-chain order book to match buy and sell orders at a specific price. All Cosmos-based decentralized applications (dApps) can access SEI's order book and liquidity. Frequent batch auctions (FBA): combine transactions into batches and execute orders simultaneously within each block to prevent run-of-orders and MEV.
SEI Network has currently issued its own native token SEI. In the Sei Network ecosystem, SEI coins play multiple roles, including:
Transaction Fees: SEI coins are used to pay transaction fees generated on the Sei network. These fees serve as an incentive for validators and contribute to the security of the network. Staking: Users can stake SEI coins to earn rewards and enhance the overall security of the Sei network. Governance: SEI token holders have the ability to actively participate in the governance of the Sei network. This participation includes voting on proposals and electing validators.
The total token supply of SEI is 10 billion, of which 51% is allocated to the Sei community. 48% of this is used as an ecosystem reserve to reward stakers and contributors, validators and developers. Another 3% (300 million SEI) is designated for airdrops in the first season, and the rest is allocated to private investors, foundations and the Sei team.
As of May 30, the price of SEI token is $0.5049, the market capitalization is $1,476,952,630, and it ranks 63rd in the cryptocurrency rankings. The 24-hour trading volume is $78,970,605, and the market participation is high.
SEI Network's current TVL is 18 million, with a total financing of approximately US$55 million, an FDV of US$8.2 billion, and its official Twitter account has 666,000 followers.
Jeff Feng, co-founder of SEI Network, graduated from the University of California, Berkeley. Before joining Coatue Management's venture capital, he worked as a technology investment banker at Goldman Sachs for three years. Another co-founder, Jayendra, graduated from UCLA and was a software engineering intern at Facebook.
3.3 Eclipse: A compromise that introduces SVM into the L2 of the Ethereum ecosystem
Eclipse is a next-generation optimistic Layer 2 solution based on Ethereum, driven by the Solana Virtual Machine (SVM). The introduction of SVM into Ethereum combines multiple technologies such as Ethereum settlement, Solana Virtual Machine (SVM) execution, Celestia data availability, and RISC Zero zero-knowledge proof, thereby providing a large-scale parallel execution environment that allows multiple operations to be performed simultaneously, thereby improving network throughput and efficiency while reducing congestion and transaction fees. Through this structure, Eclipse aims to improve the scalability and user experience of dApps.
Key features of Eclipse
- High transaction throughput:
Eclipse uses SVM and parallel execution technology to achieve extremely high transaction processing capabilities and support the simultaneous processing of thousands of transactions.
- Instant Finality:
Through the pipeline consensus mechanism, the instant completion and finality of transactions within each block can be achieved.
- Ethereum Compatibility:
Eclipse is fully compatible with the Ethereum Virtual Machine (EVM), allowing developers to easily port existing Ethereum applications to Eclipse.
- Data availability:
Leverage Celestia's data availability solutions to ensure high throughput while maintaining data security and verifiability.
- Zero-knowledge proof:
RISC Zero technology is used to implement zero-knowledge fraud proof, improving the efficiency and security of the system.
Application of Parallel EVM in Eclipse
Eclipse implements parallel EVM by integrating Solana Virtual Machine (SVM), which significantly improves transaction processing speed and efficiency.
- Parallel execution:
Technical principle: Eclipse uses SVM's Sealevel runtime, which allows transactions with non-overlapping states to be executed in parallel rather than sequentially. Implementation method: By explicitly describing all the states that each transaction will read or write during execution, SVM can process transactions that do not involve overlapping states in parallel, thereby significantly improving throughput.
- Ethereum Compatibility:
Neon EVM integration: To achieve EVM compatibility, Eclipse integrates Neon EVM. This enables the Eclipse mainnet to support Ethereum bytecode and Ethereum JSON-RPC. Local fee market: Each Neon EVM instance has its own local fee market, and applications can get all the benefits of the application chain by deploying their own contracts without compromising user experience, security or liquidity.
- Modular Rollup Design:
Infrastructure layer: Eclipse aims to become the infrastructure layer of the Layer 3 ecosystem, achieving high performance and scalability by supporting dApp-specific Layer 3 Rollup. Simply put, the design logic of Eclipse is that transactions are executed in Solana's SVM, and transaction settlement is still on Ethereum.
In terms of project background, Eclipse completed US$15 million in financing in September 2022, with investors including Polychain, Polygon Ventures, Tribe Capital, Infinity Ventures Crypto, CoinList, etc. In addition, on March 11 this year, it also completed a US$50 million Series A financing, led by Placeholder and Hack VC, and its total financing has now reached US$65 million.
Eclipse co-founder and CEO Neel Somani previously worked at companies including Airbnb, Two Sigma, and Oasis Labs. Chief Business Officer Vijay was the former business development director of the Uniswap and dYdX teams.
challenge
Data competition and read-write conflicts:
In a parallel processing environment, different threads reading and modifying the same data at the same time can lead to data contention and read-write conflicts. This situation requires complex technical solutions to ensure data consistency and conflict-free execution of operations.
- Technology compatibility:
New parallel processing methods need to be compatible with existing Ethereum Virtual Machine (EVM) standards and smart contract code. This compatibility requires developers to learn and use new tools and methods to fully exploit the advantages of parallel EVM.
- Ecosystem adaptability:
Users and developers need to adapt to the new interaction modes and performance characteristics brought about by parallel processing, which requires participants in the entire ecosystem to have sufficient understanding and adaptability to new technologies.
- Increased system complexity:
Parallel EVMs require efficient network communication to support data synchronization, which increases the complexity of system design. Intelligent management and allocation of computing resources is also an important challenge to ensure efficient resource utilization during parallel processing.
- safety:
Security vulnerabilities in a parallel execution environment may be magnified because a security issue may affect multiple transactions executed simultaneously. Therefore, a more rigorous security audit and testing process is required to ensure the security of the system.
Future Outlook
Improving blockchain scalability and efficiency:
Parallel EVM significantly improves the throughput and processing speed of blockchain by executing transactions on multiple processors simultaneously, breaking through the limitations of traditional sequential processing. This will greatly improve the scalability and efficiency of blockchain networks.
- Promote the popularization and development of blockchain technology:
Despite the technical challenges, the potential of parallel EVM is huge and can significantly enhance the performance and user experience of blockchain. Successful implementation and widespread adoption will promote the popularity and development of blockchain technology.
- Technological innovation and optimization:
The development of parallel EVM will be accompanied by continuous innovation and optimization of technology, including more efficient parallel processing algorithms, smarter resource management and a safer execution environment. These innovations will further improve the performance and reliability of parallel EVM.
4. Support more diverse and complex applications:
Parallel EVM can support more complex and diverse decentralized applications (dApps), especially in scenarios that require high-frequency transactions and low latency, such as decentralized finance (DeFi), gaming, and supply chain management.