Re: Clipfly & PFPHASE_LOCK

New Message Reply Date view Thread view Subject view Author view

Moshe Nissim (moshe++at++orad.co.il)
Sun, 28 Mar 1999 12:18:34 +0200


Ran Yakir wrote:

> Hi,
>
> I stumbled across a bug in IRIX 6.5 last week. I think that you
> experience the same bug. Are you running IRIX 6.5 ?
> Assuming you do, the bug is in sginap() call. sginap(1) should sleep for
>
> 10 milisec. On 6.5, it will sleep for 20 !
> Performer uses sginap(1) if you are running on a rate lower than the
> display rate (i.e. running at 30 Hz). After your channel draw function
> is done, it will take the time, and use a couple of sginap(1)s to sleep
> until almost the end of the frame.

Beside the sad fact that sginap() behaves this way on 6.5, why does Performer
use this technique of sginap() loop at all?
The OpenGL call glXWaitVideoSyncSGI() was constructed in such a way
that it can wait not just simply for the next vertical retrace. From its man:

               glXWaitVideoSyncSGI puts the calling process to sleep until
                the value of the vertical retrace counter modulo divisor
                equals remainder.

Wouldn't this be a better way to accomplish PFPHASE_LOCK ?

--
  Moshe Nissim,   Orad Hi-Tec Systems
  Tel: (972) - 9 - 7676862 (ext. 579)
  Fax: (972) - 9 - 7676861
  Email: moshe++at++orad.co.il

New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Sun Mar 28 1999 - 02:14:52 PST

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