Lune

HPDC2023Top-tier venue

Let It Go: Relieving Garbage Collection Pain for Latency Critical Applications in Golang

Junxian Zhao, Xiaobo Zhou, Sang-Yoon Chang, Chengzhong Xu

2023Year

Abstract

Garbage Collection (GC) is a representative automatic memory manager widely deployed in popular programming languages, such as Java, C#, and Golang (Go). Through GC, these languages provide programmers with flexibility and safety. However, GC leads to non-trivial overhead in compute and memory resources during application runtime. GC threads compete with non-GC threads (mutators) of an application, which particularly impacts latency-critical (LC) applications and causes long tail latency. Existing GC approaches do not efficiently address the interference, as GC is triggered passively without a global insight of the application; or they employ incremental GC to reduce the interference, while the incremental progress is not dynamically tailored during GC process according to runtime characteristics, which leads to significant performance degradation upon bursty requests.

Ask about this paper

Ask your agent about it.

Lune has read the top-tier papers around this one, so every answer names the papers it rests on.

Questions to start from

Your agent calls

Lunesearch_papers

Ask in Lune

Free to start. No credit card required.

lune papers get 4924c787-189f-4a56-9ecf-11be9b111bf7

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines