Stay vigilant against phishing attacks. Chorus One sends emails exclusively to contacts who have subscribed. If you are in doubt, please don’t hesitate to reach out through our official communication channels.

Blog

Deep-Dive: How Monad Revolutionizes EVM Transaction Processing

Chorus One
Chorus One
September 27, 2024
5 min read
September 27, 2024
5 min read

Blockchain technology, particularly EVM-compatible blockchains, has radically transformed how we think about trust, value transfer, and decentralized applications (dApps). Ethereum, the frontrunner in this space, has been the playground for developers and innovators to build decentralized finance (DeFi), digital art (NFTs), and beyond. However, despite its revolutionary potential, Ethereum faces a fundamental challenge: transaction inefficiency.

Ethereum processes roughly 15-30 transactions per second (TPS). In contrast, payment networks like Visa handle over 1,700 TPS on average. This gap is not because Ethereum lacks innovation but because the very architecture that enables decentralization also imposes bottlenecks. As the world looks to blockchain for global-scale solutions, Ethereum’s single-threaded execution model, coupled consensus and execution, and storage inefficiencies mean that it struggles to meet the needs of millions of users. This inefficiency creates high fees, slow finality, and a system that often feels impractical for mainstream adoption.

So how do we build a blockchain that scales to millions while still retaining the core ethos of decentralization and trustlessness?

Enter Monad—a Layer 1 blockchain designed not to replace Ethereum but to optimize the very way EVM-compatible blockchains process transactions. Monad offers a paradigm shift, introducing radical but well-reasoned changes that solve the very inefficiencies that have stifled blockchain scalability.

The Solution: A new approach to transaction processing

Monad isn’t trying to reinvent the wheel. It embraces the Ethereum Virtual Machine (EVM) and maintains compatibility with Ethereum’s rich ecosystem. But it takes a surgical approach to fixing Ethereum’s inefficiencies by optimizing the processes that slow it down.

At its core, Monad offers a solution by decoupling execution from consensus. Unlike Ethereum, where every validator must execute transactions in real-time to reach consensus, Monad rethinks the process. In Monad’s world, the network first agrees on the order of transactions and then proceeds to execute them independently. This seemingly simple separation is the key to unlocking a blockchain that can scale to 10,000 TPS with 1-second finality.

Monad prioritizes two things above all: decentralization and efficiency. Instead of sacrificing one for the other, Monad’s approach ensures that transaction throughput increases without compromising the trustless, decentralized nature of the network.

Now, let’s delve into the optimizations that make this vision a reality.

The key optimizations: How Monad breaks the bottlenecks

1. MonadBFT

Ethereum’s Proof-of-Stake (PoS) mechanism intertwines transaction validation and execution. But Monad takes inspiration from HotStuff to create MonadBFT, a consensus protocol that eliminates the need for execution during consensus.

By doing so, MonadBFT focuses solely on reaching agreement on transaction ordering. It achieves 1-second block times with single-slot finality, compared to Ethereum’s multi-minute finality, by reducing communication rounds and allowing consensus to happen faster. This streamlined approach lets validators come to agreement on a block’s content, even before they execute it.

2. Deferred Execution

In Ethereum, consensus and execution are linked in a way that forces validators to both agree on and execute transactions within the same block window, which can be inefficient. Deferred Execution in Monad separates the two, enabling the network to reach consensus first, and allowing transaction execution to take place afterward, in parallel.

What does this mean in practice? Instead of validators being forced to immediately execute transactions as they propose blocks, they can delay execution. The transactions are committed in the agreed order, but the execution happens alongside consensus for the next block. This approach vastly improves throughput by allowing the network to optimize execution time across multiple blocks.

3. Parallel execution and Superscalar pipelining

Monad implements optimistic parallel execution, where transactions are processed in parallel across multiple cores but committed in their original order, maintaining the same deterministic outcomes as Ethereum. While this boosts throughput, it can lead to state conflicts when transactions depend on each other. In such cases, Monad re-executes conflicting transactions to ensure correctness.

To further enhance efficiency, Monad introduces superscalar pipelining. This technique divides the transaction processing into multiple stages (e.g., signature verification, state access) and processes these stages in parallel, similar to how modern CPUs work. By overlapping different stages of transaction execution, Monad maximizes resource utilization, reducing delays and increasing throughput, all while preserving the linear ordering of transactions.

A simple diagram to illustrate superscalar pipelining:

A familiar example of pipelining: doing laundry intelligently. Top: naive; bottom: pipelined. Source: Monad

4. MonadDb

State storage is a lesser-known bottleneck in Ethereum. The Merkle Patricia Trie (MPT) structure that Ethereum uses is embedded into key-value databases like LevelDB, which weren’t designed for blockchain workloads. Monad solves this inefficiency by designing MonadDb, a storage solution that natively implements the Patricia Trie in both on-disk and in-memory formats.

Additionally, MonadDb uses asynchronous I/O to avoid the blocking nature of traditional storage operations. This means that even if one transaction is waiting for state to be loaded from disk, the system can continue processing other transactions, thereby optimizing overall performance.

Challenges of these optimizations

While Monad’s optimizations are powerful, they are not without challenges.

  • Parallel execution conflicts: While optimistic parallel execution boosts throughput, it can lead to state conflict when two transactions attempt to modify the same variable. Although Monad re-executes conflicting transactions, there’s a cost in terms of processing power and efficiency. Predicting dependencies and scheduling transactions intelligently is a technical challenge that Monad is continuously refining.
  • Deferred execution lag: Decoupling consensus and execution introduces a slight lag between consensus and execution, which could be problematic in use cases that require real-time results, such as high-frequency trading. Monad mitigates this with its delayed Merkle root system, but there is still a gap between knowing the order of transactions and knowing their outcome.

Despite these challenges, the benefits far outweigh the potential drawbacks. Let’s look at the results Monad’s innovations deliver.

The Results: A blockchain built for scale

Thanks to these four key optimizations, Monad aims to achieve what few blockchains can:

  • 10,000 Transactions Per Second (TPS): By decoupling consensus from execution and enabling parallel execution, Monad can handle thousands of transactions per second, a dramatic improvement over Ethereum’s 15-30 TPS.
  • 1-Second Finality: Single-slot finality means that transactions are finalized in just 1 second. There are no long waits for confirmation, making Monad ideal for time-sensitive applications.
  • Lower Transaction Costs: By increasing throughput and optimizing resource usage, Monad significantly reduces the per-transaction cost, making it affordable for users and scalable for dApps with millions of users.

The current state of Monad and what’s next

Monad is still in development, but its ambitious roadmap is clear. The project’s public testnet is expected in the near future, allowing developers to integrate it into their Ethereum-compatible wallets and applications. This will be a crucial step in proving Monad’s ability to scale without sacrificing the core values of decentralization and trustlessness.

Monad’s team is focused on ensuring that its network remains easy to use for developers familiar with Ethereum. They’ve built Monad as a drop-in replacement for Ethereum, meaning developers can port their dApps with little to no changes. As more users and developers flock to the testnet, Monad aims to further refine its consensus, execution, and storage systems, solving the scalability trilemma in a way that balances decentralization, performance, and security.

Final word

Monad offers a bold new approach to solving blockchain’s biggest bottleneck: transaction inefficiency. By decoupling execution from consensus, enabling parallel execution, and optimizing storage with MonadDb, it delivers a blockchain that can handle 10,000 TPS with 1-second finality—all without sacrificing decentralization. As Monad continues to build and refine its technology, it stands as a potential blueprint for the future of blockchain scalability, offering a glimpse of what’s possible when we think beyond the limitations of today’s networks.

--

Frequently asked Questions (source: docs.monad.xyz):

  1. In what language is the Monad client developed?

The Monad client is built with a modular software architecture, separating the tasks of consensus and execution between two software modules: the consensus client and execution client respectively. The consensus client is written in Rust which is a memory-safe language that allows for low-level optimizations. The execution client is written in C/C++, well-established and battle-tested languages for developing low-level system critical code.

  1. Why is Monad built as an L1 network?

The Monad network is a full stack solution for developers, allowing access to a highly composable ecosystem without compromising on real-time censorship resistance. While L2 solutions may offer one way to compress data stored on the base layer, the Monad blockchain is a scalable base layer for the EVM itself at its most fundamental layer. A highly-performant base layer gives application developers the best of both worlds, with a high degree of composability and real-time censorship resistance in the name of scalability.

  1. Is Monad truly 100% EVM-compatible without code changes?

Yes! The Monad blockchain is 100% EVM compatible at the bytecode level - meaning contracts from ETH mainnet, or other fully EVM compatible networks will work out-of-the-box without requiring any code changes.

About Chorus One

Chorus One is one of the biggest institutional staking providers globally, operating infrastructure for 60+ Proof-of-Stake networks, including Ethereum, Cosmos, Solana, Avalanche, and Near, amongst others. Since 2018, we have been at the forefront of the PoS industry and now offer easy enterprise-grade staking solutions, industry-leading research, and also invest in some of the most cutting-edge protocols through Chorus Ventures. We are a team of over 50 passionate individuals spread throughout the globe who believe in the transformative power of blockchain technology.