On Fri, 18 Jun 2010 19:26:25 EDT erik quanstrom <[email protected]>  
wrote:
> note the extreme system time on the 16 processor machine

Could this be due to memory contention caused by spinlocks?
While locks are spinning they eat up memory bandwidth which
slows down everyone's memory accesses (including the one who
is trying to finish its work while holding the spinlock).
And the more processors contend, the worse it gets....

How well does plan9 lock() scale with the number of processor?

Since this is analogous to accessing a CSMA network, one can
use a similar algorithm to ameliorate the bandwidth problem:
if you didn't get the lock, assume it will be a little while
before you can get it so you might as well backoff.  There is
an old paper that talks about this.

Or it could simply be due to caching behaviour, if everyone
is accessing/mutating the same pages at the same time.

Reply via email to