  One of the main bottlenecks of blockchains is smart contract execution. To
increase throughput, modern blockchains try to execute transactions in
parallel. Unfortunately, however, common blockchain use cases introduce
read-write conflicts between transactions, forcing sequentiality.
  We propose RapidLane, an extension for parallel execution engines that allows
the engine to capture computations in conflicting parts of transactions and
defer their execution until a later time, sometimes optimistically predicting
execution results. This technique, coupled with support for a new construct for
smart contract languages, allows one to turn certain sequential workloads into
parallelizable ones.
  We integrated RapidLane into Block-STM, a state-of-the-art parallel execution
engine used by several blockchains in production, and deployed it on the Aptos
blockchain. Our evaluation shows that on commonly contended workloads, such as
peer-to-peer transfers with a single fee payer and NFT minting, RapidLane
yields up to $12\times$ more throughput.
