首页> 外文期刊>Operating systems review >A Lock-Free, Concurrent, and Incremental Stack Scanning Mechanism for Garbage Collectors
【24h】

A Lock-Free, Concurrent, and Incremental Stack Scanning Mechanism for Garbage Collectors

机译:垃圾收集器的无锁,并发和增量堆栈扫描机制

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

摘要

Two major efficiency parameters for garbage collectors are the throughput overheads and the pause times that they introduce. Highly responsive systems need to use collectors with as short as possible pause times. Pause times have decreased significantly over the years, especially through the use of concurrent garbage collectors. For modern concurrent collectors, the longest pause is typically created by the need to atomically scan the runtime stack. All practical concurrent collectors that we are aware of must obtain a snapshot of the pointers on each thread's runtime stack, in order to reclaim objects correctly. To further reduce the duration of the collector pauses, incremental stack scans were proposed. However, previous such methods employ locks to stop the muta-tor from accessing a stack frame while it is being scanned. Thus, these methods introduce potentially long and unpredictable pauses for a mutator thread. In this work we propose the first concurrent, incremental, and lock-free stack scanning mechanism for garbage collectors, that allows high responsiveness and support for programs that employ fine-grain synchronization to avoid locks. Our solution can be employed by all concurrent collectors that we are aware of, it is lock-free, it imposes a negligible overhead on the program execution, and it supports intra-stack references as found in languages like C#.
机译:垃圾收集器的两个主要效率参数是吞吐量开销和它们引入的暂停时间。高响应系统需要使用具有尽可能短暂停时间的收集器。多年来,暂停时间已大大减少,尤其是通过使用并发的垃圾收集器。对于现代并发收集器,最长的暂停通常是由于需要自动扫描运行时堆栈而造成的。我们知道的所有实用的并发收集器都必须获取每个线程的运行时堆栈上的指针的快照,以便正确回收对象。为了进一步减少收集器暂停的持续时间,提出了增量堆栈扫描。但是,先前的这种方法使用锁来阻止诱变器在对其进行扫描时访问其堆栈框架。因此,这些方法为mutator线程引入了潜在的较长且不可预测的暂停。在这项工作中,我们为垃圾收集器提出了第一个并发,增量和无锁的堆栈扫描机制,该机制可提高响应速度,并支持采用细粒度同步以避免锁定的程序。我们的解决方案可以被我们所知道的所有并发收集器采用,它是无锁的,它对程序执行的影响可忽略不计,并且支持像C#这样的语言中的栈内引用。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号