[osg-users] Enabling Vsync gives dramatic increase in latency

Jan Ciger jan.ciger at gmail.com
Mon Apr 20 09:08:15 PDT 2015

On Mon, Apr 20, 2015 at 1:28 AM, David Heitbrink <david-heitbrink at uiowa.edu>

> If I remember from my conversations with people at NVidia, the least
> amount of latency you can get is 2-3 frames I cannot remember the exact
> number.  If you select the additional per-rendered frames, this will
> increase this. Also remember your display will also add some additional
> latency as well. Some displays have motion blur reduction features and
> other features that can add to latency.
> We did a similar test were I work, using Quadro Cards + Quadro Sync, and
> we got end to end latency of around 75ms.

Whoa, that's quite a lot. How is that affecting interactivity (assuming you
are doing interactive work)?

> What we did for our test was trigger a A/D deviceto I think a go from 0 to
> 5v, and a we added a line in our fragment shader to over ride the color and
> set it to white, or black depending on a value of a uniform. We change the
> Uniform to 1 (to set it to white) and sent out our 5 v signal at the same
> time. Both were set at the start of a frame. We used a photo diode to pick
> up the change from black to white, and hooked that and our 5v signal to a
> oscilloscope.

Yep, that's a common way to do it, probably the most accurate too. Another
option is a hardware timer (e.g. a microcontroller - Arduinos are trivial
to use for that). Or a high speed camera, you blink a LED and then count
frames until the change appeared on the screen.

>   I am not sure that Quadro cards have any better latency, however one
> nice feature is you can use an Quadro Sync card + external house sync (i.e.
> you provide the 60Hz signal). This can make syncing the cards with external
> devices easier. If you have good sync between your graphics and your data
> generator you can effectively reduce the latency, or at least keep it more
> consistent.

My point about Quadros was that they enable differently optimized code path
in the drivers which, hopefully, focuses more on latency with vsync enabled
than on pushing as many frames per second as possible to boost the ego and
bragging rights of some gamer. The card itself likely doesn't make much
difference - GeForces and Quadros from the same generation are almost
identical silicon, but GeForces have some features disabled/crippled for
marketing reasons.

> As per the 75ms in latency I cannot at this point brake down were all of
> it is coming from, we are using projectors and we are going through some
> fiber converters to get from our video cards to the actual projectors.

Ah ok. Projectors can be terrible for latency, because of all the
complicated processing in them - but it depends on model and manufacturer.
Your converters probably don't add much, if anything - the translation from
copper to fiber can be done on the fly without significant buffering if it
is a dumb HDMI/DVI/DisplayPort "extension cable" and no actual data
conversion is being done.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20150420/608f6b2e/attachment-0003.htm>

More information about the osg-users mailing list