Source-Changes archive

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

CVS commit: src/sys



Module Name:    src
Committed By:   chs
Date:           Thu Nov 13 02:44:02 UTC 2003

Modified Files:
        src/sys/kern: subr_pool.c
        src/sys/sys: pool.h
        src/sys/uvm: uvm_map.c

Log Message:
two changes in improve scalability:

 (1) split the single list of pages allocated to a pool into three lists:
     completely full, partially full, and completely empty.
     there is no longer any need to traverse any list looking for a
     certain type of page.

 (2) replace the 8-element hash table for out-of-page page headers
     with a splay tree.

these two changes (together with the recent enhancements to the wait code)
give us linear scaling for a fork+exit microbenchmark.


To generate a diff of this commit:
cvs rdiff -r1.87 -r1.88 src/sys/kern/subr_pool.c
cvs rdiff -r1.40 -r1.41 src/sys/sys/pool.h
cvs rdiff -r1.150 -r1.151 src/sys/uvm/uvm_map.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index