Re: [PATCH 0/2] Improve Zram by separating compression context from kswapd
From: Sergey Senozhatsky
Date: Wed Mar 12 2025 - 23:09:37 EST
On (25/03/12 11:11), Minchan Kim wrote:
> On Fri, Mar 07, 2025 at 08:01:02PM +0800, Qun-Wei Lin wrote:
> > This patch series introduces a new mechanism called kcompressd to
> > improve the efficiency of memory reclaiming in the operating system. The
> > main goal is to separate the tasks of page scanning and page compression
> > into distinct processes or threads, thereby reducing the load on the
> > kswapd thread and enhancing overall system performance under high memory
> > pressure conditions.
> >
> > Problem:
> > In the current system, the kswapd thread is responsible for both
> > scanning the LRU pages and compressing pages into the ZRAM. This
> > combined responsibility can lead to significant performance bottlenecks,
> > especially under high memory pressure. The kswapd thread becomes a
> > single point of contention, causing delays in memory reclaiming and
> > overall system performance degradation.
>
> Isn't it general problem if backend for swap is slow(but synchronous)?
> I think zram need to support asynchrnous IO(can do introduce multiple
> threads to compress batched pages) and doesn't declare it's
> synchrnous device for the case.
The current conclusion is that kcompressd will sit above zram,
because zram is not the only compressing swap backend we have.