Skip to content

Mark free blocks in pooled carriers as unused#2046

Merged
jhogberg merged 1 commit into
erlang:masterfrom
jhogberg:john/erts/mark-pooled-free-blocks-unused/OTP-15075
Dec 7, 2018
Merged

Mark free blocks in pooled carriers as unused#2046
jhogberg merged 1 commit into
erlang:masterfrom
jhogberg:john/erts/mark-pooled-free-blocks-unused/OTP-15075

Conversation

@jhogberg
Copy link
Copy Markdown
Contributor

@jhogberg jhogberg commented Dec 6, 2018

This PR lets the OS reclaim the physical memory associated with free blocks in pooled carriers, reducing the impact of long-lived awkward allocations. A small allocated block will still keep a huge carrier alive, but the unused parts of the carrier will now be available to the OS.

(This is based on #1946 by @kvakvs.)

@jhogberg jhogberg added team:VM Assigned to OTP team VM enhancement labels Dec 6, 2018
@jhogberg jhogberg self-assigned this Dec 6, 2018
This lets the OS reclaim the physical memory associated with these
blocks which reduces the impact of long-lived awkward allocations.
A small allocated block will still keep a huge carrier alive, but
the unused part of the carrier will now be available to the OS.

Co-authored-by: Dmytro Lytovchenko <dmytro.lytovchenko@erlang-solutions.com>
@jhogberg jhogberg force-pushed the john/erts/mark-pooled-free-blocks-unused/OTP-15075 branch from 153bd5e to 1d549ed Compare December 7, 2018 11:29
@jhogberg jhogberg merged commit 689f9d5 into erlang:master Dec 7, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement team:VM Assigned to OTP team VM

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant