Block-STM
Rati Gelashvili, Alexander Spiegelman, Zhuolun Xiang, George Danezis, Zekun Li, Dahlia Malkhi, Yu Xia, Runtian Zhou
Abstract
Block-STM is a parallel execution engine for smart contracts, built around the principles of Software Transactional Memory. Transactions are grouped in blocks, and every execution of the block must yield the same deterministic outcome. Block-STM further enforces that the outcome is consistent with executing transactions according to a preset order, leveraging this order to dynamically detect dependencies and avoid conflicts during speculative transaction execution. At the core of Block-STM is a novel, low-overhead collaborative scheduler of execution and validation tasks.
Topics & Concepts
Computer scienceSoftware transactional memoryBlock (permutation group theory)Transactional memoryDatabase transactionOverhead (engineering)Transaction processingSoftwareTransactional leadershipParallel computingOperating systemDistributed computingDatabaseGeometrySocial psychologyMathematicsPsychologyDistributed systems and fault toleranceBlockchain Technology Applications and SecurityCloud Computing and Resource Management