<div dir="ltr"><div class="gmail_extra">Hello Björn,<br><br><div class="gmail_quote">On Thu, Apr 16, 2015 at 2:59 PM, Björn Blissing <span dir="ltr"><<a href="mailto:bjorn.blissing@vti.se" target="_blank">bjorn.blissing@vti.se</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div id=":1au" class="" style="overflow:hidden">With these settings I have recorded the following latencies:<br>
<br>
Custom settings: min = 17ms, max =  42ms, mean =  30ms<br>
<br>
The mean difference between VSync OFF and this custom setting is 16 ms, i.e. about 1 screen refresh.<br>
<br>
I guess it is hard to push the latency any lower. Or is there any other setting which could reduce the latency even further?</div></blockquote><div><br></div><div>I think this is pretty good already. <br></div></div><br></div><div class="gmail_extra">At 60Hz one frame takes 16.6ms, so you cannot physically get under 17ms - the monitor will not be able to display the data even if you manage to send them faster somehow. The 30ms latency is about normal for a good monitor, it just means you are buffering one frame somewhere - typically the GPU or the monitor will do that for various reasons. With monitors/TVs it is called input latency and it occurs because of the various image decoding/processing/scaling/etc it does before it can physically push the pixels to the LCD. There are TVs that have 100ms+ of input latency - completely unusable for anything interactive (like game consoles). That's why many modern TVs often have a "game mode" where the fancy image processing is turned down or off to minimize this latency. <br><br></div><div class="gmail_extra">42ms likely means you have just missed the sync and had to wait or the OS did something in the background delaying your process, causing you to miss it. That would likely explain also why with VSYNC OFF you get lower latency - in that case you don't care at all about the vsync event and just blast the data into the GPU as fast as you can, even at the expense of tearing. <br><br>However, with all that said, the vsync logic in today's GPUs is very much decoupled from the physical refresh of the monitor or even the GPU actually starting to send the data on the wire. Thus the exact behaviour is going to be extremely hw and driver dependent - the same application can have wildly different latencies between machines or even driver revisions. It is one of the reasons why I don't see chasing after extremely low latency in VR applications using "crazy hacks" like the time warping or late latching as very productive - we are always going to be limited by the speed the of the displays, GPUs and the black box nature of their drivers and hw. I am not sure the extra complexity these things entail is worth the effort. But that is a story for another day ...<br><br></div><div class="gmail_extra">Jan<br></div><div class="gmail_extra"><br><br><br><br><br><br></div></div>