lkml.org 
[lkml]   [2016]   [Apr]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 26/28] cpuset: use static key better and convert to new API
From
Date
On 04/15/2016 11:07 AM, Mel Gorman wrote:
> From: Vlastimil Babka <vbabka@suse.cz>
>
> An important function for cpusets is cpuset_node_allowed(), which optimizes on
> the fact if there's a single root CPU set, it must be trivially allowed. But
> the check "nr_cpusets() <= 1" doesn't use the cpusets_enabled_key static key
> the right way where static keys eliminate branching overhead with jump labels.
>
> This patch converts it so that static key is used properly. It's also switched
> to the new static key API and the checking functions are converted to return
> bool instead of int. We also provide a new variant __cpuset_zone_allowed()
> which expects that the static key check was already done and they key was
> enabled. This is needed for get_page_from_freelist() where we want to also
> avoid the relatively slower check when ALLOC_CPUSET is not set in alloc_flags.
>
> The impact on the page allocator microbenchmark is less than expected but the
> cleanup in itself is worthwhile.
>
> 4.6.0-rc2 4.6.0-rc2
> multcheck-v1r20 cpuset-v1r20
> Min alloc-odr0-1 348.00 ( 0.00%) 348.00 ( 0.00%)
> Min alloc-odr0-2 254.00 ( 0.00%) 254.00 ( 0.00%)
> Min alloc-odr0-4 213.00 ( 0.00%) 213.00 ( 0.00%)
> Min alloc-odr0-8 186.00 ( 0.00%) 183.00 ( 1.61%)
> Min alloc-odr0-16 173.00 ( 0.00%) 171.00 ( 1.16%)
> Min alloc-odr0-32 166.00 ( 0.00%) 163.00 ( 1.81%)
> Min alloc-odr0-64 162.00 ( 0.00%) 159.00 ( 1.85%)
> Min alloc-odr0-128 160.00 ( 0.00%) 157.00 ( 1.88%)
> Min alloc-odr0-256 169.00 ( 0.00%) 166.00 ( 1.78%)
> Min alloc-odr0-512 180.00 ( 0.00%) 180.00 ( 0.00%)
> Min alloc-odr0-1024 188.00 ( 0.00%) 187.00 ( 0.53%)
> Min alloc-odr0-2048 194.00 ( 0.00%) 193.00 ( 0.52%)
> Min alloc-odr0-4096 199.00 ( 0.00%) 198.00 ( 0.50%)
> Min alloc-odr0-8192 202.00 ( 0.00%) 201.00 ( 0.50%)
> Min alloc-odr0-16384 203.00 ( 0.00%) 202.00 ( 0.49%)
>
> Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
> Signed-off-by: Mel Gorman <mgorman@techsingularity.net>

Acked-by: Vl... ah, no, I actually wrote this one.

But since the cpuset maintainer acked [1] my earlier posting only after Mel
included it in this series, I think it's worth transferring it here:

Acked-by: Zefan Li <lizefan@huawei.com>

[1] http://marc.info/?l=linux-mm&m=146062276216574&w=2

\
 
 \ /
  Last update: 2016-04-26 22:01    [W:0.205 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site