RSS

On Parallel Execution of Smart Contracts in Blockchains

Monday, April 28, 2025
Roy Friedman (Technion)

Smart contracts are a special type of transaction designed for the execution of automated agreements on blockchains.Executing smart contracts is a compute and storage-intensive task, which currently dominates contemporary blockchain's performance.Given that computers are becoming increasingly multicore, concurrency is an attractive approach to improve programs' execution runtime, which has been adopted by several contemporary Blockchains like Solana, Aptos, Sui, Sei, and Monad.. A unique challenge of blockchains is that all replicas (miners or validators) must execute all smart contracts in the same logical order to maintain the Replicated State Machine semantics. While non-conflicting transactions can be executed in any actual order, replicas need to enforce a unique logical order among all pairs of conflicting transactions. Existing implementations rely on the Block's total ordering to resolve this requirement.Yet, in this talk I would show that doing can suffer from suboptimal parallelism, and exposes the system do a new kind of performance attack.I would also describe how relying on minimal coloring of the conflict graph corresponding to the Block's transactions can provide optimal parallelism.This is based on the combination of theoretical study, a performance evaluation using a prototype of such a mechanism, and analyzing tore than 10% of the most recent Ethereum blocks.

This talk is based on joint work with Yaron Hay, Dvir Biton, Ankit Ravish, Manaswini Piduguralla, and Sathya Peri