[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK1f24k1qcTUnaZ-ZoT7GWkpWk-vDUjVb+yL9QWZAvfSLxEsCQ@mail.gmail.com>
Date: Thu, 2 May 2024 08:30:39 +0800
From: Lance Yang <ioworker0@...il.com>
To: SeongJae Park <sj@...nel.org>
Cc: akpm@...ux-foundation.org, willy@...radead.org, maskray@...gle.com,
ziy@...dia.com, ryan.roberts@....com, david@...hat.com, 21cnbao@...il.com,
mhocko@...e.com, fengwei.yin@...el.com, zokeefe@...gle.com,
shy828301@...il.com, xiehuan09@...il.com, libang.li@...group.com,
wangkefeng.wang@...wei.com, songmuchun@...edance.com, peterx@...hat.com,
minchan@...nel.org, linux-mm@...ck.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4 0/3] Reclaim lazyfree THP without splitting
On Thu, May 2, 2024 at 12:08 AM SeongJae Park <sj@...nel.org> wrote:
>
> Hi Lance,
>
> On Wed, 1 May 2024 12:26:57 +0800 Lance Yang <ioworker0@...il.com> wrote:
>
> > Hi all,
> >
> > This series adds support for reclaiming PMD-mapped THP marked as lazyfree
> > without needing to first split the large folio via split_huge_pmd_address().
> >
> > When the user no longer requires the pages, they would use madvise(MADV_FREE)
> > to mark the pages as lazy free. Subsequently, they typically would not re-write
> > to that memory again.
> >
> > During memory reclaim, if we detect that the large folio and its PMD are both
> > still marked as clean and there are no unexpected references(such as GUP), so we
> > can just discard the memory lazily, improving the efficiency of memory
> > reclamation in this case.
> >
> > Performance Testing
> > ===================
> >
> > On an Intel i5 CPU, reclaiming 1GiB of lazyfree THPs using
> > mem_cgroup_force_empty() results in the following runtimes in seconds
> > (shorter is better):
> >
> > --------------------------------------------
> > | Old | New | Change |
> > --------------------------------------------
> > | 0.683426 | 0.049197 | -92.80% |
> > --------------------------------------------
> >
> > ---
> >
> > Changes since v3 [3]
> > ====================
> > - mm/rmap: integrate PMD-mapped folio splitting into pagewalk loop
> > - Resolve compilation errors by handling the case where
> > CONFIG_PGTABLE_HAS_HUGE_LEAVES is undefined (thanks to SeongJae Park)
>
> I confirmed that the issue I reported before is disappeared with this version
> of the patchset. For the fix,
>
> Tested-by: SeongJae Park <sj@...nel.org>
Hey SJ,
Thanks for taking time to confirm! I appreciate your feedback!
Thanks,
Lance
>
>
> Thanks,
> SJ
>
> [...]
Powered by blists - more mailing lists