Skip to content

runtime: adopt mesh allocation technique? #30290

Open
@stapelberg

Description

@stapelberg

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 :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    ExpertNeededFeatureRequestIssues asking for a new feature that does not need a proposal.NeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.compiler/runtimeIssues related to the Go compiler and/or runtime.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions