Messages in this thread | | | Date | Thu, 10 Dec 2009 22:19:48 -0500 | From | Rik van Riel <> | Subject | Re: [PATCH] vmscan: limit concurrent reclaimers in shrink_zone |
| |
On 12/10/2009 09:03 PM, Minchan Kim wrote:
>> +The default value is 8. >> + >> +============================================================= > > I like this. but why do you select default value as constant 8? > Do you have any reason? > > I think it would be better to select the number proportional to NR_CPU. > ex) NR_CPU * 2 or something. > > Otherwise looks good to me.
Pessimistically, I assume that the pageout code spends maybe 10% of its time on locking (we have seen far, far worse than this with thousands of processes in the pageout code). That means if we have more than 10 threads in the pageout code, we could end up spending more time on locking and less doing real work - slowing everybody down.
I rounded it down to the closest power of 2 to come up with an arbitrary number that looked safe :)
However, this number is per zone - I imagine that really large systems will have multiple memory zones, so they can run with more than 8 processes in the pageout code simultaneously.
> Reviewed-by: Minchan Kim<minchan.kim@gmail.com>
Thank you.
-- All rights reversed.
| |