search
Homeweb3.0Monad Getting Started Guide: Quickly Understand Parallel EVM and Performance Improvement

Transaction scalability has always been a hot topic. Over the past few weeks, we’ve been exploring how monads can help scale TPS.

The following is a detailed explanation of how Monads work, written by Saurabh Deshpande.

Detailed explanation of how Monad works

TPS is an indicator that we are very concerned about. We want our chains to be able to support higher TPS because they can support more users and applications. The chart below shows the TPS numbers for Ethereum and L2. No chain has ever breached the 100 TPS mark. Note that TPS is a general term used to measure scale. TPS is inaccurate because not all transactions are the same, they vary in complexity. But for simplicity, we use TPS as a measure of scale.

Monad Getting Started Guide: Quickly Understand Parallel EVM and Performance Improvement

What should we do if we want to increase TPS?

  • The first approach is to build a completely new system, like Solana did. It sacrifices EVM compatibility compared to speed. It uses multi-threaded execution instead of single-threaded execution (think multi-core CPU vs single-core CPU), parallelizes transactions and uses a different consensus mechanism.

  • The second approach is to use off-chain execution and scale Ethereum with a centralized sequencer.

  • The third approach is to decompose the EVM into separate components and optimize them for scalability.

Monad is a new EVM-compatible L1 that recently raised $225 million that is building EVM from the ground up, rather than using it directly. It chose this third approach to increase scalability.

We discussed several major changes brought by Monads.

Parallel execution

The Ethereum Virtual Machine (EVM) executes transactions sequentially. Before one transaction is executed, the next transaction must wait. Think of it this way. Consider a platform in a motorcycle assembly shop. Multiple trucks deliver motorcycle parts (each truck has all the parts needed to assemble 50 motorcycles). The assembly shop performs four different functions: unloading, sorting, assembly and loading.

Monad Getting Started Guide: Quickly Understand Parallel EVM and Performance Improvement

In the current EVM setup, there is only one platform, and the same location is used for loading and unloading. So while the truck is parked, motorcycle parts are unloaded, sorted, assembled and loaded on the same truck. While the classification team is working, other teams are waiting. Therefore, if you think of their work as separate slots, each team only works once in four slots. This results in significant inefficiencies, highlighting the need for a more streamlined approach.

Now, imagine a platform with four different loading and unloading areas. Even if the unloading team can only work with one truck at a time, they don't need to wait for the next three slots. They can be transferred directly to the next truck.

The same goes for the sorting, assembly and loading teams. Once unloading is complete, the truck moves to the loading bay to wait for the loading team to load the assembled motorcycles. Therefore, a warehouse with only one platform and load/unload areas performs all operations sequentially, while a warehouse with 4 platforms and different load/unload areas performs parallelization.

Monad Getting Started Guide: Quickly Understand Parallel EVM and Performance Improvement

Think of Monads as infrastructure, equivalent to a warehouse with multiple truck platforms. But it's not simple. The complexity increases when trucks are relied upon. For example, what happens if one truck doesn't have all the parts to assemble 50 motorcycles? Transactions may not always be independent. Therefore, the Monad must handle transactions that depend on each other when it executes them in parallel.

How to deal with it? It implements a method called optimistic parallel execution. The protocol can only execute independent transactions in parallel. For example, consider 4 transactions where Joel's balance is 1 ETH:

  • Joel sends 0.2 Ether to Saurabh

  • Sid Minting An NFT

  • Joel sends 0.1 ether to Sid

  • Shlok Purchase PEPE

All These transactions are executed in parallel, and pending results are submitted one by one. If the output of the pending result conflicts with the original input of any transaction, the transaction is re-executed. Transactions 2 and 4 have no pending results that conflict with inputs from other transactions because they are independent of each other. But transactions 1 and 4 are not independent.

Please note that since all 4 transactions start from the same state, the focus is on Joel's balance of 1 ETH. After Joel sent 0.2 ETH, the balance was 0.8 ETH. After Joel sends 0.1 ETH to Sid, his balance is 0.9 ETH. The results are submitted one by one, ensuring that the output does not conflict with any input. After submitting the pending result of 1, Joel's new balance is 0.8 ETH.

This output conflicts with the input of the 3rd transaction. So now 3 is re-executed with an input of 0.8 ETH. After executing 3, Joel's balance is 0.7 ETH.

MonadDb

Monad Getting Started Guide: Quickly Understand Parallel EVM and Performance Improvement

At this point, the obvious question is how do we know that we don't have to re-execute most of the transactions. The answer is that re-execution is not the bottleneck. The bottleneck is accessing Ethereum’s memory. It turns out that the way Ethereum stores state in a database makes accessing state difficult (time consuming and therefore expensive). This is another improvement of Monad: MonadDb. The way Monads structure databases reduces the overhead associated with read operations.

When the transaction must be re-executed, all inputs are already in cache memory, which is easier to access than the overall state.

Solana had 50k TPS on its testnet, but now only has about 1k TPS on the mainnet. Monad claims to have achieved 10k real-world TPS on its internal testnet. While this doesn't always represent real-world performance, we can't wait to see how Monad performs in real-world applications.

The above is the detailed content of Monad Getting Started Guide: Quickly Understand Parallel EVM and Performance Improvement. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:脚本之家. If there is any infringement, please contact admin@php.cn delete
Tether CEO Paolo Ardoino Completes Visit to the United States, Meeting with Lawmakers in Washington, D.C. to Discuss Stablecoin RegulationTether CEO Paolo Ardoino Completes Visit to the United States, Meeting with Lawmakers in Washington, D.C. to Discuss Stablecoin RegulationApr 15, 2025 am 11:24 AM

His visit comes as the U.S. Congress moves closer to introducing legislation regulating stablecoins, which Ardoino believes is necessary for financial inclusion and preserving U.S. dollar dominance.

Why XRP Price May Not 'Go Parabolic' Post-SEC SettlementWhy XRP Price May Not 'Go Parabolic' Post-SEC SettlementApr 15, 2025 am 11:22 AM

The XRP price holds still in the $2.10-2.20 range for the past few days, but this is not stopping Ripple's community from continuing to post various content about XRP

Metaplanet Expands Its Bitcoin Treasury Holdings by Another 319 BTCMetaplanet Expands Its Bitcoin Treasury Holdings by Another 319 BTCApr 15, 2025 am 11:20 AM

In an announcement made earlier today, Japanese firm Metaplanet revealed it has acquired another 319 Bitcoin (BTC), pushing its total corporate holdings beyond 4,500 BTC.

Metaplanet Scoops Another 319 Bitcoin, Pushing Its Total Corporate Holdings Beyond 4500Metaplanet Scoops Another 319 Bitcoin, Pushing Its Total Corporate Holdings Beyond 4500Apr 15, 2025 am 11:18 AM

In an announcement made earlier today, Japanese firm Metaplanet revealed it has acquired another 319 Bitcoin (BTC), pushing its total corporate holdings beyond 4,500 BTC.

Ripple (XRP) price rallied through a weekend riseRipple (XRP) price rallied through a weekend riseApr 15, 2025 am 11:16 AM

Ripple (XRP) price rallied through a weekend rise from its $2.00 critical support mark to reach $2.23.

Bitcoin (BTC) drifts upwards as the broader market adjusts favorably to trade-related newsBitcoin (BTC) drifts upwards as the broader market adjusts favorably to trade-related newsApr 15, 2025 am 11:14 AM

The largest cryptocurrency was up 1.6% in the last 24 hours and is now trading just shy of $85,000. Ether (ETH), meanwhile, rose 2.7%

Is ADA the Sleeper Pick for the Next Bull Run? Hoskinson's $250K BTC Forecast Says YesIs ADA the Sleeper Pick for the Next Bull Run? Hoskinson's $250K BTC Forecast Says YesApr 15, 2025 am 11:12 AM

ADA has risen by 1.5% in the past 24 hours, with its move to $0.644 coming as the crypto market suffers a 2% loss today.

Solana Leads Market Recovery After Brief Dip Below $100Solana Leads Market Recovery After Brief Dip Below $100Apr 15, 2025 am 11:10 AM

Jimmy has nearly 10 years of experience as a journalist and writer in the blockchain industry. He has worked with well-known publications such as Bitcoin Magazine, CCN, and Blockonomi, covering news...

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version