Re: [PATCH] mm: batch-free pcp list if possible

From: Andrew Morton
Date: Thu Feb 10 2011 - 16:01:15 EST


On Thu, 10 Feb 2011 09:35:44 +0000
Mel Gorman <mel@xxxxxxxxx> wrote:

> > What's the point in that? What relationship does the number of
> > contiguous empty lists have with the number of pages to free from one
> > list?
> >
>
> The point is to avoid excessive checking of empty lists.

It seems pretty simple to me to skip the testing of empty lists
altogether. I suggested one way, however I suspect a better approach
might be to maintain a count of the number of pages in each list and
then change free_pcppages_bulk() so that it calculates up-front the
number of pages to free from each list (equal proportion of each) then
sits in a tight loop freeing that number of pages.

It might be that the overhead of maintaining the per-list count makes
that not worthwhile. It'll be hard to tell because the count
maintenance cost will be smeared all over the place.

I doubt if any of it matters much, compared to the cost of allocating,
populating and freeing a page. I just want free_pcppages_bulk() to
stop hurting my brain ;)


--
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/