On Sun, 30 Jan 2005, Colin Percival wrote: > Robert Watson wrote: > > since the callout_reset() is one of the more > > expensive parts of this code, Colin has been looking at some locking > > optimizations to lower the cost. > > To elaborate somewhat: I think I can avoid the spinlock cost when > callouts reset themselves (which is the case here). However, while this > will reduce the time spent in the callouts themselves, it's really only > a 50% solution -- softclock locks and unlocks the callout spin lock each > time it launches a callout. If we're spending 5% of our cpu time in > these two callouts, then they're actually responsible for using 10% of > our cpu time; I think I can cut that in half, but in the end we can't > avoid the cost of a mtx_lock_spin / mtx_unlock_spin pair (in softclock) > for each callout. On some further iteration, it transpired that Poul-Henning's configuration included WITNESS, and without that things look a bit more reasonable. We should still run the callout less often, if we can, and I think the optimization is useful. Robert N M WatsonReceived on Sun Jan 30 2005 - 17:59:58 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:27 UTC