1. What is Parallel EVM?
Parallel Ethereum Virtual Machine (Parallel EVM) is an upgraded version of the traditional Ethereum Virtual Machine (EVM). By processing multiple non-conflicting transactions at the same time, it improves the blockchain transaction throughput and improves 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 executions are performed sequentially. Each transaction must be processed one after another, forming a linear, ordered progression. While simple, this approach can lead to bottlenecks, especially as transaction volume increases. As each transaction waits for its turn, processing time can increase, leading to potential delays and higher costs (in terms of gas fees).
Parallel EVM significantly increases 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, rather than sequentially, reducing transaction processing time and costs. This parallel processing capability allows the blockchain to process more transactions in a shorter period of time, solving the congestion problem of traditional blockchain systems.
2. How does 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 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:
1. Scheduling-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 simultaneously 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.
2. Multi-threaded EVM instance
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.
3. System-level sharding
Data sharding: Divide the entire blockchain state into multiple shards, each of which contains a portion of the global state information.
Sharding nodes: Run multiple nodes on each shard, and each node is responsible for maintaining and processing transactions and states within that shard.
Cross-shard communication: Through the cross-shard communication protocol, data consistency and global order of transactions between different shards are ensured. 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 the shard, and multiple shards can also run in parallel, thereby realizing the parallel processing capabilities of the entire system.
3. Head Projects
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 blockchains 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:
1. Implementation of Parallel Execution
Optimistic Execution Method: Subsequent transactions are executed before earlier transactions in the block are completed, which sometimes leads to incorrect execution results. To solve this problem, Monad tracks the input used in the transaction execution and compares it with the output of the previous transaction. If a difference is found, it indicates that the transaction needs to be re-executed.
Static code analysis: Monad uses a static code analyzer 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 will fall back to a simple execution mode.
2. Monadbft consensus mechanism
Efficient communication: Paired BLS signatures are used to solve scalability issues, allowing signatures to be gradually aggregated into one signature, proving 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.
3. Delayed execution
Greater fault tolerance: Since execution only needs to keep up with the speed of consensus, this approach is more tolerant to changes 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, using a 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 accumulated 283,000 followers on Twitter, leading 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, and Placeholder Capital, Lemniscap, Shima Capital, Finality Capital, angel investors Naval Ravikant, Cobie and Hasu participated in the investment.
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. Monad's co-founder and CEO Keone Hon 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 Monad's co-founder and COO, and has extensive experience in traditional financial technology. Eunice has worked at Shutterstock in payments and infrastructure licensing, and has led development teams to build enterprise trading systems at Broadway Technology
3.2 SEI Network: L1 with parallel EVM, V2 version puts parallel EVM on the agenda
SEI Network is a layer 1 blockchain dedicated to decentralized finance (DeFi) infrastructure, focusing primarily 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 a variety of 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: By providing all relevant transaction hash values, transaction processing time is accelerated, and latency is reduced and throughput is increased.
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 Auction (FBA): Combine transactions into batches and execute orders simultaneously within each block to prevent running orders and MEV.
SEI Network has currently issued its own native token SEI. In the Sei Network ecosystem, SEI coins play a variety of 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 held as an ecosystem reserve to reward stakers and contributors, validators, and developers. Another 3% (or 300 million SEI) is designated for airdrop season 1, and the remainder is allocated to private placement investors, the foundation, and the Sei team.
As of May 30, the price of SEI tokens was $0.5049, with a market value of $1,476,952,630, ranking 63rd in the cryptocurrency rankings. The 24-hour trading volume was $78,970,605, with high market participation.
SEI Network currently has a TVL of 18 million, a total of approximately $55 million in financing, a FDV of $8.2 billion, and an official Twitter account with 666,000 followers.
SEI Network's co-founder Jeff Feng graduated from the University of California, Berkeley. Before entering 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 to 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 to Ethereum combines multiple technologies such as Ethereum's settlement, Solana Virtual Machine (SVM) execution, Celestia's data availability, and RISC Zero's 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.
Main features of Eclipse
1. High transaction throughput:
Eclipse uses SVM and parallel execution technology to achieve extremely high transaction processing capabilities and support tens of thousands of transactions to be processed simultaneously.
2. Instant finality:
Through the pipeline consensus mechanism, the instant completion and finality of transactions within each block are achieved.
3. Ethereum compatibility:
Eclipse is fully compatible with the Ethereum Virtual Machine (EVM), allowing developers to easily port existing Ethereum applications to Eclipse.
4. Data availability:
Use the data availability solution provided by Celestia to ensure high throughput while ensuring data security and verifiability.
5. Zero-knowledge proof:
Use RISC Zero technology to achieve 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.
1. Parallel execution:
Technical principle: Eclipse uses the Sealevel runtime of SVM, which allows transactions in non-overlapping states to be executed in parallel instead of sequentially.
Implementation: By explicitly describing all states that each transaction will read or write during execution, SVM can process transactions that do not involve overlapping states in parallel, significantly improving throughput.
2. 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.
3. 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.
In simple terms, 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 $50 million Series A financing, led by Placeholder and Hack VC, and its total financing has reached $65 million.
Eclipse co-founder & CEO Neel Somani previously worked at Airbnb, Two Sigma, Oasis Labs and other companies, and Chief Business Officer Vijay was the former business development director of Uniswap and dYdX teams.
4. Challenges
1. Data race and read-write conflicts:
In a parallel processing environment, different threads reading and modifying the same data at the same time will lead to data race and read-write conflicts. This situation requires complex technical solutions to ensure data consistency and conflict-free execution of operations.
2. Technical compatibility:
New parallel processing methods need to be compatible with existing Ethereum Virtual Machine (EVM) standards and smart contract codes. This compatibility requires developers to learn and use new tools and methods to fully utilize the advantages of parallel EVM.
3. Ecosystem adaptability:
Users and developers need to adapt to the new interaction patterns and performance characteristics brought by parallel processing, which requires participants in the entire ecosystem to have sufficient understanding and adaptability to new technologies.
4. Increased system complexity:
Parallel EVM requires 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.
5. Security:
Security vulnerabilities in a parallel execution environment may be magnified because a security issue may affect multiple transactions executed simultaneously. Therefore, more rigorous security auditing and testing processes are required to ensure the security of the system.
5. Future Outlook
1.Improve the scalability and efficiency of blockchain:
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.
2.Promote the popularization and development of blockchain technology:
Despite the technical challenges, parallel EVM has great potential to significantly enhance the performance and user experience of blockchain. Successful implementation and widespread adoption will promote the popularity and development of blockchain technology.
3. 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 more secure execution environment. These innovations will further enhance the performance and reliability of Parallel EVM.
4. Support for 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), games, and supply chain management.
Reference:
https://www.coinlive.com/news/comprehensive-interpretation-of-parallel-evm-project-overview-and-future-prospects
https://medium.com/@alibertaysolak/what-is-parallel-evm-70451db5f327