Smart contract execution is sequential. Ethereum, Solana, and most L1s process transactions one at a time within a block, creating a deterministic but slow global state machine.
Smart Contract Execution Is Not Parallel
A technical breakdown of the EVM's sequential processing bottleneck, its impact on scalability, and how danksharding and proto-danksharding (EIP-4844) are the foundational steps toward a truly parallelized future.
Introduction
Blockchain's single-threaded execution model is the fundamental constraint on scalability.
Parallelism is the proven scaling path. Modern computing uses multi-core CPUs and GPUs; blockchains like Aptos and Sui implement this with parallel virtual machines (MoveVM) and conflict-free execution.
The bottleneck is state access. A transaction modifying a popular NFT contract (e.g., Bored Ape Yacht Club) blocks all others needing that state, unlike independent Uniswap swaps which could run in parallel.
Evidence: Solana's Sealevel runtime demonstrates the potential, claiming 50k-65k TPS for simple payments by executing non-conflicting transactions simultaneously.
Executive Summary
Blockchain's core architectural flaw is deterministic, sequential execution, which caps throughput and inflates costs for all users.
The Problem: The Global Singleton
Ethereum, Solana, and most L1s process transactions one-by-one on a single thread. This creates a zero-sum game for block space, where a single popular NFT mint or DeFi interaction can congest the entire network for everyone.
- Consequence: Fees spike unpredictably during demand.
- Consequence: Throughput is hard-capped, limiting dApp complexity.
The Solution: Parallel Execution Engines
Protocols like Sui and Aptos introduced a paradigm shift: process independent transactions simultaneously. This is achieved through software transactional memory (STM) or explicit state access declarations.
- Mechanism: Analyze transaction dependencies at runtime.
- Result: Non-conflicting trades, transfers, and swaps execute in parallel, not in line.
The EVM Frontier: BlockSTM & Solana
The innovation is now reaching the EVM ecosystem. Monad is implementing parallel execution with a custom EVM, while Sei and Neon EVM bring parallelism to Solana and Ethereum L2s, respectively.
- Key Insight: Parallelism requires re-architecting the state access layer.
- Ecosystem Impact: Unlocks high-frequency DeFi and real-time gaming previously impossible on-chain.
The Trade-off: Complexity & Composability
Parallel execution isn't free. It introduces new challenges for atomic composability—the seamless interaction of multiple contracts in one transaction—and increases validator hardware requirements.
- Challenge: Complex, interdependent DeFi transactions may see limited gains.
- Verification: Proving correctness of parallel execution is harder, a challenge addressed by zk-proofs.
Thesis: Sequential Execution Is a Feature, Not a Bug
Ethereum's deterministic, sequential state machine is the foundation of its security and composability, not a performance flaw to be engineered away.
Sequential execution guarantees determinism. Parallel execution introduces non-determinism from race conditions and scheduling, breaking the core guarantee that a transaction's outcome is identical for every node. This is why Sui and Aptos require complex Byzantine Fault Tolerant consensus to manage parallel execution's inherent unpredictability.
Composability requires shared state. The Ethereum Virtual Machine (EVM)'s global, linearized state is what allows DeFi protocols like Uniswap and Aave to atomically compose. Parallel execution fragments this state, forcing developers to reason about concurrency control and data dependencies, which adds complexity and risk.
The bottleneck is state access, not CPU. Most blockchain workloads are I/O-bound, waiting for Merkle proof verification and storage reads. Parallelizing execution without solving state access, as seen in early Solana congestion, just creates different bottlenecks. The real scaling path is via EIP-2930 access lists and state expiry.
Evidence: Ethereum's L2 rollups, like Arbitrum and Optimism, preserve sequential execution within their virtual machines. They scale by moving computation off-chain and posting compressed proofs to L1, proving that sequencing is the security primitive, not the performance limit.
The Scalability Bottleneck in Practice
Sequential transaction processing creates a hard physical limit on blockchain throughput, independent of consensus speed.
Sequential execution is the bottleneck. A blockchain's consensus mechanism can finalize blocks in milliseconds, but a single-threaded EVM must process transactions one after another. This creates a hard physical limit on throughput, regardless of network speed.
Parallel execution is the proven solution. Modern processors use multiple cores; blockchains like Solana (Sealevel) and Sui (Move) do the same. They analyze transaction dependencies to execute non-conflicting operations simultaneously, achieving order-of-magnitude gains.
The EVM is the legacy system. Its global state and sequential design are incompatible with parallelization. Layer 2s like Arbitrum Stylus and Monad are building new VMs to bypass this, treating the EVM as a compatibility layer, not a performance engine.
Evidence: Solana's architecture targets 100k+ TPS by default, while a saturated Ethereum L1 executes ~15 TPS. The gap is not consensus; it's the execution model.
Execution Model Comparison: Sequential vs. Parallel
A comparison of how different execution models handle transaction processing, directly impacting throughput, latency, and developer complexity.
| Feature / Metric | Sequential (EVM) | Parallel (Sui, Aptos) | Parallel w/ Conflict (Solana) |
|---|---|---|---|
State Access Model | Single Global State | Independent Objects | Dynamic Dependencies |
Concurrency Guarantee | Strict Serializability | Causal Consistency | Optimistic Concurrency |
Max Theoretical TPS (Peak) | ~15 (Ethereum) |
| ~65,000 (Solana) |
Developer Complexity | Low (Implicit) | High (Explicit Ownership) | Medium (Runtime Detection) |
Cross-Tx Dependency Cost | 0 (Inherent) | 0 (Independent Objects) | High (Abort & Re-execute) |
Dominant Bottleneck | Block Gas Limit | CPU Cores / Network | Memory Bandwidth |
Typical Finality Time | 12-15 sec (L1) | < 1 sec | ~400 ms |
Example Protocols | Ethereum, Avalanche C-Chain | Sui, Aptos | Solana, Sei |
The Path to Parallelism: Danksharding and Beyond
Ethereum's single-threaded EVM is the fundamental constraint on throughput, and scaling requires a paradigm shift beyond just data availability.
Smart contract execution is serial. The EVM processes transactions sequentially to guarantee deterministic state transitions, creating a hard throughput ceiling.
Rollups inherit this bottleneck. Arbitrum and Optimism scale data posting, but their execution layers remain single-threaded, capping their TPS gains.
Parallel execution requires new VMs. Solana's Sealevel and Aptos' Block-STM demonstrate the performance gains, but Ethereum's path is through new execution layers like Monad.
Danksharding solves data, not execution. Proto-danksharding (EIP-4844) provides cheap blob space for rollups but does not make the EVM itself faster.
The endgame is modular separation. A dedicated execution layer, like EigenLayer's EigenDA for data and a parallelized EVM for compute, is the logical conclusion.
How Builders Are Navigating the Sequential Present
Ethereum's single-threaded EVM creates a fundamental bottleneck, forcing builders to innovate beyond the core protocol to scale throughput and reduce costs.
The Problem: Sequential Execution Bottleneck
The EVM processes transactions one at a time, creating a global state contention that caps throughput and inflates fees during congestion. This is the root cause of high gas costs and network instability.
- Throughput Ceiling: EVM caps at ~15-45 TPS, a fraction of traditional finance.
- State Contention: Every transaction must wait for the previous one to update the shared global state.
- Fee Volatility: Gas auctions during peak demand can increase costs by 10-100x.
The Solution: Parallel Virtual Machines
New execution environments like Solana's Sealevel, Aptos' Block-STM, and Sui's Move process independent transactions simultaneously. They use software transactional memory (STM) to detect and resolve conflicts, unlocking massive scalability.
- Conflict Detection: STM allows parallel execution, only serializing transactions that touch the same state.
- Hardware Utilization: Fully utilizes multi-core servers, pushing throughput to 10,000+ TPS.
- Developer Shift: Requires adopting new programming models (e.g., Move's resource-oriented paradigm).
The Workaround: App-Specific Rollups & Sidechains
Builders sidestep the mainnet bottleneck by deploying sovereign execution layers. Optimistic Rollups (Arbitrum, Optimism) and ZK-Rollups (zkSync, Starknet) batch transactions, while Polygon PoS and Avalanche Subnets offer dedicated chains.
- Execution Sharding: Each chain processes its own transactions in parallel to others.
- Cost Export: Users pay for L1 security settlement, but execution costs are 10-100x cheaper.
- Fragmentation Trade-off: Introduces liquidity and composability challenges across dozens of chains.
The Frontier: Async Execution & Intent-Based Architectures
The next evolution decouples transaction declaration from execution. Systems like Fuel Network's parallel UTXO model and UniswapX's off-chain intent settlement separate the 'what' from the 'how', allowing for complex, gas-optimized execution paths.
- Intent Paradigm: Users submit desired outcomes (e.g., 'swap X for Y'), solvers compete to fulfill them optimally.
- Async State Access: Transactions don't block each other unless accessing the same resource, enabling parallelism.
- Solver Networks: Creates a market for efficient execution, leveraging private mempools and MEV capture.
Future Outlook: A Multi-Threaded Ecosystem on a Sequential Core
Ethereum's sequential execution model is a fundamental constraint that will force the ecosystem to specialize and fragment.
Sequential execution is non-negotiable. Ethereum's state is a single, globally ordered list of changes. This guarantees determinism and composability but creates a hard throughput ceiling. Parallel virtual machines like Solana's Sealevel or Sui's Move bypass this by assuming transaction independence, which breaks Ethereum's atomic composability model.
The future is specialized execution layers. The ecosystem will fragment into purpose-built L2s and L3s. A rollup for a high-frequency DEX like dYdX will optimize for order matching, while a social app's rollup will prioritize cheap, simple state transitions. This is the only viable path to scale without altering Ethereum's core security guarantees.
Shared sequencers create coordination points. Projects like Astria and Espresso are building decentralized sequencer sets that multiple rollups can use. This creates a new coordination layer—a 'multi-threaded' ecosystem of execution environments that batch transactions to a single, sequential L1, preserving atomic cross-rollup composability where it matters most.
Evidence: The L2 landscape is already diverging. Arbitrum Nitro, Optimism Bedrock, and zkSync Era have fundamentally different VM architectures, proving systems, and data compression strategies. This specialization is the direct, necessary consequence of working around a sequential base layer.
Key Takeaways for Architects
The EVM's sequential transaction processing is a fundamental constraint on blockchain scalability and user experience.
The Problem: The Single-Threaded EVM
The Ethereum Virtual Machine (EVM) processes transactions one at a time, creating a deterministic but slow global state machine. This is the root cause of network congestion and high fees during peak demand.
- State Contention: Transactions modifying the same storage slot (e.g., a popular NFT mint, DEX pool) cannot be processed concurrently.
- Wasted Capacity: Idle compute resources while the chain processes simple, unrelated transfers.
The Solution: Parallel Execution Engines
Newer L1s and L2s implement optimistic or deterministic parallel processing to utilize multi-core hardware. They identify independent transactions and run them simultaneously.
- Optimistic Concurrency (Solana, Sui, Aptos): Execute in parallel, then validate dependencies; requires efficient conflict resolution.
- Deterministic Parallelism (Fuel, Monad): Use static analysis or a UTXO-like model to pre-determine independent transaction streams.
The Trade-off: Complexity vs. Throughput
Parallel execution introduces new architectural complexities that architects must design around. It's not a free lunch.
- State Access Lists: Transactions must declare all state they will read/write to for dependency analysis, adding overhead.
- Mempool Design: Sequencers/validators need sophisticated mempools to group independent transactions, impacting MEV.
- Developer Friction: Contracts must be written with parallelism in mind to avoid false conflicts and maximize throughput.
The EVM-Compatible Path: Layer 2 Innovations
Ethereum L2s are innovating to bring parallel execution to the EVM ecosystem without breaking compatibility, creating a hybrid future.
- Optimistic Rollups (Arbitrum Nitro): Can implement parallel execution within their sequencers before posting batches to L1.
- zkRollups & Coprocessors (zkSync, Risc Zero): Offload complex, parallelizable computations to dedicated proving systems, with results settled on-chain.
Get In Touch
today.
Our experts will offer a free quote and a 30min call to discuss your project.