Fwd: [PATCH] Hitshield : Something new eviction process for MGLRU

From: Minwoo Jo
Date: Tue Oct 08 2024 - 12:12:36 EST


---------- Forwarded message ---------
보낸사람: Minwoo Jo <chminoo@xxxxxxxxxxxx>
Date: 2024년 10월 9일 (수) 오전 1:04
Subject: Re: [PATCH] Hitshield : Something new eviction process for MGLRU
To: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
Cc: <akpm@xxxxxxxxxxxxxxxxxxxx>, <rostedt@xxxxxxxxxxx>,
<mhiramat@xxxxxxxxxx>, <willy@xxxxxxxxxxxxx>, <david@xxxxxxxxxx>,
<yuzhao@xxxxxxxxxx>, <heesn@xxxxxxxxxx>, <linux-mm@xxxxxxxxx>,
<linux-kernel@xxxxxxxxxxxxxxx>, <linux-trace-kernel@xxxxxxxxxxxxxxx>


2024년 10월 8일 (화) 오후 10:21, Mathieu Desnoyers
<mathieu.desnoyers@xxxxxxxxxxxx>님이 작성:
>
> On 2024-10-08 15:02, Mathieu Desnoyers wrote:
> > On 2024-10-08 10:44, Minwoo Jo wrote:
> >> Signed-off-by: Minwoo Jo <chminoo@xxxxxxxxxxxx>
> >>
> >
> > [ Any reason why no mailing lists are CC'd ? ]
> >
>
> [...]
> > Please consider CCing LKML and the linux-mm mailing lists on your reply.
>
> The Documentation/process/submitting-patches.rst document describes who
> should be CC'd when submitting patches.
>
> The script scripts/get_maintainer.pl will help you identify which
> email recipients are relevant for your patch.
>
> Thanks,
>
> Mathieu
>
> --
> Mathieu Desnoyers
> EfficiOS Inc.
> https://www.efficios.com
>

> [ Any reason why no mailing lists are CC'd ? ]

I think I did some mistake when I mail, so I add CC to
linux-mm@xxxxxxxxx (open list:MEMORY MANAGEMENT)
linux-kernel@xxxxxxxxxxxxxxx (open list)
linux-trace-kernel@xxxxxxxxxxxxxxx (open list:TRACING)

> Have you considered alternative approaches, and why is this approach
> better ?

I used an alternative approach of creating another wrapper or value
approach, but this was not good because it increased memory usage per
folio, resulting in more swaps.

> Do you have benchmarks of workloads that regress with this feature
> enabled ? How are they affected ?

I tried another two benchmarks, 7zip benchmark, YCSB.

The 7zip benchmark shows a 3.1% reduction in pswpin, 2.8% reduction in pswpout,
and a 2.9% reduction in runtime under 1G constraints.
Under 2G constraints, pswpin decreased by 22.4%, pswpout decreased by 21.2%,
and Runtime decreased by 14.8%.
On 3G constraints, pswpin decreased by 3.3%, pswpout decreased by 1.3%,
and runtime decreased by 1.9%.

We also measured the Yahoo! Cloud Service Benchmark.
YCSB showed a 69.9% decrease in pswpin, 67.1% decrease in pswpout,
and a 5.1% decrease in Runtime at the 500M constraint.
At 750M constraints, pswpin decreased by 83.8%, pswpout decreased by 81.0%,
and runtime decreased by 2.4%.
On 1G constraints, pswpin decreased by 79.5%, pswpout decreased by 76.7%,
and runtime decreased by 3.8%.

> Documentation should be there first, or at least something explaining
> the rationale and design.

I think my previous commit mail might be helpful.
https://lore.kernel.org/linux-mm/ZpvY_aZV4VtMmXP-@xxxxxxxxxxxxxxxxxxxx/T/

Thank you for your response.