Much larger old_heap than heap

Björn-Egil Dahlberg wallentin.dahlberg@REDACTED
Thu Mar 18 18:56:10 CET 2021


Ehum?

total_heap_size = heap_size + old_heap_size. Meaning 1st gen heap + 2nd gen
heap. So total_heap_size *should* be equal, or more probable, higher than
the heap_size.

The reason you don't see that it shrinks during a garbage collect is ofc
that there's still living data on the heap.

Den ons 17 mars 2021 kl 21:53 skrev Loïc Hoguin <lhoguin@REDACTED>:

> Hello,
>
> I am trying to understand why the total_heap_size of a few processes
> is so much higher than heap_size. As can be seen in the following
> snippet, the old_heap is responsible for the discrepancy:
>
> > erlang:process_info(QPid, garbage_collection_info).
> {garbage_collection_info,[{old_heap_block_size,1439468},
>                           {heap_block_size,196650},
>                           {mbuf_size,289},
>                           {recent_size,11674},
>                           {stack_size,35},
>                           {old_heap_size,940791},
>                           {heap_size,86028},
>                           {bin_vheap_size,36483},
>                           {bin_vheap_block_size,46422},
>                           {bin_old_vheap_size,34148},
>                           {bin_old_vheap_block_size,46422}]}
>
> Why?
>
> How can I reduce this? Garbage collecting does nothing.
>
> Cheers,
>
> --
> Loïc Hoguin
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20210318/acb1134e/attachment.htm>


More information about the erlang-questions mailing list