Open utterances-bot opened 3 years ago
«Which CL implementations have a parallel GC?»
When one runs ABCL on a suitable JVM with ZGC or Shenandoah, then it has parallel GC.
Thanks for completing the list! Best,
And it looks like Allegro CL also offers parallel GC: https://franz.com/support/documentation/current/doc/release-notes.htm#acl-new
New Features in 10.0: Parallel Global Garbage Collection
The newer GCs of Go and the JVM (ZGC and Shenandoah) are not generational and employ techniques such as pointer coloring and store/load barriers by instrumenting all object read/write operations instead of using virtual memory protection (which tends to have a non-indifferent performance penalty)
Note that the Go GC doesn't use pointer colouring or load barriers, but it cannot compact memory as a consequence. Store barriers are also common for mostly-concurrent collectors like G1 and CMS.
Nowadays ZGC and Shenandoah are getting generational versions, too.
Pro mailing list: on Common Lisp and parallel GC - Lisp journey
I recently enjoyed this discussion on the pro mailing list. It started with a call of recommendations on music software, and the discussion evolved in discussing parallel garbage collection. By the way, can you site an implementation that has parallel GC?Pascal Costanza:«When moving our elPrep software away from Common Lisp, we evaluated C++, Go and Java as potential candidates, and Go turned out to provide the best balance between performance and memory use.
https://lisp-journey.gitlab.io/blog/pro-mailing-list-on-common-lisp-and-parallel-gc/