Open this publication in new window or tab >>Show others...
2023 (English)In: PROCEEDINGS OF THE 20TH ACM SIGPLAN INTERNATIONAL CONFERENCE ON MANAGED PROGRAMMING LANGUAGES AND RUNTIMES, MPLR 2023 / [ed] Moss, E Bruno, R, ASSOC COMPUTING MACHINERY , 2023, p. 114-128Conference paper, Published paper (Refereed)
Abstract [en]
This paper explores automatic heap sizing where developers let the frequency of GC expressed as a target overhead of the application's CPU utilisation, control the size of the heap, as opposed to the other way around. Given enough headroom and spare CPU, a concurrent garbage collector should be able to keep up with the application's allocation rate, and neither the frequency nor duration of GC should impact throughput and latency. Because of the inverse relationship between time spent performing garbage collection and the minimal size of the heap, this enables trading memory for computation and conversely, neutral to an application's performance. We describe our proposal for automatically adjusting the size of a program's heap based on the CPU overhead of GC. We show how our idea can be relatively easily integrated into ZGC, a concurrent collector in OpenJDK, and study the impact of our approach on memory requirements, throughput, latency, and energy.
Place, publisher, year, edition, pages
ASSOC COMPUTING MACHINERY, 2023
Keywords
JVM, Garbage Collection, Heap sizing policy
National Category
Computer Sciences
Identifiers
urn:nbn:se:uu:diva-523058 (URN)10.1145/3617651.3622988 (DOI)001142913500011 ()979-8-4007-0380-5 (ISBN)
Conference
20th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes (MPLR), OCT 22, 2023, Cascais, PORTUGAL
2024-02-162024-02-162024-05-06Bibliographically approved