Re: Clipfly & PFPHASE_LOCK
Phil Keslin (philk++at++cthulhu.engr.sgi.com)
Mon, 29 Mar 1999 11:29:38 -0800
Moshe Nissim wrote:
>
> Hi Ran,
>
> Another sad note about sginap() in 6.5, that I just found out:
> Even with realtime priority, it waits too long, for 11 ms instead of
> 10.
> It seems to me that some internal calculation figures one timeslice
> too many.
> With non-realtime priority, the timeslice is 10 ms (at least that was
> what it used
> to be pre-6.5), and you wake up one timeslice too late -- 20 ms.
> With realtime priority, the timeslice is 1 ms (again, what I know of
> pre-6.5), and you
> still wake up one timeslace too late, after 11 slices instead of 10 -
> 11 ms.
> Given this, your first workaround for Performer (running in realtime
> priority), still breaks
> for rendering times in a certain window.
> BTW, schedctl(NPRI,...) is no longer available in 6.5 (also not in
> 6.4).
> It is replaced by sched_setparam() and schd_setscheduler()
Reduce the nsec value in Ran's example (I've used 5msec) and you
shouldn't have a problem. The objective for the sginap is to relinquish
the processor to some other lower priority process (like DBASE) until
the swap can be issued (frame preceeding the vertical retrace).
- Phil
--
Phil Keslin <philk++at++engr.sgi.com>
This archive was generated by hypermail 2.0b2
on Mon Mar 29 1999 - 11:29:45 PST