Yeah, the bump allocator seems like a very neat idea! ![]()
Is it applicable to CPython? I’m not deeply familiar enough with GC internals to evaluate how well it would work for our use cases, or how much refactoring it would require. Maybe worth exploring down the line?
It’s unsuitable for CPython because we never move a Python object in memory.
IIUC, if PyObjects made opaque, we could implement a compacting/moving GC that relocates internal data.