Re: Timing between Application and Draw process
John Rohlf (jrohlf++at++tubes)
Wed, 30 Nov 94 10:48:58 PST
>
> I'm running Performer 1.2 on a 3 pipe 8 processor Onyx. I have a question
> about timing and the synchronization of the application, draw, and cull
> processes in multiprocessor mode (APP_CULL_DRAW). I'm running LOCKed at
> a frame rate of 60Hz.
> Initially, in the application process I used pfGetTime() after pfFrame()
> to get times for individual frames. The frame time was about 16.6-16.7ms
> which made sense. I have been working on some other code with which I used
> similar timing methods. It was reporting 16.7ms/frame, but obviously running
> at 30Hz. I added a pfGetTime() to the draw process and was rewarded by
> seeing frametimes of 33ms from the Draw process and 16.7 from the application
> process. I didn't think that the application and draw (and cull) processes
> could run at different frame rates.
> Aren't the processes locked to one
> another (1APP frame per 1 CULL per 1 DRAW) ?
No.
> Or are they just synchronized
> on frame boundaries ?
Yes.
> Does this mean that the application process can run a
> simulation at 60Hz while the draw process only runs it at 10Hz ?
Yes.
If the DRAW cannot keep up with the APP, then a draw-overload condition
exists. Note that the APP must not be slowed down by the DRAW for
real-time behavior. If you want 1 APP frame per 1 CULL per 1 DRAW
then call pfPhase(PFPHASE_FREE_RUN).
This archive was generated by hypermail 2.0b2
on Mon Aug 10 1998 - 17:50:42 PDT