low(er) disk performance with sched_4bsd then with sched_ule

Joseph Koshy joseph.koshy at gmail.com
Fri Sep 16 09:21:23 PDT 2005


jk> What happens if you use a kernel with 'options 
jk> NO_ADAPTIVE_MUTEXES' ?

ol> Hmm, that made it more worse
ol> http://pofo.de/tmp/gprof.4bsd.2

>From the profile it appears that with adaptive mutexes turned off the
kernel is spinning inside vm_pageout().

 41.1  vm_pageout [1]
 25.0  _mtx_trylock [2]
  5.1  smp_tlb_shootdown [3]

Hmm ... the dd command line *did* ask for about approx 2 GB of
zero-filled memory from the kernel while the machine has
about 640M.

I'm just not able to reproduce this kind of skewed
profile on -current on a uniprocessor amd64 and
on a P4 HT machine.

Just as an off-chance: how upto-date is your kernel?  In 
particular, do you have the following fix: 

"sys/vm/vm_pager.c:"
 revision 1.105.2.1
 date: 2005/08/15 14:04:47;  author: kan;  state: Exp;  lines: +1 -0
 MFC: Do not use vm_pager_init() to initialize 
 vnode_pbuf_freecnt variable.  vm_pager_init() is run before 
 required nswbuf variable has been set to correct value. This 
 caused system to run with single pbuf available for 
 vnode_pager. Handle both cluster_pbuf_freecnt and 
 node_pbuf_freecnt variableis in the same way.

-- 
FreeBSD Volunteer,     http://people.freebsd.org/~jkoshy


More information about the freebsd-current mailing list