On Tue, Sep 10, 2013 at 01:57:24PM -0500, Nathan Zimmer wrote:
> From: Robin Holt <[email protected]>
> 
> On large memory machines it can take a few minutes to get through
> free_all_bootmem().
> 
> Currently, when free_all_bootmem() calls __free_pages_memory(), the
> number of contiguous pages that __free_pages_memory() passes to the
> buddy allocator is limited to BITS_PER_LONG.  BITS_PER_LONG was originally
> chosen to keep things similar to mm/nobootmem.c.  But it is more
> efficient to limit it to MAX_ORDER.
> 
>        base   new  change
> 8TB    202s  172s   30s
> 16TB   401s  351s   50s
> 
> That is around 1%-3% improvement on total boot time.
> 
> This patch was spun off from the boot time rfc Robin and I had been
> working on.
> 
> Signed-off-by: Robin Holt <[email protected]>
> Signed-off-by: Nathan Zimmer <[email protected]>
> To: "H. Peter Anvin" <[email protected]>
> To: Ingo Molnar <[email protected]>
> Cc: Linux Kernel <[email protected]>
> Cc: Linux MM <[email protected]>
> Cc: Rob Landley <[email protected]>
> Cc: Mike Travis <[email protected]>
> Cc: Daniel J Blueman <[email protected]>
> Cc: Andrew Morton <[email protected]>
> Cc: Greg KH <[email protected]>
> Cc: Yinghai Lu <[email protected]>
> Cc: Mel Gorman <[email protected]>

Acked-by: Johannes Weiner <[email protected]>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to