【24h】

A study of locking objects with bimodal fields

机译:具有双峰田的锁定物体的研究

获取原文

摘要

Object locking can be efficiently implemented by bimodal use of a field reserved in an object. The field is used as a lightweight lock in one mode, while it holds a reference to a heavyweight lock in the other mode. A bimodal locking algorithm recently proposed for Java achieves the highest performance in the absence of contention, and is still fast enough when contention occurs. However, mode transitions inherent in bimodal locking have not yet been fully considered. The algorithm requires busy-wait in the transition from the light mode (inflation), and does not make the reverse transition (deflation) at all. We propose a new algorithm that allows both inflation without busy-wait and deflation, but still maintains an almost maximum level of performance in the absence of contention. We also present statistics on the synchronisation behavior of real multithreaded Java programs, which indicate that busy-wait in inflation and absence of deflation can be problematic in terms of robustness and performance. Actually, an implementation of our algorithm shows increased robustness, and achieves performance improvements of up to 13.1% in server-oriented benchmarks.
机译:通过对象中保留的字段的BimoDal使用可以有效地实现对象锁定。该字段以一种模式用作轻量级锁定,而在另一个模式下保持对重量级锁的引用。最近提出用于Java的双峰锁定算法在没有争用的情况下实现了最高的性能,并且在争用时仍然足够快。然而,尚未完全考虑双峰锁定中固有的模式转换。该算法需要在从光模式(通货膨胀)的转换中繁忙 - 等待,并且根本不会使反转过渡(通货紧缩)。我们提出了一种新的算法,可以在没有繁忙和通货紧缩的情况下允许通货膨胀,但仍然在没有争用的情况下保持几乎最大的性能水平。我们还呈现了关于真实多线程Java程序的同步行为的统计数据,这表明在稳健性和性能方面,忙碌的繁忙等待和缺乏通货紧缩可能存在问题。实际上,我们的算法的实现显示了增加的稳健性,并且在面向服务的基准测试中实现了高达13.1%的性能提高。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号