• Mel Gorman's avatar
    mm, page_alloc: use __dec_zone_state for order-0 page allocation · 754078eb
    Mel Gorman authored
    __dec_zone_state is cheaper to use for removing an order-0 page as it
    has fewer conditions to check.
    
    The performance difference on a page allocator microbenchmark is;
    
                                                 4.6.0-rc2                  4.6.0-rc2
                                             optiter-v1r20              decstat-v1r20
      Min      alloc-odr0-1               382.00 (  0.00%)           381.00 (  0.26%)
      Min      alloc-odr0-2               282.00 (  0.00%)           275.00 (  2.48%)
      Min      alloc-odr0-4               233.00 (  0.00%)           229.00 (  1.72%)
      Min      alloc-odr0-8               203.00 (  0.00%)           199.00 (  1.97%)
      Min      alloc-odr0-16              188.00 (  0.00%)           186.00 (  1.06%)
      Min      alloc-odr0-32              182.00 (  0.00%)           179.00 (  1.65%)
      Min      alloc-odr0-64              177.00 (  0.00%)           174.00 (  1.69%)
      Min      alloc-odr0-128             175.00 (  0.00%)           172.00 (  1.71%)
      Min      alloc-odr0-256             184.00 (  0.00%)           181.00 (  1.63%)
      Min      alloc-odr0-512             197.00 (  0.00%)           193.00 (  2.03%)
      Min      alloc-odr0-1024            203.00 (  0.00%)           201.00 (  0.99%)
      Min      alloc-odr0-2048            209.00 (  0.00%)           206.00 (  1.44%)
      Min      alloc-odr0-4096            214.00 (  0.00%)           212.00 (  0.93%)
      Min      alloc-odr0-8192            218.00 (  0.00%)           215.00 (  1.38%)
      Min      alloc-odr0-16384           219.00 (  0.00%)           216.00 (  1.37%)
    Signed-off-by: default avatarMel Gorman <mgorman@techsingularity.net>
    Acked-by: default avatarVlastimil Babka <vbabka@suse.cz>
    Cc: Jesper Dangaard Brouer <brouer@redhat.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    754078eb
page_alloc.c 199 KB