Developing a Better V-Sync: AMD Enhanced Sync

Last year, AMD had targeted stutter with DX12 frame pacing, and overall framerates with day-0/driver-over-driver improvements. For 2017, AMD is targeting input lag/responsiveness and latency, with one such method being the reduction of driver frame wait-times.

AMD has addressed such driver overheads in 17.7.2, noting increased responsiveness in certain games.

On lower latency, AMD’s major effort in 17.7.2 is introducing its latest sync technology: Enhanced Sync. The idea is that Enhanced Sync acts as an alternative lower-latency solution to V-Sync, which can cause high latency or stuttering in certain scenarios. Within Radeon Settings, Enhanced Sync is now an option under the vertical refresh drop-down menu. Because Enhanced Sync does not work for OpenGL applications, there is no interaction between Enhanced Sync and the OpenGL Triple Buffering option.

Above the refresh rate, Enhanced Sync keeps the frame rate unlocked and displays the most recently completed frame, in a manner roughly analogous to old-school triple buffering. The net result is that this reduces V-Sync’s average latency (also known as ‘input lag’) at high framerates. Though it should be noted that because a frame can only be presented at the next buffer flip, it still incurs a slight penalty to response time relative to V-Sync off, which AMD measured with a high speed camera.

Otherwise if the frame rate drops below the refresh rate, Enhanced Sync dynamically disables V-Sync falling back to V-Sync off behavior where a finished frame is immediately presented, decreasing the stutter that results from repeated frames. In turn, this does come with all of the drawbacks of having V-Sync off, namely tearing. AMD explains that enabling tearing this way is the best compromise in this situation, where low framerates typically result in only a single tearing "seam" on the screen at any given time.

For the time being, AMD is not providing any further implementation details for Enhanced Sync, and will let us know when they do. Likewise, during the slide deck presentation, AMD did not clarify if Enhanced Sync was an implementation of triple buffering when asked, citing an upcoming whitepaper on the topic. But at a glance, Enhanced Sync appears similar to a combination of NVIDIA’s Fast Sync (introduced with Pascal) and Adaptive V-Sync (introduced with Kepler). Regarding the latter, Adaptive V-Sync operates by selectively disabling V-Sync, which appears to be exactly how Enhanced Sync operates when framerates are below the refresh rate. In which case if AMD's implementation does behave similarly to NVIDIA's, then as we've already found with Fast Sync, to make the most of the technology you will need a framerate 2x (or more) higher than the refresh rate. This is because the closer the frate rate is to the refresh rate, the fewer opportunities there will be to "jump ahead" by discarding frames.

Finally, Enhanced Sync can work in conjunction with FreeSync, kicking in when framerates exceed the maximum FreeSync range. For FreeSync displays that don't support low framerate compensation (LFC), Enhanced Sync will also come into play on when framerates dip below the display's minimum FreeSync range. Enhanced Sync is officially compatible with FreeSync 2 and Radeon Chill as well, and works under DX9, DX11, and DX12 applications. Currently, Enhanced Sync is only supported on the gaming consumer driver, and thus does not support Radeon Vega Frontier Edition. Otherwise, according to Scott Wasson's accompanying Enhanced Sync blog post, Enhanced Sync is supported on the RX 400 and 500 series, as well as the upcoming RX Vega cards.

Radeon Chill 2017: Better Control, More Support GPUOpen Developer Tools: Radeon GPU Profiler and LiquidVR 360 SDK
Comments Locked

30 Comments

View All Comments

  • nampo - Wednesday, July 26, 2017 - link

    There is no "Enhanced Sync" setting in my R9 !
  • Cryio - Thursday, July 27, 2017 - link

    It's only for Polaris currently. It will be backported to GCN 1.2 and possibly GCN 1.1 later.
  • Alexvrb - Thursday, July 27, 2017 - link

    Wow that's nifty I actually wasn't expecting them to support E-Sync outside of Polaris.
  • ET - Thursday, July 27, 2017 - link

    It's nice that AMD has a feedback option, but meanwhile the AMD Issue Reporting Form doesn't work, and I haven't been able to report bugs. (In this case, bad interlaced video playback.)
  • StevoLincolnite - Thursday, July 27, 2017 - link

    I half expected a couple of benchmarks somewhere or something. Hah.

    Oh well. Downloading away. I miss the old GUI though, it was better suited to the PC, interested to see if I notice anything on my RX 580... AMD really needs some decent GPU's and stop playing around in the mid-range though. Vega can't come fast enough.
  • Threska - Thursday, July 27, 2017 - link

    Hopefully with this release Deus Ex: Mankind Divided will lose some of the lag it experiences when ran too long.
  • Alexvrb - Thursday, July 27, 2017 - link

    That sounds like either a Deus Ex issue or a "help my system is heatsoaked" issue.
  • novingate - Sunday, July 30, 2017 - link

    yes
  • novingate - Sunday, July 30, 2017 - link

    <a href="http://www.novingateco.ir/">درب اتوماتيک</a>
  • bluewaffles - Monday, November 20, 2017 - link

    https://bluewafflesdisease.info/ I read the title too fast, for a second I assumed they had tweaked the radeon software interface. I miss the old interface. The one that had a hierarchy on the left and the settings on the right. It was simple, intuitive and easy to use. Even after few years I am

Log in

Don't have an account? Sign up now