What is Parallel Execution? Parallel Execution is a solution that has emerged recently as it has partly solved the scalability problem of underlying blockchains. So what’s different about Parallel Execution? Let’s find out in the article below.
To better understand Parallel Execution, people can refer to some of the articles below:
- What is Monad? Monad Cryptocurrency Overview
- What is Aptos (APT)? Aptos Cryptocurrency Overview
- What is Solana (SOL)? Solana Cryptocurrency Overview
What is Parallel Execution?
Overview of Parallel Execution
Parallel execution in blockchain means the process of classifying independent transactions and executing multiple transactions at the same time. This helps Blockchain solve the problem of capital expansion that has been outstanding for many years but has not been completely resolved.
In old blockchains such as Bitcoin, Ethereum, etc., transactions will be processed sequentially, also known as Sequential Execution, which means that each transaction will be validated by the whole network and for each transaction that is confirmed. Only then will it be posted on the blockchain. That wastes the energy and effort of miners or validators.
Advantages of parallel execution
Parallel execution when applied to underlying blockchains will bring a number of advantages as follows:
- Ability of extension: Parallel execution allows multiple transactions on the Blockchain to be processed at the same time, increasing the scalability of the network exponentially.
- Plainness: Parallel execution retains the basic characteristics of Blockchain, transactions are processed openly and transparently.
Disadvantages of parallel execution
Besides the advantages, parallel execution also has many potential problems and disadvantages such as:
- Complication: Performing many transactions at the same time causes nodes to constantly update the latest information. Simply put, when transactions are faster, nodes also have to update exponentially faster.
- Decentralization: Parallel execution must come with a much larger number of nodes than blockchains that use Sequential Execution to keep the network decentralized.
Regarding the nature of Parallel Execution, we still need to trade off a bit of Decentralization factors to solve the problem of Scaling for Blockchains. The direction of Parallel Execution has many similarities with Sharding on Near Protocol.
Perhaps in the future, if we want a blockchain that is both fast and cheap, we will have to accept the trade-offs regarding decentralization. Even Layer 2 these days is not truly decentralized and takes a lot of time to continue to build.
Some Projects Apply Parallel Execution Mechanism
Aptos – Project built by DIEM Team
Aptos is an emerging blockchain that has raised hundreds of millions of dollars with a valuation of up to $4B in its most recent funding round. Like many other blockchain platforms, Aptos was born with the purpose of improving scalability on Ethereum. So how did Aptos do it?
Aptos uses an algorithm called Block-STM, the process of executing transactions on Aptos will take place as follows:
- Step 1: Transactions entering the pre-odered state are arranged into blocks and it is assumed that the transactions are independent and unrelated to each other.
- Step 2: Transactions will be split to be executed in parallel.
- Step 3: After execution is completed, the transaction results will be validated.
- Step 4: During the authentication process, if a transaction has a problem, it will be rejected and the result will be deleted.
- Step 5: That transaction will have to return to step 1.
The above 5 steps will be repeated until all transactions are successfully authenticated. With its Block-STM technology, Aptos expects the network speed to reach 160,000 TPS.
Sui – Aptos’ biggest rival
Similar to Aptos, Sui has also successfully called for hundreds of millions of dollars recently with the most recent valuation of $2B, but Sui also encountered more external difficulties than Aptos. Coming back to parallel execution, Sui has a different approach than Aptos.
Sui has a parallel execution approach similar to Solana. Solana divides the blockchain into many chunks, each chunk is distributed to different nodes to process transactions on that node and the node must be responsible for its chunk.
However, the similarity is that Solana will consider each unit of computer memory as an Account and when a transaction is modified by an Account, it must save information about which Account it was modified by. Meanwhile, Aptos does not require transactions to indicate this. Through what way can Sui determine dependencies between transactions?
With Sui’s change, parallel execution becomes lighter than Aptos but increases the burden on developers building projects on Sui’s ecosystem.
Monad – Blockchain built by Jump Trading’s former team
Monad is an EVM Blockchain that has successfully raised $19M from many large investment funds such as Dragonfly. The project also does not hide its use of parallel execution to solve the scaling problem and Monad will be the first BLockchain EVM to apply parallel execution.
However, the project has not clearly stated the use of parallel execution to achieve 10,000 TPS and the long-term goal of 400,000 TPS, so we still need to wait and observe more.
Linea – Layer 2 is built by Consensys
Linea is a zkRollup platform built and developed by Consensys parent company of Metamask, Infura,… invested by A16Z. Linea will also apply parallel execution based on the FastPay protocol – developed at Facebook. FastPay was born as an upgrade of the real-time payment system used between banks and financial institutions.
However, the application of FastPay to Blockchain technology is still a big question mark.
Summary
Parallel execution is one of many methods to solve the scaling problem on underlying blockchains. However, parallel execution also has many remaining disadvantages, such as the fact that Solana has applied parallel execution but still has network problems, so there are many other reasons.
So we still need to observe the development of new blockchains that apply parallel execution. Hopefully through this article everyone can understand what Parallel Execution is?