当前位置: X-MOL 学术arXiv.cs.PF › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
SonicChain: A Wait-free, Pseudo-Static Approach Toward Concurrency in Blockchains
arXiv - CS - Performance Pub Date : 2021-02-06 , DOI: arxiv-2102.09073
Kian Paimani

Blockchains have a two-sided reputation: they are praised for disrupting some of our institutions through innovative technology for good, yet notorious for being slow and expensive to use. In this work, we tackle this issue with concurrency, yet we aim to take a radically different approach by valuing simplicity. We embrace the simplicity through two steps: first, we formulate a simple runtime mechanism to deal with conflicts called concurrency delegation. This method is much simpler and has less overhead, particularly in scenarios where conflicting transactions are relatively rare. Moreover, to further reduce the number of conflicting transactions, we propose using static annotations attached to each transaction, provided by the programmer. These annotations are pseudo-static: they are static with respect to the lifetime of the transaction, and therefore are free to use information such as the origin and parameters of the transaction. We propose a distributor component that can use the output of this pseudo-static annotations and use them to effectively distribute transactions between threads in the least-conflicting way. We name the outcome of a system combining concurrency delegation and pseudo-static annotations as SonicChain. We evaluate SonicChain for both validation and authoring tasks against a common workload in blockchains, namely, balance transfers, and observe that it performs expectedly well while introducing very little overhead and additional complexity to the system.

中文翻译:

SonicChain:区块链并发的免等待伪静态方法

区块链有两个方面的声誉:它们因通过创新技术破坏了我们的某些机构而受到赞誉,而创新技术却因使用缓慢且昂贵而臭名昭著。在这项工作中,我们通过并发解决了这个问题,但我们的目标是通过评估简单性采取截然不同的方法。我们通过两个步骤来拥抱简单性:首先,我们制定了一种简单的运行时机制来处理称为并发委托的冲突。此方法简单得多,开销也较小,尤其是在冲突事务相对少见的情况下。此外,为了进一步减少冲突事务的数量,我们建议使用程序员提供的附加到每个事务的静态注释。这些注释是伪静态的:相对于事务生命周期而言,它们是静态的,因此可以自由使用信息,例如交易的来源和参数。我们提出了一个分发程序组件,该组件可以使用此伪静态注释的输出,并使用它们以最小冲突的方式有效地在线程之间分发事务。我们将结合了并发委派和伪静态注释的系统的结果命名为SonicChain。我们针对区块链中常见的工作量(即余额转移)评估SonicChain的验证和编写任务,并观察到它在表现出预期的良好性能的同时又给系统带来了很少的开销和额外的复杂性。我们提出了一个分发程序组件,该组件可以使用此伪静态注释的输出,并使用它们以最小冲突的方式有效地在线程之间分发事务。我们将结合了并发委派和伪静态注释的系统的结果命名为SonicChain。我们针对区块链中常见的工作量(即余额转移)评估SonicChain的验证和编写任务,并观察到它在表现出预期的良好性能的同时又给系统带来了很少的开销和额外的复杂性。我们提出了一个分发程序组件,该组件可以使用此伪静态注释的输出,并使用它们以最小冲突的方式有效地在线程之间分发事务。我们将结合了并发委派和伪静态注释的系统的结果命名为SonicChain。我们针对区块链中常见的工作量(即余额转移)评估SonicChain的验证和编写任务,并观察到它在表现出预期的良好性能的同时又给系统带来了很少的开销和额外的复杂性。
更新日期:2021-02-19
down
wechat
bug