PLDI 2025
Mon 16 - Fri 20 June 2025 Seoul, South Korea

This program is tentative and subject to change.

Fri 20 Jun 2025 11:10 - 11:30 at Cosmos, Violet & Tulip - Memory Management

<p>
Large-scale, revenue-critical application services are often written in Java or other memory-safe languages whose type systems do not expose immutable state.
Such applications are especially exposed to garbage collection performance overheads because latency, throughput, and memory consumption are first-order concerns for service providers.
We observe that: i) An important class of server applications are request-based: they scale by concurrently servicing large numbers of <i>quasi-independent</i> requests. ii) Object lifetimes are strongly tied to request lifetimes. iii) Most objects remain private to the request in which they were allocated. iv) Global operations are the primary impediment to responsiveness at scale.
</p>
<p>
If we could perform <i>request-private garbage collection</i>, we might achieve both responsiveness and efficiency at scale.
Unfortunately, this straightforward insight runs into significant practical problems.
The most obvious of these is that a request-private collection cannot safely move objects that may be referenced outside the scope of that request, and yet moving objects is a requirement of most modern high performance collector designs.
This dilemma can be sidestepped by exploiting immutability, which is unfortunately not practical in languages like Java whose type systems do not expose it.
We develop Iso, a garbage collector for request-based services that exploits a mark-region heap structure to solve these impediments and deliver outstanding performance.
</p>
<p>
The key contributions of this paper are that: i) We use opportunistic copying to solve the problem of practical thread-local garbage collection for languages without exploitable immutability. ii) We provide the first detailed analysis of the behavior of Java workloads with respect to thread-local collection, identify shortcomings of existing benchmarks and introduce a new one. iii) We design, implement, and evaluate Iso, a practical and effective request-private GC.
We show that dynamic tracking of object visibility, a prerequisite for request-private GC, incurs an overhead of just 2% for important request-based workloads including Tomcat and Spring.
Iso demonstrates that for suitable workloads, request-based garbage collection is extremely effective, outperforming OpenJDK with its default collector, G1, by 32% and 22% in execution time in a modest heap.
This work presents the first request-private garbage collector for Java.
It shows a promising way forward for highly responsive collection on an important class of large scale workloads.
</p>

This program is tentative and subject to change.

Fri 20 Jun

Displayed time zone: Seoul change

10:30 - 12:10
10:30
20m
Talk
Verifying General-Purpose RCU for Reclamation in Relaxed Memory Separation Logic
PLDI Research Papers
Jaehwang Jung Rebellions Inc, Sunho Park KAIST, Janggun Lee KAIST, Jeho Yeon KAIST, Jeehoon Kang KAIST
DOI
10:50
20m
Talk
Leveraging Immutability to Validate Hazard Pointers for Optimistic Traversals
PLDI Research Papers
DOI
11:10
20m
Talk
Iso: Request-Private Garbage Collection
PLDI Research Papers
Tianle Qiu Australian National University, Stephen M. Blackburn Google; Australian National University
DOI
11:30
20m
Talk
CRGC: Fault-Recovering Actor Garbage Collection in Pekko
PLDI Research Papers
Dan Plyukhin University of Southern Denmark, Gul Agha University of Illinois at Urbana-Champaign, Fabrizio Montesi University of Southern Denmark
DOI
11:50
20m
Talk
RRR-SMR: Reduce, Reuse, Recycle: Better Methods for Practical Lock-Free Data Structures
PLDI Research Papers
Md Amit Hasan Arovi Pennsylvania State University, Ruslan Nikolaev Pennsylvania State University
DOI