首页> 外文期刊>Operating systems review >Predictive Log-Synchronization
【24h】

Predictive Log-Synchronization

机译:预测性日志同步

获取原文
获取原文并翻译 | 示例
           

摘要

This paper proposes predictive log-synchronization, an alternative paradigm to the software transactional memory approach for simplifying the design of concurrent data structures. Predictive log-synchronization simplifies concurrent programming and program verification by requiring programmers to write only specialized sequential code. This sequential code is then automatically transformed into a non-blocking concurrent program in which threads coordinate all data structure operations via a shared lock-controlled log. The non-blocking progress property is achieved by having threads that fail to acquire the lock predict the outcome of their operations by reading the log and state and computing the effect of these operations without modifying the actual data structure. Log-synchronization is founded on the belief (at this point unsubstantiated by statistical data) that in many concurrent data structures used in real-world applications, the ratio of high level operations that modify the structure to ones that simply read it, greatly favors read-only operations, and what's more, that many natural data structures have inherent sequential bottlenecks limiting the concurrency among operations that modify the structure. It follows that delegating all data structure modifications to a single lock-controlled thread at a time will not significantly harm the throughput of modifying operations. Moreover, as we show, it can boost read-only throughput by significantly reducing the overhead of coordination among concurrent operations, and provides a way to simplify concurrent data structures. Initial experimental testing using a Java-based implementation of predictive log-synchronization showed that a log-synchronized concurrent red-black tree is up to five times faster than a simple lock-based one. This paper presents our current understanding of the advantages, drawbacks, and scope of predictive log-synchronization.
机译:本文提出了预测日志同步,它是软件事务存储方法的一种替代范例,可简化并发数据结构的设计。预测日志同步通过要求程序员仅编写专门的顺序代码来简化并发编程和程序验证。然后,该顺序代码将自动转换为非阻塞并发程序,其中线程通过共享的锁控制日志来协调所有数据结构操作。非阻塞进度属性是通过使无法获取锁的线程通过读取日志和状态并计算这些操作的效果而无需修改实际数据结构来预测其操作的结果而实现的。日志同步基于以下信念:在现实世界应用程序中使用的许多并发数据结构中,将结构修改为简单读取的高级操作所占的比例(目前尚无统计数据证实)非常有利于读取而且,许多自然数据结构具有固有的顺序瓶颈,限制了修改结构的操作之间的并发性。因此,一次将所有数据结构修改委派给单个锁控制的线程不会显着损害修改操作的吞吐量。而且,如我们所示,它可以通过显着减少并发操作之间的协调开销来提高只读吞吐量,并提供一种简化并发数据结构的方法。使用基于Java的预测性日志同步实现的初步实验测试表明,与日志同步的并发红黑树的速度比基于锁的简单树快五倍。本文介绍了我们目前对预测日志同步的优点,缺点和范围的理解。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号