Re: [PATCH v1 00/14] Multigenerational LRU

From: Yu Zhao
Date: Sun Mar 14 2021 - 20:53:34 EST


On Sun, Mar 14, 2021 at 06:48:17PM -0400, Zi Yan wrote:
> On 13 Mar 2021, at 2:57, Yu Zhao wrote:

> > Problems
> > ========

> > 31.03% page_vma_mapped_walk
> > 25.59% lzo1x_1_do_compress
> > 4.63% do_raw_spin_lock
> > 3.89% vma_interval_tree_iter_next
> > 3.33% vma_interval_tree_subtree_search

> > Solutions
> > =========

> > 49.36% lzo1x_1_do_compress
> > 4.54% page_vma_mapped_walk
> > 4.45% memset_erms
> > 3.47% walk_pte_range
> > 2.88% zram_bvec_rw
>
> Is this profile from a system with this patchset applied or not?
> Do you mind sharing some profiling data with before and after applying
> the patchset? So it would be easier to see the improvement brought by
> this patchset.

I've snipped everything else to make the context more clear.

These two kswapd profiles were collected under roughly the same memory
pressure. In other words, kswapd reclaimed (compressed) about the same
number of pages and therefore spent about the same amount of CPU time
in lzo1x_1_do_compress() in each profile.

The percentages of lzo1x_1_do_compress() are different because the
total CPU usage are different. Dividing the second percentage by the
first, we know we have roughly cut kswapd CPU usage by half.

> Are there any performance numbers for specific application (before and
> after applying the patches) you can show to demonstrate the improvement?

The kswapd profiles are from Chrome OS, i.e., laptops running the
v5.11 kernel and the Chrome browser. And we've also collected
benchmarks from various workloads on servers and phones running older
kernel versions too. Do you have a platform in mind? I'd be happy to
share the data with you. Or if you have some workloads/benchmarks, I
could collect some numbers from them too.