Get the latest tech news

Safepoints and Fil-C


g is an underappreciated aspect of modern multithreaded VM/GC tech. It forms the foundation of Fil-C's accurate stack scanning, safe signal handling, and safe forking.

Safepointing is the reason why multiple threads can race on the heap in Fil-C using non-atomic unordered instructions, under any widely used hardware memory model, without breaking the soundness guarantees of the garbage collector. The compiler stack-allocates such a frame, with enough room in lowers to track the high watermark of how many GC pointers are live at any time at any pollcheck. FUGC achieves this using soft handshakes that request that threads reset their local caches (give all of the memory back to the global heap).

Get the Android app

Or read this on Hacker News

Read more on:

Photo of Safepoints

Safepoints