Mantle vsync/framebuffers broken in windows 10

Discussion in 'Videocards - AMD Radeon Drivers Section' started by dox_aus, Aug 1, 2015.

  1. dox_aus

    dox_aus Master Guru

    Messages:
    301
    Likes Received:
    0
    GPU:
    MSi 290 Gaming CF
    Basically if you turn 'on' vsync in mantle games now, triple buffering etc gets broken, ie 120fps will drop to 60fps if it even drops 1 fps below 120. Crossfire will drop from 120 to 80. It is occuring in all mantle games ive tested (Bf4, DA:I, sniper elite 3, thief etc).

    Anyone else confirm?

    edit: this is with drivers pushed by win10 update & 15.7.1 (also on an upgrade win10 install and fresh iso install.
     
    Last edited: Aug 1, 2015
  2. janos666

    janos666 Ancient Guru

    Messages:
    1,645
    Likes Received:
    405
    GPU:
    MSI RTX3080 10Gb
    Yeah, I started playing DAI on monday (I upgraded to Win10 10240 when it came to the fast ring) and I wasn't satisfied with the Vsync in fullscreen exclusive mode. Starting from every settings at their maximum (Ultra + extra texture cache aka "Fade Touched" setup) with the exception of PPAA and MSAA at OFF (I figured I won't be able to afford MSAA and I don't like the post-process anti-aliasing which is usually a random hit or miss on jaggies but a constant hit on excessive blurring).

    I expected a somewhat smoother gameplay on my 290X (1150/1375 with Stilt gaming BIOS) with these settings when using the "mighty" Mantle. I figured the fps will move between 45 and 60 because I thought the game uses triple-buffering by default.


    At any rate, I disabled Vsync and iterated the settings to gain >=60fps in most situations (after a few hours of gameplay, I could collect some experience about graphically demanding areas, so I knew where to stand and look to make the fps tank and fiddle with the settings). I would have probably done this anyway because I prefer constant 60fps unless quality suffers irrationally (but in this game, it's the contrary, it's the performance which suffers irrationally with some settings at Ultra rather than High).

    And I also figured out how to turn off the annoying mandatory 'motion' blur with a console command placed in user.cfg (I really hate this effect. I play on a plasma TV to achieve sharp motion, so f¤ck off blur!).

    And then I turned Vsync back on for actual gaming...


    Although, the result is not perfect. Regardless of Vsync, I still have some semi-random slowdowns during actual gameplay (rather than starring statically at a demanding scene or smoothly moving the camera around in a demanding area). So, it would be nice to play with tipple-buffering and drop to 45 instead of 30 in these rare situations. (I say semi-random because it's somewhat reproducible by standing at some terrain peaks and making very fast mouse movements. It's either the same or a different slowdown cause...)

    I assume this random slowdown could be eliminated if the game could be set to use twice the texture cache. My GPU RAM utilization is ~40% and sometimes I can see that streaming isn't fast enough. I guess this is the cause of the random slowdowns (texture cache flushing and streaming).

    Isn't this (GPU RAM management) one of those perks which Mantle was supposed to make a lot more easier for developers? Why not use it then? Why can't the game detect the amount of free GPU RAM during the initialization steps and divine texture cache big enough to end up with ~85% total GPU RAM utilization instead of ~40%? I think 3-4Gb is pretty common today (and already was upon the game release), so limiting the usage to ~1800Mb with maxed out settings seems sub-optiomal.

    But this is only my guess, may be my slowdowns have nothing to do with texture streaming and caching. And these are rare.
    Also, Mantle seems to provide a slightly better average performance, even with a relatively fast quadcore Intel CPU (not only with some slow AMD CPUs and dual-core machines).
     
    Last edited: Aug 1, 2015
  3. DiceAir

    DiceAir Maha Guru

    Messages:
    1,369
    Likes Received:
    15
    GPU:
    Galax 980 ti HOF
    Having the same issue. In bf4 when playing on 2560x1440 96hz my fps will tank to 63fps and stay there. Also the frame pacing looks way off. It acts like the first time mantle came out. So i guess we should just use dx11 as AMD state they not going to work on mantle any more
     
  4. dox_aus

    dox_aus Master Guru

    Messages:
    301
    Likes Received:
    0
    GPU:
    MSi 290 Gaming CF
    Maybe amd are following nvidias lead in breaking things so we all upgrade to freesync monitors so you dont see the terrible tearing with vsync off. But yeh pretty unacceptable announcing they arent working on mantle anymore, and ends up broken 3 weeks later.
     

  5. yasamoka

    yasamoka Ancient Guru

    Messages:
    4,875
    Likes Received:
    259
    GPU:
    Zotac RTX 3090
    I'm offering a 50% discount on tinfoil hats today. Get one while it's still shiny!
     
  6. janos666

    janos666 Ancient Guru

    Messages:
    1,645
    Likes Received:
    405
    GPU:
    MSI RTX3080 10Gb
    I read this a lot here lately and I wonder...

    Was DX 11 doomed (from a user standpoint of view) from the very moment Microsoft stopped actively working on it?
    I guess not. If we discount the later optional additions like 11.1 and 11.2 (which brought a new feature level which was rarely used at the time due to asymmetric hardware capabilities between AMD vs nVidia+Intel; and later some general improvements with 11.2), they effectively stopped working on 11.0 before Win 7 was finished and released to manufacturing and thus the user-base ever saw a consumer software with DX 11.0 support (not even a tech-demo they could try at home, let alone games or CAD software...).
    And then DX11 development seemingly stopped completely with the release of Win 8.1 and DX11.2 -> Was DX11 doomed right from the very moment they closed the code of DX11.2 and released Win8.1?
    I guess not. It's still here, even after the recent official public release of DX12, DX11.x is still here and will remain dominant for a few years still.

    And DX11.x is high-level, not low-level like Mantle, thus it's more complex and requires more work from it's developers, both in terms of getting it working and maintaining / updating / upgrading over time as hardware evolves (hence 9->10->11 and 9.0->9.0a, 11.0->11.1 + minor transparent security and compatibility fixes via minor DLL revisions).


    Why would AMD need to work on a low-level API like Mantle if it's feature-complete (from their standpoint of view) and compatible with the officially supported operating systems (Windows) and hardware (GCN)?

    I don't think they meant they won't do any minor revisions to the code if necessary (like Win10 breaking some parts of the code which worked fine in Win8.1). And I don't think Win10 requires a deep code revision, merely a few small fixes.

    I don't think they have to do anything with Mantle until a Windows upgrade breaks the OS compatibility or GCN is superseded / goes through some heavy revision.
    For example, I don't think Fiji qualifies as such a new architecture. It's still GCN with minor update over the Hawaii era. HBM is strictly hardware and the only software standpoint of view is increased bandwidth. This might need some extra polish with DX11 drivers but not DX11 itself, let alone with Mantle.

    As much as I understand, it's all up to the software (game) developers now to optimize their Mantle code for some specific hardware (like the new Fury with increased bandwidth) if they see fit (it might not actually need any work at all, it depends how big of a change the hardware went through from the software's standpoint of view and if the code was rigid or flexible/adaptive to begin with).
     
    Last edited: Aug 1, 2015
  7. lycanwrath

    lycanwrath Member Guru

    Messages:
    127
    Likes Received:
    11
    GPU:
    AMD RX480 8GB ref
    BF4 mantle on Win10 just Crashes with "grwsiwintakefullscreenownership" for me.
     
  8. Mbi2011

    Mbi2011 Active Member

    Messages:
    52
    Likes Received:
    4
    GPU:
    Sapphire HD 7970 OC
    Have same problem with BF4 (dont have any other games, and can test sniper elite 3 later)
     
    Last edited: Aug 1, 2015
  9. leszy

    leszy Master Guru

    Messages:
    348
    Likes Received:
    39
    GPU:
    GB 7900XT Gaming OC
    For me Mantle is working very well in Thief and DAI. Remember to clean the mantle pipeline cache after each driver update. Game will rebuild it.
     
  10. dox_aus

    dox_aus Master Guru

    Messages:
    301
    Likes Received:
    0
    GPU:
    MSi 290 Gaming CF
    Heh are you trolling? Didnt you say in the other thread you are using a freesync monitor?
     

  11. artikot

    artikot Guest

    Messages:
    15
    Likes Received:
    0
    GPU:
    R9 295x2
    mantle working for me perfect in bf4 with 1046.2, i haven't got vsync on just ingame limiter@ 144fps, it's the best it's ever been for me really butter smooth @ultra with full aa
    also with this driver i'm getting 12m draw calls in mantle
     
  12. DiceAir

    DiceAir Maha Guru

    Messages:
    1,369
    Likes Received:
    15
    GPU:
    Galax 980 ti HOF
    I will test using another Mantle DLL
     
  13. DiceAir

    DiceAir Maha Guru

    Messages:
    1,369
    Likes Received:
    15
    GPU:
    Galax 980 ti HOF
    I just tested some more mantle games and when enabling vsync my fps will get stuck at 63/64fps. It looks like something is wrong with mantle and windows 10. Haven't tested windows 8.1 yet but I'm not planning on doing so. Maybe it's something to do with crossfire and mantle. I've tried older dll's but same issue.

    I hope amd or microsoft can get this sorted. I can play bf4 on ultra without msaa at 96fps 2560x1440 with mantle when I disable vsync. I have a framelimit of 95 to eliminate some of the input lag of vsync but no tearing. I get tearing without vsync and 95fps limit. i can pretty much maintain it in BF4 and BFH when settting to ultra without AA on mantle but not DX11.1


    Like I said without vsync I get major screentear even on 96fps limit.
     
  14. yasamoka

    yasamoka Ancient Guru

    Messages:
    4,875
    Likes Received:
    259
    GPU:
    Zotac RTX 3090
    They didn't say they're not going to work on Mantle anymore. They told the developers to focus on DX12 first instead. Don't get things wrong.

    As for bugfixes, they're not just going to halt bugfixing.
     
  15. yasamoka

    yasamoka Ancient Guru

    Messages:
    4,875
    Likes Received:
    259
    GPU:
    Zotac RTX 3090
    You get hitching (a duplicated frame) every second when capping FPS at 1 below the refresh rate. I don't know how some of you don't notice it.
     

  16. DiceAir

    DiceAir Maha Guru

    Messages:
    1,369
    Likes Received:
    15
    GPU:
    Galax 980 ti HOF
    Ok we talked about this before. I don't get any hitching or anything of that kind. I don't get any hitching and I can have the perfoverlay.drawgraph 1 thing in bf4 active and I don't get any hitching. Don't get started again plz. If I don't see hitching then I don't. I don't know how to proof this to you other than taking a crappy quality video with my phone and upload to youtube.

    Anyway if you can maybe explain a bit what this hitching is then i can understand more but like i said i don't see any hitching. Everything feels buttery smooth and I've tested 96fps vs 95fps and actually in many cases 96fps gives me more trouble than 95fps. I also play bo2 at 95fps and it runs without any hitching.
     
  17. yasamoka

    yasamoka Ancient Guru

    Messages:
    4,875
    Likes Received:
    259
    GPU:
    Zotac RTX 3090
    You do, you just don't notice it. PerfOverlay will not show you any hitching because as far as the game is concerned, you're getting a flat 95FPS. However, due to the mismatch between your FPS and your refresh rate, one frame will be duplicated in order to make 95FPS into 96 refreshes. This is fact.

    Look at it...clearly. Strafe, and watch a heartbeat pattern of 1 skip every second.

    It's more jarring than stutter for me.

    The only proper solution to avoid VSync on latency and VSync off stutter is G-Sync / FreeSync.

    If you want to prove whether it happens or not, you need to record video at 96Hz+, preferably a multiple of 96. If you manage to record a video at 96FPS, then I can play it back on my monitor at 96Hz. But don't bother.
     
  18. DiceAir

    DiceAir Maha Guru

    Messages:
    1,369
    Likes Received:
    15
    GPU:
    Galax 980 ti HOF

    Well isn't it about what I see. I see no stutter or at least I think so, so all good but still have the issue with mantle. I always say no matter what you go for and what fps you run and so on as long as you happy with what you have. Higher than 60hz is amazing but if people feel 60hz 1080p is just fine for them then so be it. I feel no hitching in my games and I tried by looking from left to right. going slowly and super fast and no hitching when running 95fps.
     
  19. CrunchyBiscuit

    CrunchyBiscuit Master Guru

    Messages:
    343
    Likes Received:
    126
    GPU:
    MSI GTX 980 Ti
    If your framerate is at 95fps and your monitor is at 96Hz, you will miss one frame every second. This should be perceivable. What Yamasoka said is solid science. Some call it a slight graphical 'stutter' or 'hitch'. Most accurate would be 'judder' or 'frame skip'.

    If you cannot see this skip every second, that could be because your refreshrate isn't actually 96Hz but maybe 95,5 or something. Your framerate might be 95,4 for example, which most fps counters will round down to 95. I don't know, I'm just grasping at straws. Some fps counters are off by a frame and not very stable when an internal frame rate limiter is used (some games on UE3 do this, game is visually capped at a rocksolid frame rate but the counter won't stabilize).

    You should be able to notice the frame skip, I know I am. You might not be playing with v-sync enabled, in which case you won't see a stutter or skip, but a tearline which moves from top to bottom. Or you might just not know how to spot slight visual anomalies like that yet, in which case don't even bother trying to. You won't be able to 'unspot' it once you take note, and that's a terrible world to live in.

    If you're running into more problems at 96fps instead of 95fps, it's because at 96fps your frame rate probably ends up being slightly higher than your refreshrate, which is almost never good in any game when trying to v-sync. It results in lag and some form of micro stuttering.

    My personal best method is to use CRU to make sure my refreshrate is slightly higher than my capped frame rate, but as close as possible, leading to an accumulated missed frame every minute and a half or so.

    In any case, what Yamasoka is trying to explain is very true. It could be some other thing causing the misunderstanding.
     
    Last edited: Aug 18, 2015

Share This Page