paperbot · PL 论文追踪

RSS

Transactional Sapphire

TOPLAS 40(4)2018
Tomoharu Ugawa, Carl G. Ritson, Richard E. Jones

尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。

原文摘要(Abstract)

Constructing a high-performance garbage collector is hard. Constructing a fully concurrent ‘on-the-fly’ compacting collector is much more so. We describe our experience of implementing the Sapphire algorithm as the first on-the-fly, parallel, replication copying, garbage collector for the Jikes RVM Java virtual machine (JVM). In part, we explain our innovations such as copying with hardware and software transactions, on-the-fly management of Java’s reference types, and simple, yet correct, lock-free management of volatile fields in a replicating collector. We fully evaluate, for the first time, and using realistic benchmarks, Sapphire’s performance and suitability as a low latency collector. An important contribution of this work is a detailed description of our experience of building an on-the-fly copying collector for a complete JVM with some assurance that it is correct. A key aspect of this is model checking of critical components of this complicated and highly concurrent system.

链接与引用

DOI 原文 ·

BibTeX
@article{paperbot311,
  title = {Transactional Sapphire},
  author = {Tomoharu Ugawa and Carl G. Ritson and Richard E. Jones},
  journal = {ACM Transactions on Programming Languages and Systems},
  volume = {40},
  number = {4},
  year = {2018},
  doi = {10.1145/3226225}
}