~/talk

Improving Garbage Collection Observability with Performance Tracing

Talkat MPLR 2023 · on Sunday, 2023-10-22· [observability]
links:none on file
links:none on file
slides:none on file

Tracing hooks compile with 14 lines of Rust and sit inactive with essentially zero runtime cost; activating them via eBPF tracing records every GC event so engineers can measure actual packet sizes, timings and contention. Process-edges traces reveal consistent 25-item packets causing serial execution; bucket-open traces expose thread-starvation and a finalization hotpath that serializes fop, and an uncovered LSearch file-handle bug whose fix restores scalability. Active tracing adds up to ~12% collector overhead in worst cases.

AI-written summary · about

  1. 0:00Garbage collection debugging intro
  2. 0:27GC debugging limitations
  3. 3:37Performance tracing for GC issues
  4. 7:07MMTk collector design
  5. 8:30Critical tracing points in MMTk
  6. 9:57Tracing overhead and effort
  7. 10:18Transitive closure scalability case
  8. 13:27Load balancing with tracing
  9. 15:40Application bugs discovered
  10. 16:42Tracing framework flexibility
  11. 17:02Summary and future of GC debugging
  12. 17:46Q&A on trace data and eBPF
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.