Re: Draw Lockup (was Performer Woes)

New Message Reply Date view Thread view Subject view Author view

Jean-Luc Dery (dery++at++Discreet.COM)
Wed, 29 Oct 1997 13:36:19 -0500


On Oct 28, 4:40pm, Rémi Arnaud wrote:
> Subject: Re: Draw Lockup (was Performer Woes)
> Jean-Luc Dery wrote:
> >
> > We are having the same problem on a 2 CPU Octane (IRIX 6.4), with a Perfo=
> > rmer
> > 2.1 multiprocess application set to either APPCULL_DRAW or APP_CULL_DRAW.=
> > The
> > call that seems to be causing this is pfuPrioritizeProcs( true ). When th=
> > e
> > application doesn't run as root, we get a notification: "must be root to =
> > set
> > non-degrading priorities" and every thing runs OK; but when running as ro=
> > ot,
> > the same thing happens, a total freeze and we have use the h/w reset butt=
> > on.
> >
> > Any idea on what's causing this ??!
>
> The placement is surely bogus. The good news is that you have the source
code
> of that routine in share/Performer/lib/libpfutil/lockcpu.c
> You can modify it and build your own libpfutil.
>

I resolved the problem by reimplementing the pfuPrioritizeProc function. This
call sets the non-degrading priority for all pf processes to the same value
which doesn't seem to be a good idea. By giving the pf draw process a slightly
higher priority than the other pf processes, you get rid of the deadlock. The
app process is probably waiting for swap buffer but is never giving the chance
to the draw process to do it, I assume. Perhaps by setting scheduling to round
robin with equal priority to all processes would do it two, but I haven't tried
it.

Jean-Luc

-- 
_____________________________________________________________________________

Jean-Luc Dery Discreet Logic System Engineer 10 Duke Street 3-D Graphics Technology Montreal (Quebec), Canada, H3C 2L7 Tel: (514) 954-7239 Email: dery++at++discreet.com Fax: (514) 393-0110 _____________________________________________________________________________

===================================List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/ Submissions: info-performer++at++sgi.com Admin. requests: info-performer-request++at++sgi.com


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:56:08 PDT

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