Before & After Under The Giant Lock

Christopher Chen muffaleta at gmail.com
Sun Nov 25 12:16:03 PST 2007


On Nov 25, 2007 12:05 PM, Christopher Chen <muffaleta at gmail.com> wrote:
> On Nov 25, 2007 3:13 AM, Robert Watson <rwatson at freebsd.org> wrote:
> > At this point, Giant is gradually becoming a lock around the tty, newbus, usb,
> > and msdosfs code, and we're largely at diminishing returns in terms of making
> > improvements in parallelism through removing Giant.  In FreeBSD 7, the focus
> > was on improving parallelism rather than removing Giant, with improvements in
> > locking primitives, the scheduler, and lock granularity.  For example, most of
> > the improvement in MySQL performance in FreeBSD 7 can be put down to a small
> > number of changes:
> >
> > - Conversion to 1:1 threads from M:N threads.
>
> Dear Robert:
>
> I enjoyed reading your overview of changes from FreeBSD 6 to 7 with
> regards to MP scalability, but I am a bit confused over this
> point--Doesn't the user still have the choice between libthread, which
> is M:N, and libthr, which is 1:1?
>
> At some point during the 6.x days, it was considered advantageous to
> use libthr when running MySQL. Has the project decided to go with
> libthread after all?
>
> Perhaps we're talking about entirely different things.

My apologies. I re-read your statement and it makes sense now.

I thought you were saying we were converting from 1:1 to M:N.

Sorry for any confusion!

-- 
Chris Chen <muffaleta at gmail.com>
"I want the kind of six pack you can't drink."
-- Micah


More information about the freebsd-hackers mailing list