~/talk

Collecting Cyclic Garbage across Foreign Function Interfaces: Who Takes the Last Piece(…)

Talkat PLDI 2023 · 2023-06-17..06-21· [ruby, javascript]
links:none on file
links:none on file
links:none on file
links:none on file
slides:none on file

Refgraph GC coordinates two independent tracing collectors by copying a compressed reference graph from Ruby into an unmodified JavaScript runtime so the JS collector can reclaim cross-language cycles; only the Ruby VM is modified. A send barrier handles races when mutator threads create edges after copying. Implementation reclaims previously leaked cycles, first attempt missed some before the barrier fix, and measured overhead is small with copied graph size under 2% of heap in experiments.

AI-written summary · about

  1. 0:00Introduction
  2. 0:54Motivation for cyclic GC
  3. 3:07Cyclic garbage in FFI Ruby-JS
  4. 5:41RefGraph GC proposal
  5. 6:51RefGraph GC example
  6. 8:35RefGraph GC send barrier
  7. 12:08Experimental results
  8. 12:51Related work comparison
  9. 13:12Summary
  10. 13:55Q&A
~/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.