Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Yes, this is precisely how jemalloc works.


Does jemalloc allow you to report telemetry and feed that back into the initial pool sizes? That's what makes the gamedev oriented allocators interesting.

FWIW a "Frame allocator" was always a block of memory where malloc returned pointer into the block and advanced the pointer. At the end of rendering a frame you just reset the pointer to the start of the block. The downside is you need to guarantee that nothing in has a lifetime longer than a frame, something Rust should be good at :).

I think what the GP is referring to is a pooling allocator that pools similar sized allocations.


> Does jemalloc allow you to report telemetry and feed that back into the initial pool sizes? That's what makes the gamedev oriented allocators interesting.

Not AFAIK. There are a lot of optimizations it's quite difficult to do with dynamic pool sizes, which aren't worthwhile in the general case.


And OS X's magazine allocator, in addition to probably dozens of others. Segregated-fit allocators are probably the dominant method.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: