Crystal no longer runs GC in parallel threads?

I remember running Crystal apps through a profiler on my machine and it showed GC running outside the main thread, even without -Dpreview_mt. But now it seems to be running inside the main thread. Did something change in how Crystal runs the GC, or did the GC run itself differently, or am I just remembering incorrectly?

1 Like

What profiler are you using?

macOS Instruments

I saw a similar behaviour on Linux too

I did a quick dig the past three years and I can’t find any specific change that could have modified this behavior.

I haven’t check locally, but could it be Fix segfault with next boehm gc (after v8.2.4) by ysbaddaden · Pull Request #14130 · crystal-lang/crystal · GitHub ? That PR changed the GC behavior in BUG: Process hang on M1 · Issue #5 · bcardiff/crystal-fswatch · GitHub