Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

runtime: adopt mesh allocation technique? #30290

stapelberg opened this issue Feb 18, 2019 · 1 comment

runtime: adopt mesh allocation technique? #30290

stapelberg opened this issue Feb 18, 2019 · 1 comment


Copy link

@stapelberg stapelberg commented Feb 18, 2019

I recently came across Mesh: Compacting Memory Management for C/C++ Applications. From the paper:

It introduces Mesh, a novel memory allocator that acts as a plug-in replacement for malloc. Mesh combines remapping of virtual to physical pages (meshing) with randomized allocation and search algorithms to enable safe and effective compaction without relocation for C/C++.

The results look quite promising:

[…] it reduces the memory of consumption of Firefox by 16% and Redis by 39%.

I’m not familiar enough with Go’s allocator to say precisely whether we could adopt mesh (or parts of it), but I figured I’d bring it up, just in case the paper doesn’t already find its way to people working on Go’s allocator :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants