Subject: Re: pthreads and pmax
To: Bob Lantz <port-pmax@netbsd.org>
From: John Maier <jmaier@midamerica.net>
List: port-pmax
Date: 05/24/2001 14:58:21
GNU-pth is a really cool non-kernel based pthread library.  Most programs run
faster under it and if your multi-threaded app really decides to *really* take a
dive, you'll get core dump and not a system crash.

It has two major draw backs....
1) It can't suport SMP; not that it is an issue with PMAX.
2) If you have a thread that hits a blocking call (like a blocking read...) you
app will hang.

Work around:
There is a configure option that will have it setup pth's compile so that it
will add to it's include file, externs for read and some other blocking system
calls and it hands them for you.  This is gives C++ fits sometimes, but it
typically works well.

It's been a year since I worked with pth (use to port new builds a lot) and
beside I have to go pick up my daughter from school to see Shrek so... read the
docs (interesting reading on thread theory) or shot a message to their mailing
list.

jam

----- Original Message -----
From: "Bob Lantz" <lantz@Stanford.EDU>
To: <port-pmax@netbsd.org>
Sent: Wednesday, May 23, 2001 6:53 PM
Subject: RE: pthreads and pmax


> I seem to recall that problems with pthreads, mySQL, etc. were related to
> not having ll/sc or an atomic store syscall on non-R4000 mips NetBSD
> systems.
>
> I wonder why you can't just use the memory system for synchronization -
> there are probably a number of synchronization algorithms that would work,
> and these wouldn't have the overhead of a system call,
>
> Bob
>
>