It's the same general idea as the current free lists, but with a
better, cleaner implementation. If there are a lot of smaller dynamic
objects with short lifetimes, it will reduce thread blocking on the
heap mutex, block coalescing, and relatively complex changes to the
data structure of free blocks.
On Fri, Dec 7, 2018 at 12:54 PM Leif Hedstrom <zw...@apache.org> wrote:
>
> What problem does solve? Does it make things faster?
>
> — Leif
>
> > On Dec 7, 2018, at 09:27, Walt Karas <wka...@oath.com.invalid> wrote:
> >
> > This doesn't conflict with those efforts, and is much easier to do.
> >> On Thu, Dec 6, 2018 at 6:56 PM Leif Hedstrom <zw...@apache.org> wrote:
> >>
> >> I thought the efforts were to be focused on getting jemalloc optimized
> >> with their concepts of arenas and NUMA affinity and thread ware
> >> allocations?
> >>
> >> — Leif
> >>
> >>> On Dec 6, 2018, at 15:02, Walt Karas <wka...@oath.com.invalid> wrote:
> >>>
> >>> Would it be desirable for ATS to use this (cleaner) version of free lists?
> >>>
> >>> https://github.com/ywkaras/MiscRepo/blob/master/Dynamic_obj/example.cc
> >>>
> >>> https://github.com/ywkaras/MiscRepo/blob/master/Dynamic_obj/Dynamic_obj.h
> >>>
> >>> The advantage is faster allocation/deallocation for small objects with
> >>> short lifetimes. The disadvantage is we could reach heap exhaustion
> >>> more easily, as the free lists are reserving free memory for
> >>> allocation of a particular size (and where the size is a constexpr).
> >>>
> >>> We would probably want to use conditional compilation for force
> >>> Large_threshold to 0 for FSAN builds and maybe debug builds also.
> >>
>