Angus Dorbie (dorbie++at++sgi.com)
Tue, 15 Dec 1998 12:06:24 -0800
Cheers,Angus.
Marc Erich Latoschik wrote:
>
> Phil Keslin wrote:
> >
> > Marc Erich Latoschik wrote:
> > >
> > > Phil Keslin wrote:
> > > >
> > > > Greg Harrison wrote:
> > > > >
> > > > > I hit the same problem and the answer is an unfortunate one. If you do a
> > > > > 'man pthreads' under the section "Limitations" you get the joy of reading
> > > > > the following message:
> > > > > " Using sprocs
> > > > > The sproc(2) model of threading is incompatible with POSIX
> > > > > threads.
> > > > > Attempts by an sproc process to create pthreads and vice-versa
> > > > > will
> > > > > be rejected."
> > > > >
> > > > > By rejected they mean crash, because it will. For as much as SGI says on
> > > > > their own site (http://www.sgi.com/developers/marketing/forums/multi_thd)
> > > > > that pthreads are better (they are), everything in Performer is implemented
> > > > > with sproc() and therefore pthreads can't be linked in the same app, the
> > > > > only way to use them would be through a separate program and shared memory.
> > > > > OpenGL 1.1 is pthread compliant, but Performer will not allow them.
> > > > > Hopefully SGI will listen to their own PR about threads ("think pthreads!")
> > > > > and make Performer 2.3+ out of pthreads instead of sprocs.
> > > >
> > > > Actually, Performer does not use sproc. It is implemented using an
> > > > explicit shared storage model and fork (as opposed to implicit sharing
> > > > and sproc). It does however use arenas for the sharing which are also
> > > > incompatible with pthreads.
> > > >
> > > i thing we need a little more clarification on this point.
> > > About a year ago i tried to use pthreads with performer 2.0 together
> > > and...failed of
> > > course. Now i do the same stuff again with Performer 2.2.
> > > I launch a pthread for reading in tracker data in async fassion into a
> > > ring buffer.
> > > Then from my Update routine i just read the latest tracker data. And
> > > surprisingly: it works!
> > > And it uses pthreads and it uses Performer in any multiprocess mode. And
> > > a collegue
> > > of mine at a different institute uses pthreads too.
> > > It seems to work aurprisingly well.
> > > So now what is the case?
> >
> > What version of IRIX are you using? Prior to IRIX6.5 pthreads was
> > implemented on sproc features and would work together. As of IRIX6.5,
> > this is no longer the case. My guess is that you are not running on
> > IRIX6.5 and hence your program works correctly.
>
> Before I just answered only to you Phil,
> but i think it might be interesting to the perf community as well
> So here again.
> Yes i use Irix 6.2 and 6.4. I was about to migrate our primer demo host
> to 6.5, now i got reason not doing it ;).
> Well, are there plans to modify Performer in a future release to
> work with pthreads? Now that there is some kind of MP standard
> it would be nice to use it (especially when coding for different
> hardware like we do).
> Of course #ifdef IRIX <do nasty stuff> #endif will do the trick but
> makes live kind of unnecessary complicated. For me the sproc
> is more a relict when SGI were the only ones doing MP'ing.
> What do you think? What are the future plans?
>
> anyway, thx for your information
> >
> > - Phil
> > --
> > Phil Keslin <philk++at++engr.sgi.com>
>
> --
>
> bye
> Marc
>
> ********************************************************************************
> Marc Erich Latoschik, AG-WBS, Technische Fakultaet der Universitaet
> Bielefeld
>
> Universitaetsstrasse 25
> Postfach 100 131
> 33501 Bielefeld
> Raum M4-122
> Fon: (0521) 106 2919
> Fax: (0521) 106 2962
>
> marcl++at++techfak.uni-bielefeld.de
> http://www.TechFak.Uni-Bielefeld.DE/techfak/persons/marcl/
> ********************************************************************************
> =======================================================================
> List Archives, FAQ, FTP: http://www.sgi.com/software/performer/
> Submissions: info-performer++at++sgi.com
> Admin. requests: info-performer-request++at++sgi.com
-- "Only the mediocre are always at their best." -- Jean GiraudouxFor advanced 3D graphics Performer + OpenGL based examples and tutors: http://www.dorbie.com/
This archive was generated by hypermail 2.0b2 on Tue Dec 15 1998 - 12:06:29 PST