| ▲ | mbrock 4 days ago |
| You can wrack some people's brains by stating that for some problems, a GC is a great way to alleviate the performance problems caused by manual memory management. |
|
| ▲ | jeltz 4 days ago | parent [-] |
| For those problems arena allocators tend to perform even better. |
| |
| ▲ | mbrock 4 days ago | parent | next [-] | | Yeah, but if you actually need to retain a live subgraph of the allocated heap, the arena can't help you. So you make an arena allocator that only frees its slab after moving out the reachable set to a new compacted arena. Congratulations, you've implemented a Cheney-style compacting GC! | |
| ▲ | quotemstr 4 days ago | parent | prev [-] | | Not for all allocation patterns. It's hard to beat bump pointer allocation and escape analysis in general. |
|