very fine-grain-locked systems often display convoying and
are prone to priority inversion problems. coarse-grained
systems exhibit all the granularity problems already described.
(the first purdue dual-vax system plowed most of that ground)
we published the best Unix SMP paper I've ever seen in Computing
Systems - from the Amdahl guys who did an SMP version of the kernel
by very clever hacks on SPLx() macros to make them spin locks and
a bit of other clever trickery on the source. they could take a stock
kernel and SMP everything but the device drivers essentially with
a SED script.
most interesting, they benchmarked it against their laboriously
reworked fine-grained kernel and under heavy multiprogramming loads
it performed better than the fine-grain kernel and essentially
never did materially worse. and with *many* fewer man-years
of hacking.
it might be worth digging out that paper for a looky. sorry i
don't have the citation off the top of my head, but i think the
Usenix online index would have it.
-mo
To Unsubscribe: send mail to majord...@freebsd.org
with "unsubscribe freebsd-hackers" in the body of the message