Re: [PATCH v6 0/9] Multigenerational LRU Framework

From: Shuang Zhai
Date: Tue Jan 11 2022 - 11:07:02 EST


Yu Zhao wrote:
> On Tue, Jan 04, 2022 at 01:30:00PM -0700, Yu Zhao wrote:
>> On Tue, Jan 04, 2022 at 01:22:19PM -0700, Yu Zhao wrote:
>>> TLDR
>>> ====
>>> The current page reclaim is too expensive in terms of CPU usage and it
>>> often makes poor choices about what to evict. This patchset offers an
>>> alternative solution that is performant, versatile and
>>> straightforward.
>>
>> <snipped>
>>
>>> Summery
>>> =======
>>> The facts are:
>>> 1. The independent lab results and the real-world applications
>>> indicate substantial improvements; there are no known regressions.
>>> 2. Thrashing prevention, working set estimation and proactive reclaim
>>> work out of the box; there are no equivalent solutions.
>>> 3. There is a lot of new code; nobody has demonstrated smaller changes
>>> with similar effects.
>>>
>>> Our options, accordingly, are:
>>> 1. Given the amount of evidence, the reported improvements will likely
>>> materialize for a wide range of workloads.
>>> 2. Gauging the interest from the past discussions [14][15][16], the
>>> new features will likely be put to use for both personal computers
>>> and data centers.
>>> 3. Based on Google's track record, the new code will likely be well
>>> maintained in the long term. It'd be more difficult if not
>>> impossible to achieve similar effects on top of the existing
>>> design.
>>
>> Hi Andrew, Linus,
>>
>> Can you please take a look at this patchset and let me know if it's
>> 5.17 material?
>>
>> My goal is to get it merged asap so that users can reap the benefits
>> and I can push the sequels. Please examine the data provided -- I
>> think the unprecedented coverage and the magnitude of the improvements
>> warrant a green light.
>
> Downstream kernel maintainers who have been carrying MGLRU for more than
> 3 versions, can you please provide your Acked-by tags?
>
> Having this patchset in the mainline will make your job easier :)
>
> Alexandre - the XanMod Kernel maintainer
> https://xanmod.org
>
> Brian - the Chrome OS kernel memory maintainer
> https://www.chromium.org
>
> Jan - the Arch Linux Zen kernel maintainer
> https://archlinux.org
>
> Steven - the Liquorix kernel maintainer
> https://liquorix.net
>
> Suleiman - the ARCVM (Android downstream) kernel memory maintainer
> https://chromium.googlesource.com/chromiumos/third_party/kernel
>
> Also my gratitude to those who have helped test MGLRU:
>
> Daniel - researcher at Michigan Tech
> benchmarked memcached
>
> Holger - who has been testing/patching/contributing to various
> subsystems since ~2008
>
> Shuang - researcher at University of Rochester
> benchmarked fio and provided a report
>
> Sofia - EDI https://www.edi.works
> benchmarked the top eight memory hogs and provided reports
>
> Can you please provide your Tested-by tags? This will ensure the credit
> for your contributions.
>
> Thanks!

I have tested MGLRU using fio [1]. The performance improvement is fabulous.
I hope this patchset could eventually get merged to enable large scale test
and let more users talk about their experience.

Tested-by: Shuang Zhai <szhai2@xxxxxxxxxxxxxxxx>

[1] https://lore.kernel.org/lkml/20220105024423.26409-1-szhai2@xxxxxxxxxxxxxxxx/