[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b1fcdc2e-51a2-8258-fde3-e30231e3db4f@intel.com>
Date: Wed, 23 Aug 2017 06:51:21 -0700
From: Dave Hansen <dave.hansen@...el.com>
To: Łukasz Daniluk <lukasz.daniluk@...el.com>,
linux-mm@...ck.org, linux-kernel@...r.kernel.org
Cc: lukasz.anaczkowski@...el.com
Subject: Re: [RESEND PATCH 2/3] mm: Add page colored allocation path
On 08/23/2017 03:02 AM, Łukasz Daniluk wrote:
> + cache_color_size=
> + [KNL] Set cache size for purposes of cache coloring
> + mechanism in buddy allocator.
> +
> + cache_color_min_order=
> + [KNL] Set minimal order for which page coloring
> + mechanism will be enabled in buddy allocator.
I guess I should send along the code I've been playing with. I have
this broken out into a bunch of helper patches, but I'll just attach the
combined patch.
This also uses an rbtree, but it puts 'struct page' itself in the
rbtree. Further, it reuses the zone->free_area list_heads' storage for
the rbtree head. This means no additional space overhead and you can
also enable it at runtime without boot options. You can also have it
enabled for any order(s) you want.
The rbtree(s) you've grafted on will not need to be walked or rebalanced
as much as the ones in my version, so that's a plus for your version.
The trick with either of these is trying to make sure the cost of all
the new branches very low.
View attachment "rbtree-buddy-20170706.patch" of type "text/x-patch" (24212 bytes)
Powered by blists - more mailing lists