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

  • Ascaris - Saturday, July 29, 2017 - link

    You might be surprised. There are a bunch of us who are moving to 8.1 in order to avoid 10. On some of the sites I frequent, Windows 8.1 is probably about as popular as 7. Once people realize that you can de-stupidize 8.1 and have something that can ward off 10 for more than half a decade, it begins to look pretty good.

    It took something as bad as 10 to make 8 look like a reasonable product. I avoided 8 like the plague when it came out; I only migrated from XP to 7 well after 8.x had already become the new "Vista." But after a year of Windows 10, I looked back at 8.1 and wondered why I'd hated it so; it seemed so benign compared to 10. Yes, it needed a lot of help to get the UI into shape, but I realized that I used those very same tools on 7, so what difference would it really make if I did that on 8 also?

    I'm very demanding when it comes to what I will tolerate in a UI, and I'm very much a traditionalist, and I use 8.1 on both my main PCs. Windows 10, on the other hand, I would not even consider at this point. The main issues are in the first couple paragraphs here, but even if those were fixed, Windows 10 still would not be good enough because of its UI. Fix all of that and make it so I never need to see any UWP, ever, and then maybe I will reconsider, but not until then. When 8.1 runs out of security support, either 10 will have evolved into something I will use, or I will make the jump completely to Linux. I'm already halfway there; I dual boot 8.1 and Linux Mint 18.2 now.
  • Hurr Durr - Saturday, July 29, 2017 - link

    >muh loonix I`ll move to loonix I pinky swear

    Yeah, right. Loonix UX attempts by professional neckbeard autismos alone make any Windows look like something from the much better future timeline, and then there is loonix software written and maintained by 13-year olds.
  • Ascaris - Saturday, July 29, 2017 - link

    Your username is undoubtedly the most intelligent comment you've ever made.
  • gr33nbits - Sunday, July 30, 2017 - link

    Windows 10 is the best SO so far made by MS and why Linux? When you can have all in one like Windows 10 you prefer a dual boot with Windows 8.1 and Linux, makes no sense.
  • Cryio - Tuesday, August 22, 2017 - link

    I'm not using W8.1. I'm just surprised there isn't any official support.
  • Gigaplex - Wednesday, July 26, 2017 - link

    "For gamers, 17.7.2 includes quality-of-life changes for Radeon Software, fulfilling the top two most-voted feature requests: folding in Radeon Additional Settings into Radeon Settings, and bringing back advanced video feature options with new per-display color controls"

    I've only skimmed through this article, but this is promising. With the Relive branding, I lost the ability to configure things like pixel format (RGB vs YUV) and HDMI overscan. Both of which default to wrong values for my HDMI LCD monitor.
  • lowlymarine - Wednesday, July 26, 2017 - link

    Pixel format is definitely back for me in this new driver, though I never lost HDMI overscan controls in the first place so I'm not sure what to say there.
  • Gigaplex - Thursday, July 27, 2017 - link

    Maybe I just couldn't find the HDMI overscan setting in the new layout? *shrug*
  • nathanddrews - Thursday, July 27, 2017 - link

    I haven't updated to this version yet, but HDMI overscan settings were buried within "additional settings" in the first iterations of ReLive and would still pop up in the old CCC window.

    The last ReLive driver I tried had the overscan setting in the new format, but you could only change the overscan if you disabled Virtual Super Resolution. Seems like a stupid tradeoff.
  • Gigaplex - Friday, July 28, 2017 - link

    Nothing happens when I click "additional settings", that would explain why I couldn't find the buried HDMI settings. I also don't have the old CCC window, it was purged when I updated to ReLive.

Log in

Don't have an account? Sign up now