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

Jan Ciger jan.ciger at gmail.com
Sat Apr 18 04:27:41 PDT 2015

Hash: SHA1

On 04/17/2015 06:55 PM, Björn Blissing wrote:
> Valve is using another idea, which Alex Vlachos presented at GDC.
> They start rendering of a new frame 2 ms before VSync. Using some
> clever tricks to detect when Vsync is about to occur:
> See page 14-23 in the PDF at: 
> http://media.steampowered.com/apps/valve/2015/Alex_Vlachos_Advanced_VR_Rendering_GDC2015.pdf
This trick is something that has actually occurred to me yesterday
too, after I have sent you the reply about the low latency rendering
being not possible consistently for every frame.

The problem here is that you are very much at the mercy of a driver
writer here. Valve talks to all the major vendors and it is common to
have an Nvidia/ATI engineer to collaborate on optimizing code for the
releases of major games. Us, "mere mortals" will use the 2ms "magic
number" delay mentioned in the slides and carefully timed rendering
loop and two months later it will blow up in our face, because the
driver vendor changed the behaviour of the driver in order to optimize
it differently or because a new GPU was released where the "sweet
spot" is different.

I find these techniques to be really fragile kludges and not really
worth the effort most of the time - the saved 16ms of latency is
imperceptible for the most people and most LCDs have response times
(the time it physically takes to change the colour of a pixel) around
8ms+ anyway, so pushing down to ridiculously low limits is pointless -
you won't be able to see it.

If you really want lower latency, render at a higher frame rate which
will benefit the user more, giving them much smoother experience.
However, even there it is a battle with diminishing returns - it is
rarely useful to go over 60fps and it will cost you tremendously if
you do - both in the code and in the hw, because you will need a new,
high speed, monitor.

Hopefully the GPU vendors will provide us with some more reasonable
APIs to manage latency in the near future, as the need is now clearly
visible with the push for low latency VR.


Version: GnuPG v1


More information about the osg-users mailing list