custom header menu Features Pricing Docs Blog Login Signup menu logo Your browser does not support SVG end custom header Begin Posts Jan 22 .date Erlang Binary Garbage Collection: A love/hate relationship It’s a well known fact that Erlang VM’s generational GC does not do well when trying to garbage collect non-heap binaries. Here at Splunk, while we’ve been building brand new technology (standing on the shoulders of giants , of course) we’ve run into this weakness multiple times. This is a chronicle of our adventure. A little background Erlang binaries of up to a certain size ( 64 bytes to be precise) get stored in each process’s heap space and are garbage collected along with other state variables (tuples, lists etc). Larger ones however get stored in a separate shared memory space (called ProcBin) and a pointer to each one of them is stored in the man...