Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 7 Dec 2003 22:12:13 -0500 (EST)
From:      Christopher Sedore <cmsedore@maxwell.syr.edu>
To:        Daniel Eischen <eischen@vigrid.com>
Cc:        threads@freebsd.org
Subject:   RE: KSE system scope vs non system scope threads
Message-ID:  <20031207220608.P17628-100000@qwerty.maxwell.syr.edu>
In-Reply-To: <Pine.GSO.4.10.10311300937260.4461-100000@pcnet5.pcnet.com>

next in thread | previous in thread | raw e-mail | index | archive | help


On Sun, 30 Nov 2003, Daniel Eischen wrote:

> On Sun, 30 Nov 2003, Christopher M. Sedore wrote:
> >
[...]
> >
> > I'm using blocking connects.  Degradation is I should be moving ~5-7MB/sec
> > (and I do if I don't try to connect to any hosts that are down).  Once I do,
> > I see fluctuations from ~15-20KB/sec (note: KB) to 3-5MB/sec, somewhat
> > associated with when the connects happen.  Running libthr, I move 6-7MB/sec
> > consistently (until everything hangs up showing sigwait as the status in
> > top, anyway).  System scope threads turn in numbers from 5-6MB/sec.  (Note I
> > don't have any hang problems under KSE, only libthr.)
> >
> > On Monday I'm going to try David Xu's suggestion of trying v1.18 of
> > thr_spinlock.c to see if that helps.
>
> You should configure your mailer to wrap lines on outgoing mail...

Sorry.  This should be better.
>
> Are you using cancellation at all?  I just noticed that libkse doesn't
> seem to have a cancellation point for connect().

No cancellation.

> Are you doing anything in signal handlers that you shouldn't be
> doing?

I only use them to catch sigterm, so this shouldn't be an issue.

> Other than that, it sounds like a locking problem in the kernel.
> A thread blocked in connect() in the kernel shouldn't prevent
> upcalls allowing other threads to run.  It sounds like the upcalls
> aren't happening...

v1.18 of the thr_spinlock.c seemed to help.  I'm going to try to do more
testing this week.  As I noted in my other message, 5.2Beta won't run this
code on SMP machines (all my code is userland code, too), so it took a
while to actually get set up to try it out.  Now I need to set up kernel
debugging to see what's going on.

Of course, 5.2Beta won't run under VMWare either...sigh.

-Chris



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031207220608.P17628-100000>