Re: [PATCH] Prezeroing V8

2005-03-28 Thread Christoph Lameter
On Fri, 25 Mar 2005, Pavel Machek wrote: > > +unsigned int sysctl_scrub_start = 100; /* Min percentage of zeroed > > free pages per zone (~10% default) */ > > +unsigned int sysctl_scrub_stop = 300; /* Max percentage of zeroed > > free pages per zone (~30% default) */ > > +unsigned int s

Re: [PATCH] Prezeroing V8

2005-03-24 Thread Pavel Machek
Hi! > Changelog: > - Drop clear_pages and the approach to zero pages of higher order > first > - Zero a percentage of pages from all orders to avoid fragmentation > > Adds management of ZEROED and NOT_ZEROED pages and a background daemon > called scrubd. /proc/sys/vm/scrubd_load, /proc/sys/vm_s

Re: [PATCH] Prezeroing V8 + free_hot_zeroed_page + free_cold_zeroed page

2005-03-17 Thread Nish Aravamudan
On Thu, 17 Mar 2005 18:09:11 -0800 (PST), Christoph Lameter <[EMAIL PROTECTED]> wrote: > On Thu, 17 Mar 2005, Jason Uhlenkott wrote: > > > On Thu, Mar 17, 2005 at 05:36:50PM -0800, Christoph Lameter wrote: > > > +while (avenrun[0] >= ((unsigned long)sysctl_scrub_load << > > > FSHIFT)) { >

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Benjamin Herrenschmidt
On Thu, 2005-03-17 at 15:06 -0800, Christoph Lameter wrote: > I want to sleep 30 seconds because the system load is unlikely to change > frequently. Ugh ? That sounds like a magic number coming right from your hat or from your test scenario ... Ben. - To unsubscribe from this list: send the lin

Re: [PATCH] Prezeroing V8 + free_hot_zeroed_page + free_cold_zeroed page

2005-03-17 Thread Christoph Lameter
On Thu, 17 Mar 2005, Jason Uhlenkott wrote: > On Thu, Mar 17, 2005 at 05:36:50PM -0800, Christoph Lameter wrote: > > +while (avenrun[0] >= ((unsigned long)sysctl_scrub_load << FSHIFT)) > > { > > + set_current_state(TASK_UNINTERRUPTIBLE); > > + schedule_timeout(30*HZ);

Re: [PATCH] Prezeroing V8 + free_hot_zeroed_page + free_cold_zeroed page

2005-03-17 Thread Jason Uhlenkott
On Thu, Mar 17, 2005 at 05:36:50PM -0800, Christoph Lameter wrote: > +while (avenrun[0] >= ((unsigned long)sysctl_scrub_load << FSHIFT)) { > + set_current_state(TASK_UNINTERRUPTIBLE); > + schedule_timeout(30*HZ); > + } This should probably be TASK_INTERRUPTIBLE.

Re: [PATCH] Prezeroing V8 + free_hot_zeroed_page + free_cold_zeroed page

2005-03-17 Thread Christoph Lameter
Here is the fixed up zeroing patch with management of hot/cold zeroed pages. If quicklists would like the use this then they need to use free_hot_zeroed_page(page) and get_zeroed_page(GFP) for their management of hot zeroed pages. If the pool is empty then it will be replenished either from th

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Christoph Lameter
On Thu, 17 Mar 2005, Andrew Morton wrote: > > I switched off the page-zeroing hardware for the tests. > > What tests? For the results on the darn URL. > See, a speedup in a simple malloc+memset could be due to either a simple > transfer of load from user to kscrubd, or it could be due to leverag

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Andrew Morton
Christoph Lameter <[EMAIL PROTECTED]> wrote: > > On Thu, 17 Mar 2005, Andrew Morton wrote: > > > > http://oss.sgi.com/projects/page_fault_performance/ > > > > Oh no, not that page again ;) > > Yes indeed! > > > Seems to say that prezeroing makes negligible difference to kernel builds, > > but s

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Christoph Lameter
On Thu, 17 Mar 2005, Andrew Morton wrote: > > http://oss.sgi.com/projects/page_fault_performance/ > > Oh no, not that page again ;) Yes indeed! > Seems to say that prezeroing makes negligible difference to kernel builds, > but speeds up a big malloc+memset by 3x to 4x, yes? Correct. > Are the

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Christoph Lameter
On Thu, 17 Mar 2005, Andrew Morton wrote: > Christoph Lameter <[EMAIL PROTECTED]> wrote: > > > > > And given that we have separate buddy structures for zeroed and not-zeroed > > > pages, why is this tagging needed at all? > > > > Because the buddy pointers may point to a page of the different ki

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Andrew Morton
Christoph Lameter <[EMAIL PROTECTED]> wrote: > > On Thu, 17 Mar 2005, Andrew Morton wrote: > > > > > It's hard to know what to think about this without benchmarking > numbers. > > http://oss.sgi.com/projects/page_fault_performance/ Oh no, not that page again ;) Seems to say that prezeroing m

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Andrew Morton
Christoph Lameter <[EMAIL PROTECTED]> wrote: > > > And given that we have separate buddy structures for zeroed and not-zeroed > > pages, why is this tagging needed at all? > > Because the buddy pointers may point to a page of the different kind. Then > a merge is not possible. In that case I s

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Christoph Lameter
On Thu, 17 Mar 2005, Andrew Morton wrote: > > > It's hard to know what to think about this without benchmarking numbers. http://oss.sgi.com/projects/page_fault_performance/ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Mor

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Christoph Lameter
On Thu, 17 Mar 2005, Andrew Morton wrote: > OK, so we're splitting each zone's buddy structure into two: one for zeroed > pages and one for not-zeroed pages, yes? Right. > It's not obvious what the page->private of freed pages are being used for. > Please comment that. Ok. > What's all this (z

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Andrew Morton
Christoph Lameter <[EMAIL PROTECTED]> wrote: > > On Thu, 17 Mar 2005, Andrew Morton wrote: > > > Christoph Lameter <[EMAIL PROTECTED]> wrote: > > > > > > Adds management of ZEROED and NOT_ZEROED pages and a background daemon > > > called scrubd. /proc/sys/vm/scrubd_load, /proc/sys/vm_scrubd_start

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Christoph Lameter
On Thu, 17 Mar 2005, Nish Aravamudan wrote: > > + if (system_state != SYSTEM_RUNNING) > > + return; > > + > > +while (avenrun[0] >= ((unsigned long)sysctl_scrub_load << FSHIFT)) > > + schedule_timeout(30*HZ); > > This is a busy-loop, unless you set the sta

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Nish Aravamudan
On Thu, 17 Mar 2005 13:43:47 -0800 (PST), Christoph Lameter <[EMAIL PROTECTED]> wrote: > Changelog: > - Drop clear_pages and the approach to zero pages of higher order > first > - Zero a percentage of pages from all orders to avoid fragmentation > > Adds management of ZEROED and NOT_ZEROED pages

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Christoph Lameter
On Thu, 17 Mar 2005, Andrew Morton wrote: > Christoph Lameter <[EMAIL PROTECTED]> wrote: > > > > Adds management of ZEROED and NOT_ZEROED pages and a background daemon > > called scrubd. /proc/sys/vm/scrubd_load, /proc/sys/vm_scrubd_start and > > /proc/sys/vm_scrubd_stop control the scrub daemon.

Re: [PATCH] Prezeroing V8

2005-03-17 Thread Andrew Morton
Christoph Lameter <[EMAIL PROTECTED]> wrote: > > Adds management of ZEROED and NOT_ZEROED pages and a background daemon > called scrubd. /proc/sys/vm/scrubd_load, /proc/sys/vm_scrubd_start and > /proc/sys/vm_scrubd_stop control the scrub daemon. See Documentation/vm/ > scrubd.txt It's hard to know