tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: uvm_pageactivate, uvm_pageenqueue and uvm_pageqlock



> Hi,
> 
> With fork-intensive workloads there is a huge amount of contention on
> uvm_pageqlock. Most of it comes from uvm_fault_internal, which passes
> hints to the page replacement policy on ~every fault.
> 
> This patch changes uvm_pageactivate() and uvm_pageenqueue() to do an
> unlocked check to see if operation actually needs to be done. Only if
> true does it acquire the lock and call into the page replacement policy
> to do the work.
> 
>       http://www.netbsd.org/~ad/activate.diff
> 
> I am not sure what should happen for clockpro's uvmpdpol_pageisactive_p(),
> though.
> 
> Comments?
> 
> Thanks,
> Andrew

how do you think about retiring explicit activate calls and
setting page's reference bit using atomic ops instead?

YAMAMOTO Takashi


Home | Main Index | Thread Index | Old Index