Back to Search Start Over

Heap Size Adjustment with CPU Control

Authors :
Tavakolisomeh, Sanaz
Shimchenko, Marina
Osterlund, Erik
Bruno, Rodrigo
Ferreira, Paulo
Wrigstad, Tobias
Tavakolisomeh, Sanaz
Shimchenko, Marina
Osterlund, Erik
Bruno, Rodrigo
Ferreira, Paulo
Wrigstad, Tobias
Publication Year :
2023

Abstract

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.

Details

Database :
OAIster
Notes :
application/pdf, English
Publication Type :
Electronic Resource
Accession number :
edsoai.on1422607472
Document Type :
Electronic Resource
Full Text :
https://doi.org/10.1145.3617651.3622988