UCL Discovery
UCL home » Library Services » Electronic resources » UCL Discovery

Block-STM Scaling Blockchain Execution by Turning Ordering Curse to a Performance Blessing

Gelashvili, R; Spiegelman, A; Xiang, Z; Danezis, G; Li, Z; Malkhi, D; Xia, Y; (2023) Block-STM Scaling Blockchain Execution by Turning Ordering Curse to a Performance Blessing. In: Proceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP. (pp. pp. 232-244). ACM: Montreal, QC, Canada. Green open access

[thumbnail of 2203.06871v3.pdf]
Preview
Text
2203.06871v3.pdf - Accepted Version

Download (813kB) | Preview

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. Block-STM is implemented on the main branch of the Diem Blockchain code-base and runs in production at Aptos. Our evaluation demonstrates that Block-STM is adaptive to workloads with different conflict rates and utilizes the inherent parallelism therein. Block-STM achieves up to 110k tps in the Diem benchmarks and up to 170k tps in the Aptos Benchmarks, which is a 20x and 17x improvement over the sequential baseline with 32 threads, respectively. The throughput on a contended workload is up to 50k tps and 80k tps in Diem and Aptos benchmarks, respectively.

Type: Proceedings paper
Title: Block-STM Scaling Blockchain Execution by Turning Ordering Curse to a Performance Blessing
Event: 28th ACM SIGPLAN Annual Symposium on Principles and Practice of Parallel Programming
ISBN-13: 9798400700156
Open access status: An open access version is available from UCL Discovery
DOI: 10.1145/3572848.3577524
Publisher version: https://doi.org/10.1145/3572848.3577524
Language: English
Additional information: This version is the author accepted manuscript. For information on re-use, please refer to the publisher’s terms and conditions.
UCL classification: UCL
UCL > Provost and Vice Provost Offices > UCL BEAMS
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science
URI: https://discovery.ucl.ac.uk/id/eprint/10169042
Downloads since deposit
Loading...
16Downloads
Download activity - last month
Loading...
Download activity - last 12 months
Loading...
Downloads by country - last 12 months
Loading...

Archive Staff Only

View Item View Item