Affiliation:
1. Australian National University, Canberra, Australia
2. Purdue University, West Lafayette, IN, USA
Abstract
Read and write barriers mediate access to the heap allowing the collector to control and monitor mutator actions. For this reason, barriers are a powerful tool in the design of any heap management algorithm, but the prevailing wisdom is that they impose significant costs. However, changes in hardware and workloads make these costs a moving target. Here, we measure the cost of a range of useful barriers on a range of modern hardware and workloads. We confirm some old results and overturn others. We evaluate the microarchitectural sensitivity of barrier performance and the differences among benchmark suites. We also consider barriers in context, focusing on their behavior when used in combination, and investigate a known pathology and evaluate solutions. Our results show that read and write barriers have average overheads as low as 5.4% and 0.9% respectively. We find that barrier overheads are more exposed on the workload provided by the modern DaCapo benchmarks than on old SPECjvm98 benchmarks. Moreover, there are differences in barrier behavior between in-order and out-of- order machines, and their respective memory subsystems, which indicate different barrier choices for different platforms. These changing costs mean that algorithm designers need to reconsider their design choices and the nature of their resulting algorithms in order to exploit the opportunities presented by modern hardware.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
13 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. BestGC: An Automatic GC Selector;IEEE Access;2023
2. Low-latency, high-throughput garbage collection;Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation;2022-06-09
3. Distilling the Real Cost of Production Garbage Collectors;2022 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS);2022-05
4. Supporting Legacy Libraries on Non-Volatile Memory: A User-Transparent Approach;2021 ACM/IEEE 48th Annual International Symposium on Computer Architecture (ISCA);2021-06
5. Emulating and Evaluating Hybrid Memory for Managed Languages on NUMA Hardware;2019 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS);2019-03