[PATCH 0/2] Improve Zram by separating compression context from kswapd
Sergey Senozhatsky
senozhatsky at chromium.org
Wed Mar 12 20:09:18 PDT 2025
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.
More information about the linux-arm-kernel
mailing list