Re: [PATCH 1/1] sysctl: change watermark_scale_factor max limit to 30%

From: Suren Baghdasaryan
Date: Wed Nov 24 2021 - 17:04:43 EST


On Wed, Nov 24, 2021 at 1:37 PM Johannes Weiner <hannes@xxxxxxxxxxx> wrote:
>
> On Wed, Nov 24, 2021 at 11:36:04AM -0800, Suren Baghdasaryan wrote:
> > For embedded systems with low total memory, having to run applications
> > with relatively large memory requirements, 10% max limitation for
> > watermark_scale_factor poses an issue of triggering direct reclaim
> > every time such application is started. This results in slow application
> > startup times and bad end-user experience.
> > By increasing watermark_scale_factor max limit we allow vendors more
> > flexibility to choose the right level of kswapd aggressiveness for
> > their device and workload requirements.
> >
> > Signed-off-by: Suren Baghdasaryan <surenb@xxxxxxxxxx>
>
> Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>

Thanks!

>
> No objection from me as this limit was always totally arbitrary. But I
> have to say I'm a bit surprised: The current maximum setting will wake
> kswapd when free memory drops below 10% and have it reclaim until
> 20%. This seems like quite a lot? Are there applications that really
> want kswapd to wake at 30% and target 60% of memory free?

The example I was given by a vendor was Camera application requiring
0.25G on 1GB device. Camera apps are notoriously memory hungry on
Android and on low-memory devices it can require more than 20% of
total memory to run.