Why does "Ultra Low Latency" mode fix stuttering in some games? (Ryse Son of Rome for example)

Discussion in 'Videocards - NVIDIA GeForce Drivers Section' started by BlindBison, May 30, 2020.

  1. aufkrawall2

    aufkrawall2 Master Guru

    Messages:
    772
    Likes Received:
    106
    GPU:
    6800 reference UV
    In case of Crysis 3, it's really the ultra mode that's required for acceptable frame time consistency (it's the screenshot with less noticeably less spikes). I made screenshots with prerender limit 1 vs. app controlled, but I couldn't distinguish them when viewing afterwards. :D
     
  2. AsiJu

    AsiJu Ancient Guru

    Messages:
    6,978
    Likes Received:
    1,993
    GPU:
    MSI RTX 2070 Armor
    I played Prey again (gonna finish my playthrough) and tried with everything at default vs. ULLM.

    I didn't really remember having consistent stuttering in Prey earlier and didn't have now but there were some areas with erratic framerates.
    Enabling ULLM maybe helped a bit and capping fps with RTSS to below 138 fps (Gsync 144 Hz) helped a bit more.

    Regardless the difference wasn't huge and the game seems to have inexplicable framerate drops either way where neither CPU (core) or GPU are near max usage but fps drops from target.

    I'll try Ryse next.

    Oh and btw ingame Vsync disabled in Prey in both scenarios, on via NV CPL instead.
    Also I didn't monitor frametime graph but rather framerate and observed the screen while panning the camera or running.
     
    BlindBison likes this.
  3. AsiJu

    AsiJu Ancient Guru

    Messages:
    6,978
    Likes Received:
    1,993
    GPU:
    MSI RTX 2070 Armor
    Okay, tried Ryse and things get interesting:

    same setup as before, first everything at default, then ULLM on, then RTSS cap. Ingame Vsync off (never worked in Fullscreen in this game anyway).

    Virtually no difference between each step. While in general the game runs good, there are occassional hitches and stutters that I can't get rid of.
    Especially in the ravine / forest area, chapter 4 I think.

    I also retried setting sys_highrestimer = 1 to system.cfg (needed this tweak in the past) but that didn't help either.
     
    BlindBison likes this.
  4. BlindBison

    BlindBison Master Guru

    Messages:
    605
    Likes Received:
    108
    GPU:
    RTX 2080 Super
    @AsiJu Thanks for testing that out, that's really interesting -- strangely for Prey 2017, I started running into an issue where I simply could not get the ULLM mode to apply. So, it did apply initially (and I verified this both by the clear reduction in stuttering on my rig as well as the imposed 138 fps cap), but then for some reason the next time I launched the title, it would no longer have ULLM enabled. I tried resetting the profile in the control panel and reapplying this to no avail. I also tried forcing it in inspector but got an error when I tried to do so (very strange). What did seem to work is reinstalling the driver entirely then applying the ULLM mode to the game -- this would make it work for one launch then it would break again. Very bizarre -- haven't seen something like this happen since the old half-refresh v-sync bug with nvidia inspector on my old laptop (similar issue just with half-refresh v-sync, not ULLM mode).

    For Ryse, on my end, I do see an improvement clear as day where overall fps is increased a lot and stuttering is reduced significantly with ULLM mode enabled in the same way as Crysis 3.

    Makes me glad that @aufkrawall2 was able to reproduce what I'm seeing for Crysis 3 at least -- seems like maybe it just has to do with Windows 10 updates (or maybe Nvidia drivers I don't really know) breaking something since all of these games are not actively supported anymore. Interestingly on a totally different note, Nvidia's latest driver (the one with hardware accelerated gpu scheduling) totally breaks Detroit: Become Human -- had to roll back to get that game to stop crashing so driver issues definitely happen from time to time as far as I'm aware.
     

  5. AsiJu

    AsiJu Ancient Guru

    Messages:
    6,978
    Likes Received:
    1,993
    GPU:
    MSI RTX 2070 Armor
    Yeah should've mentioned these were on 445.98 driver version and 1909 build of W10.
     
    BlindBison likes this.
  6. BlindBison

    BlindBison Master Guru

    Messages:
    605
    Likes Received:
    108
    GPU:
    RTX 2080 Super
    Just a heads-up, I bet this actually is a driver thing given that Digital Foundry tested this forever ago and noted that depending on driver version for Nvidia they got stuttering in the game:

    Starting at 11:58 they mention this stuttering issue based on driver.

    So, my "bet" is that something in the driver broke all these older CryEngine games. Sorry to spam, I know people probably already came to this conclusion more or less, but figured I'd share DF's video on it anyway since they mention a very similar issue (and this was a long way back even).
     
    Last edited: Jul 1, 2020
  7. -Tj-

    -Tj- Ancient Guru

    Messages:
    17,173
    Likes Received:
    1,921
    GPU:
    Zotac GTX980Ti OC
  8. AsiJu

    AsiJu Ancient Guru

    Messages:
    6,978
    Likes Received:
    1,993
    GPU:
    MSI RTX 2070 Armor
    -Tj- likes this.
  9. aufkrawall2

    aufkrawall2 Master Guru

    Messages:
    772
    Likes Received:
    106
    GPU:
    6800 reference UV
    Just recalled: Nvidia added some weird aid for SLI for Ryse which also negatively impacted frame time consistency with single GPU. Try deleting the profile via Nvidia Inspector (and don't let GFE profile updates restore it).
     
    AsiJu likes this.
  10. CrunchyBiscuit

    CrunchyBiscuit Master Guru

    Messages:
    289
    Likes Received:
    64
    GPU:
    AMD Radeon HD6950 2GB
    Which is rather odd, since I have several cases here in which forcing a prerender limit of 1 clearly, undoubtedly and irrefutably negatively affects frame timing (stutters) and sometimes even frame rate (performance). It occurs rather often actually (in nearly ALL UE3-engine games, such as the borderlands series, but also in Kingdoms of Amalur, the Dead Space series, DiRT 2 & 3, Resident Evil Revelations 1, Resident Evil 6 and a bunch of others). My frame rate is always capped at a value just ever so slightly below my refresh rate (tear line slowly and calmly moves downwards from top to bottom when v-sync is disabled). It doesn't matter if I use RTSS or RadeonPro to cap the frame rate - forcing a prerender limit of 1 (Flip Queue Size = 1) is usually just not a good idea on my system.

    Mind you, I'm still gaming on my old trusty PC from 2010 (AMD, Win7x64):

    Processor: AMD Phenom II x4 970 (3800MHz)
    RAM: 4GB Kingston HyperX 1333MHz (7-7-7-20-33-1T)
    Videocard: AMD Radeon HD6950 2GB (Sapphire, DiRT 3 Edition)
    Motherboard: Asus M4A88T-M
    Sound: Onboard VIA HD Audio
    Operating System: Windows 7 Ultimate 64-bit
    Display: Dell 2209WA (1680x1050)
    Input: Logitech G400s mouse (1000Hz), generic keyboard
    Storage: Western Digital Caviar Black 7200RPM 1TB
    PSU: Corsair TX650
     
    BlindBison likes this.

  11. BlindBison

    BlindBison Master Guru

    Messages:
    605
    Likes Received:
    108
    GPU:
    RTX 2080 Super
    @CrunchyBiscuit I hear you — from what I’ve read previously, what you’re seeing is what I would expect on a rig with an older CPU. Again though I’m mainly basing this off of that AMD note from the google doc link earlier and CaptaPraelium’s BFV future frame rendering writeup (also linked earlier if it matters). Weirdly I think CaptaPraelium used to be on these forums too, but I haven’t seen him for awhile and doesn’t seem like I can tag him anymore though.

    Regarding your comment about capping FPS, I did message Unwinder at some point in the past to ask if an RTSS FPS limit directly changed the flip queue (do to an experiment RealNC did with prerender 8 + RTSS limit). iirc Unwinder said it does not directly change the flip queue (EDIT: looked it up again and what he said is: "It doesn’t interact with flip queue directly. But limiting framerate surely can indirectly reduce flip queue load." more specifically)

    What I’m doing personally at this point is just Low Lag Modes OFF (the default) with Future Frame Rendering for VR (separate setting in control panel) set to “Let the 3D App decide” — then, if I run into any issues game by game (like Crysis 3 as discussed above) where ULLM fixes the issue, I enable it for that particular game.

    I always appreciate your comments — is really interesting hearing what you run into given your older rig. Liked your comments on the texture filtering thread awhile back/your amalur tests there from awhile back for example.
     
    Last edited: Jul 4, 2020
  12. janos666

    janos666 Master Guru

    Messages:
    995
    Likes Received:
    159
    GPU:
    MSI RTX3080 10Gb
    @CrunchyBiscuit
    If I recall, this parameter used to effect nVidia more than AMD in Frostbite3 games in terms of performance (I lost more fps after setting renderahead to 1 from default -1 which is "auto" and probably ends up as 2). However, that was back in the days when AMD had really badly optimized DX11 drivers and I had a slower CPU (i5-2500K).
    When nVidia introduced LLM, Ultra seemed to cause stutters for me in several games I tested. After a few more releases though, that seems to be gone (at least for the games I tried).
    The strange part is that setting renderahead to 1 in Frostbite3 games still affect the fps regardless of how LLM is set in NVCP, so the nVidia driver probably can't override this parameter for the games which set it explicitly (rather than relaying on system/DX or driver defaults). However, in games which show a reaction to NVCP LLM settings somehow doesn't seem to show decreased fps (which is weird since renderahead 1 in Frostbite's dev.con. should be the same as setting LLM to On in other games, so other games should be expected to run a bit slower, unless Frostbite is extremely sensitive to this parameter and that's why the override this parameter).
     
  13. aufkrawall2

    aufkrawall2 Master Guru

    Messages:
    772
    Likes Received:
    106
    GPU:
    6800 reference UV
    I don't lose performance when setting renderdevice.renderaheadlimit 1 in BF4.
     

Share This Page