Re: [PATCH 2/3] mm/page_alloc: stop fallback allocation if we already get some freepage
From: Joonsoo Kim
Date: Tue May 19 2015 - 03:46:49 EST
On Tue, May 12, 2015 at 10:36:40AM +0200, Vlastimil Babka wrote:
> On 04/27/2015 09:23 AM, Joonsoo Kim wrote:
> >Sometimes we try to get more freepages from buddy list than how much
> >we really need, in order to refill pcp list. This may speed up following
> >allocation request, but, there is a possibility to increase fragmentation
> >if we steal freepages from other migratetype buddy list excessively. This
> >patch changes this behaviour to stop fallback allocation in order to
> >reduce fragmentation if we already get some freepages.
> >
> >CPU: 8
> >RAM: 512 MB with zram swap
> >WORKLOAD: kernel build with -j12
> >OPTION: page owner is enabled to measure fragmentation
> >After finishing the build, check fragmentation by 'cat /proc/pagetypeinfo'
> >
> >* Before
> >Number of blocks type (movable)
> >DMA32: 208.4
> >
> >Number of mixed blocks (movable)
> >DMA32: 139
> >
> >Mixed blocks means that there is one or more allocated page for
> >unmovable/reclaimable allocation in movable pageblock. Results shows that
> >more than half of movable pageblock is tainted by other migratetype
> >allocation.
> >
> >* After
> >Number of blocks type (movable)
> >DMA32: 207
> >
> >Number of mixed blocks (movable)
> >DMA32: 111.2
> >
> >This result shows that non-mixed block increase by 38% in this case.
> >
> >Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
>
> I agree that keeping fragmentation low is more important than
> filling up the pcplists. Wouldn't expect such large difference
> though. Are the results stable?
Yes, I think that improvement is very stable. stdev is roughly 8 in 5 runs.
Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/