Call for Interest: Clojure (or Lisp?) Code Camp with BLM focus

Martin Cracauer cracauer at cons.org
Thu Dec 3 17:25:50 UTC 2020


Pascal Costanza wrote on Thu, Dec 03, 2020 at 04:17:56PM +0100: 
> 
> > Parallel GC is no problem and implemented.
> 
> 
> Which CL implementations have a parallel GC?

Clasp (via Boehm GC and MPS).

I thought SBCL was there, but I just checked, not yet.  I think Google
is pushing for a parallel GC instead, because of response times to
their production monitoring.

Another untapped source of performance is userfaultfd(2) in the Linux
kernel.  It allows those GCs that implement a write barrier using
page protections SIGSEGV to use the faster userfaultfd interface
instead (as opposed to those using a bitmap).  This won't help
concurrent GC, but parallel GC would benefit even more than
single-thread GC because it uses faster system calls.
Proof of concept is here:
https://www.cons.org/cracauer/cracauer-userfaultfd.html

Martin
-- 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Martin Cracauer <cracauer at cons.org>   http://www.cons.org/cracauer/



More information about the pro mailing list