Re: [PATCH] mm: add ztree - new allocator for use via zpool API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Sep 16, 2021 at 12:12 PM Vlastimil Babka <vbabka@xxxxxxx> wrote:
>
> On 9/16/21 10:51, Ananda Badmaev wrote:
> > ztree is a versatile backend for zswap and potentially zram. It got its name
> > due to the usage of red-black trees to store blocks of compressed objects.
> > These blocks consist of several consecutive pages and ztree keeps an integer
> > number of objects per block.
> >
> > For zram, ztree has better worst case malloc() and free() times than zsmalloc,
> > does not deteriorate over time and has slightly worse but comparable compression
> > ratio. For zswap, ztree has better worst case malloc() and free() times than
> > z3fold, better compression ratio than z3fold and supports reclaim unlike zsmalloc.
> >
> > Signed-off-by: Ananda Badmaev <a.badmaev@xxxxxxxxxxxx>
>
> So how many of these allocators do we need? Minimally IMHO some data should
> be provided for the performance comparison claims above.
> Sounds like if this is based on z3fold (I haven't actually compared the
> code) and better in every aspect, why not just "upgrade" z3fold to ztree then?

We have collected a lot of data and it wouldn't fit in the cover
message. I believe Ananda will follow up with comparison details on
various architectures.

I wouldn't say that ztree is completely based on z3fold, the latter
might have served as an inspiration and ztree shares the idea that
keeping an integral amount of objects per page is a good thing. With
that said, ztree operates on blocks, not on pages which allows for
more flexibility.

~Vitaly




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux