Re: Question... (should be Pthreads & Performer)

New Message Reply Date view Thread view Subject view Author view

Phil Keslin (philk++at++cthulhu.engr.sgi.com)
Tue, 19 Jan 1999 09:38:03 -0800


Marc Erich Latoschik wrote:
>
> Phil Keslin wrote:
> >
> > Intermixing sproc threads and POSIX threads is forbidden. Since
> > Performer doesn't use sproc, the above should not be at issue.
> >
>
> Ahh, good to know. Now im confused. I have to keep this thread alive for
> just another question.
> How does this work together with your last information about Performer
> and pthreads?
>
> You just wrote:
>
> Actually, the bottom line is that there is a bug in the OpenGL
> implementation such that forked processes that use pthreads cannot
> also
> use OpenGL. The bug is being fixed for IRIX 6.5.3 (which should
> release
> soon). That means that pthreads should work with performer apps.
> - Phil
>
> And another info from dezember from you:
>
> 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.
> -Phil
>
> So what is the point now?
> Is it a bug in OGL that might be fixed in 6.5.3 or is it because of
> the use of arenas? It would be very kind of you to make a final
> statement about:
>
> 1) Why Performer and pthread don't work.
> 2) Why they might work (in another OS release cause of bugfixing)
> 3) I thought an incompatibility comes from the X-Server which is not
> (p)thread-safe (might be the same as the OGL bug you were
> referencing)
>
> Since lots of our work is based on pthreads, it would be very nice
> to know if it will still work (or even better) after e.g. a system
> upgrade.
> (currently 6.2 and 6.4). Or if we better stick to the older releases.

The definitive statement would be...

Performer will work with pthreads in many cases. That is, any case where
the library does not use sproc. Pthreads and arenas are compatible (so
long as recursive locks are not used and I don't think this is the case
with Performer). There are two cases where Performer uses sproc. These
cases include clipmap paging and terrain paging (there may be others, I
just haven't had the time to ferret them out). If you use either of
these features, then pthreads will not work.

If you do not use these features, then Performer will probably work
provided that the GLX bug is fixed (IRIX 6.5.3). With IRIX 6.5 the X
library has thread safe features enabled (see XInitThreads).

- Phil

-- 
Phil Keslin <philk++at++engr.sgi.com>

New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Tue Jan 19 1999 - 09:38:19 PST

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.