Certain games stutter with RTSS FPS cap despite flat frametime graph/no fps drops

Discussion in 'Rivatuner Statistics Server (RTSS) Forum' started by BlindBison, Mar 9, 2020.

  1. BlindBison

    BlindBison Ancient Guru

    Messages:
    2,419
    Likes Received:
    1,146
    GPU:
    RTX 3070
    To clarify in advance, I do NOT intend this as a slight at RTSS, I'm just trying to report what I'm seeing occur in specific titles and get more information about why/how RTSS works. If I'm wrong about anything here, I apologize and hope you guys will set me straight :) Thanks for your time. Of course I think RTSS is a wonderful tool and I appreciate the effort Unwinder has put into it over the years. Notably, this behavior did NOT occur for me in most games I tested.

    In the games I saw this occur, when I switched over to the in-engine limiters, this issue disappeared, so it's not the end of the world or anything, but I am extremely confused how I could be getting micro-stuttering while the frametime graph is perfectly flat and no fps drops are occurring. This occurred for me in both Battlefield V in DX12 mode as well as the Master Chief Collection: Halo Reach PC port using RTSS to limit framerate to 60 fps. At first, I thought it must just be the game itself since I first saw this behavior occur in MCC Halo Reach when trying to cap to 141 with RTSS + ingame unlimited fps setting, but frequent stuttering also occurred when I set a 60 fps limit in that title using RTSS.

    In Battlefield V, at first I assumed it was just shader compilation, but I ran the same level several times with different limiters (RTSS + new Nvidia Limiter + in-engine) and only saw this occur with the RTSS limiter set to 60 (though "most" of the time, it was quite smooth -- only occasionally did I see "jitter"/small stutter here and there -- notably, the frametime graph was perfectly smooth hence my confusion).

    Notably, if that WAS shader compilation, the frametime graph shows that, but I was seeing this with a perfectly flat frametime graph -- this sorta makes me wonder what the frametime graph actually is measuring -- is it measuring when the CPU releases the frame to the GPU or is it measuring when the GPU releases the frame to the monitor? (or something else) EDIT: It can measure either frame start or present depending on settings.

    I did some searching online and did come across this CompetitiveOverwatch thread where one commenter seems to be saying that RTSS "can" have animation jitter because of how it works despite delivering frames at an even pace -- I don't know if what he's saying is actually true, but what he's describing seems at glance to resemble what I'm seeing in the aforementioned titles:

    https://www.reddit.com/r/Competitiv...urce=share&utm_medium=ios_app&utm_name=iossmf

    > "So TL;DR for RTSS is: Measuring the frame times with RTSS just measures how accurately RTSS can introduce variable delay, and this variable delay introduces animation jitter."

    I have a G-Sync panel (1440p), a Ryzen 3900X, and a 2080 Super all at stock clocks if it's relevant.
     
    Last edited: Apr 19, 2023
    fluidz and Pyrage like this.
  2. BlindBison

    BlindBison Ancient Guru

    Messages:
    2,419
    Likes Received:
    1,146
    GPU:
    RTX 3070
    @RealNC Sorry to bother you, but historically you've been a real wealth of knowledge regarding this sort of thing. No worries if you don't get to it though, have a good one mate.
     
  3. RealNC

    RealNC Ancient Guru

    Messages:
    5,088
    Likes Received:
    3,370
    GPU:
    4070 Ti Super
    Well, some games just don't like it when RTSS blocks their frame presentation calls. The majority of games in my experience are fine, but there's never any guarantees.
     
    BlindBison likes this.
  4. BlindBison

    BlindBison Ancient Guru

    Messages:
    2,419
    Likes Received:
    1,146
    GPU:
    RTX 3070
    @RealNC Thanks, I was wondering about that -- to clarify, you are correct from what I've seen. The vast majority of games appear to behave fine with RTSS, but occasionally I've run into one that misbehaves.

    My real confusion here stems from the flat frametime graph -- do you happen to know what exactly that frametime graph is measuring? It seems to me it "should" not be flat/stable while still resulting in microstuttering, but I expect I'm missing something there.

    My expectation here is that for the Master Chief Collection, it's just not written especially well as, uncapping fps beyond 60 results in some truly horrible microstuttering (despite reaching the full fat 141 fps).

    The case that has me more concerned was Battlefield V in DX12 mode -- for that game, "most" of the time, the presentation was very smooth, but occasionally a microstutter would creep in -- which I would expect to see alongside a genuine fps dip, but not when the frametime graph is locked/perfectly flat.
     

  5. RealNC

    RealNC Ancient Guru

    Messages:
    5,088
    Likes Received:
    3,370
    GPU:
    4070 Ti Super
    It's the interval at which RTSS presents the frames. What those frames contain is another matter, of course. If the game gets confused by the blocking RTSS does and its animation timings gets thrown off, then those frames might contain hiccups.
     
    BlindBison likes this.
  6. BlindBison

    BlindBison Ancient Guru

    Messages:
    2,419
    Likes Received:
    1,146
    GPU:
    RTX 3070
    @RealNC Thanks! That's helpful -- I expect that this is what's probably going on in those particular titles. Frankly, MCC Collection seems to be a total mess -- anything other than capping the framerate in-engine at the 60 they provide stutters like crazy in my tests.

    Battlefield V in DX12 was the test that worried me more (though the animation/stutter there only happened more intermittently with a perfectly flat frametime graph) so I appreciate your explanation. I'll have to go back and test it in DX11 mode, but my bet is the issue doesn't happen then. Thanks again, was very helpful,
     
  7. Pyrage

    Pyrage Master Guru

    Messages:
    414
    Likes Received:
    51
    GPU:
    580 CF@ 1470
    Some games just do not like RTSS.
    Either because of their own fps cap options, the way they do vsync, the way they handle fullscreen (specially with some games only supporting fullscreen windowed, and doing it poorly)
    In world of warcraft RTSS totally breaks freesync, if I use it I will have tearing and stuttering issues, but if I use the ingame fps limiter then I have 0 problems.

    The best you can do in such cases is to just not use RTSS or tinker with the game's settings a bit, by disabling vsync, certain frametime options etc.
     
  8. TheMexican

    TheMexican Member

    Messages:
    25
    Likes Received:
    1
    GPU:
    MSI RTX 3070 8GB
    What about a game (The Witcher 3) that sometimes microstutters after loading a save ((only noticed this in a Novigrad Square save, also it isn't visible on the framerate/frametime graph) and keeps on stuttering in some spots) and sometimes it works absolutely fine after loading it? More often than not it doesn't stutter, but sometimes it does. The microstutter is barely visible, best visible when you are looking sideways at your character (running/walking) as stuff passes the camera view. Wtf? @RealNC
     
  9. TheMexican

    TheMexican Member

    Messages:
    25
    Likes Received:
    1
    GPU:
    MSI RTX 3070 8GB
    Disabling full screen optimizations seems to fix it.
     
    Last edited: Mar 30, 2020
  10. TheMexican

    TheMexican Member

    Messages:
    25
    Likes Received:
    1
    GPU:
    MSI RTX 3070 8GB
    Or maybe it doesn't...
     

Share This Page