lkml.org 
[lkml]   [2021]   [May]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 4/6] mm/page_alloc: Scale the number of pages that are batch freed
From
Date
On 5/25/21 10:01 AM, Mel Gorman wrote:
> When a task is freeing a large number of order-0 pages, it may acquire
> the zone->lock multiple times freeing pages in batches. This may
> unnecessarily contend on the zone lock when freeing very large number
> of pages. This patch adapts the size of the batch based on the recent
> pattern to scale the batch size for subsequent frees.
>
> As the machines I used were not large enough to test this are not large
> enough to illustrate a problem, a debugging patch shows patterns like
> the following (slightly editted for clarity)
>
> Baseline vanilla kernel
> time-unmap-14426 [...] free_pcppages_bulk: free 63 count 378 high 378
> time-unmap-14426 [...] free_pcppages_bulk: free 63 count 378 high 378
> time-unmap-14426 [...] free_pcppages_bulk: free 63 count 378 high 378
> time-unmap-14426 [...] free_pcppages_bulk: free 63 count 378 high 378
> time-unmap-14426 [...] free_pcppages_bulk: free 63 count 378 high 378
>
> With patches
> time-unmap-7724 [...] free_pcppages_bulk: free 126 count 814 high 814
> time-unmap-7724 [...] free_pcppages_bulk: free 252 count 814 high 814
> time-unmap-7724 [...] free_pcppages_bulk: free 504 count 814 high 814
> time-unmap-7724 [...] free_pcppages_bulk: free 751 count 814 high 814
> time-unmap-7724 [...] free_pcppages_bulk: free 751 count 814 high 814
>
> Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
> Acked-by: Dave Hansen <dave.hansen@linux.intel.com>

Acked-by: Vlastimil Babka <vbabka@suse.cz>

\
 
 \ /
  Last update: 2021-05-28 13:21    [W:0.142 / U:0.180 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site