Subject: Re: Speeding up fork/wait path
To: Jason Thorpe <>
From: Jaromir Dolecek <>
List: tech-kern
Date: 11/03/2003 15:57:59
Jason Thorpe wrote:
> 	* Rename cpu_wait() to cpu_exit().

cpu_exit() name is already used :) I'll think of better name
than cpu_wait().
> 	* Also drain u-areas when allocating VM from kernel_map
> 	  fails (then retry).

This shouldn't be necessary. uvm_pagealloc_strat()
wakes up pagedaemon on memory shortage (and if it can block), so this
should Just Work as is without additional hooks.
> Have you done the fork/exit benchmark before and after this change?  I 

The process teardown time has slightly decreased for forkbench of
the suite.
I need to run something specifically designed for measuring
fork/exit/wait to figure the gain for classic fork->exec->->exit->wait
loop, the teardown time in forkbench is dominated by other factors.

> would also do a 4-job build of the source tree with this change to 
> heavily exercise the fork/exit/wait code path.

I want to do this, definitely.

Jaromir Dolecek <>  
-=- We should be mindful of the potential goal, but as the tantric    -=-
-=- Buddhist masters say, ``You may notice during meditation that you -=-
-=- sometimes levitate or glow.   Do not let this distract you.''     -=-