lkml.org 
[lkml]   [2021]   [Apr]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v4 0/4] percpu: partial chunk depopulation
    On Mon, Apr 19, 2021 at 10:50:43PM +0000, Dennis Zhou wrote:
    > Hello,
    >
    > This series is a continuation of Roman's series in [1]. It aims to solve
    > chunks holding onto free pages by adding a reclaim process to the percpu
    > balance work item.
    >
    > The main difference is that the nr_empty_pop_pages is now managed at
    > time of isolation instead of intermixed. This helps with deciding which
    > chunks to free instead of having to interleave returning chunks to
    > active duty.
    >
    > The allocation priority is as follows:
    > 1) appropriate chunk slot increasing until fit
    > 2) sidelined chunks
    > 3) full free chunks
    >
    > The last slot for to_depopulate is never used for allocations.
    >
    > A big thanks to Roman for initiating the work and being available for
    > iterating on these ideas.
    >
    > This patchset contains the following 4 patches:
    > 0001-percpu-factor-out-pcpu_check_block_hint.patch
    > 0002-percpu-use-pcpu_free_slot-instead-of-pcpu_nr_slots-1.patch
    > 0003-percpu-implement-partial-chunk-depopulation.patch
    > 0004-percpu-use-reclaim-threshold-instead-of-running-for-.patch
    >
    > 0001 and 0002 are clean ups. 0003 implement partial chunk depopulation
    > initially from Roman. 0004 adds a reclaim threshold so we do not need to
    > schedule for every page freed.
    >
    > This series is on top of percpu$for-5.14 67c2669d69fb.
    >
    > diffstats below:
    >
    > Dennis Zhou (2):
    > percpu: use pcpu_free_slot instead of pcpu_nr_slots - 1
    > percpu: use reclaim threshold instead of running for every page
    >
    > Roman Gushchin (2):
    > percpu: factor out pcpu_check_block_hint()
    > percpu: implement partial chunk depopulation
    >
    > mm/percpu-internal.h | 5 +
    > mm/percpu-km.c | 5 +
    > mm/percpu-stats.c | 20 ++--
    > mm/percpu-vm.c | 30 ++++++
    > mm/percpu.c | 252 ++++++++++++++++++++++++++++++++++++++-----
    > 5 files changed, 278 insertions(+), 34 deletions(-)
    >
    > Thanks,
    > Dennis

    Hello Pratik,

    Do you mind testing this series again on POWER9? The base is available
    here:
    https://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu.git/log/?h=for-5.14

    Thanks,
    Dennis

    \
     
     \ /
      Last update: 2021-04-20 00:58    [W:2.669 / U:0.816 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site