Smooth motion with 40 series has really bad input lag

Unsure if it is just me but input lag feels insanely bad. Didn’t expect this and wasn’t this bad on window beta driver, there was input lag and was fine but not on this level as i would have made post on the forums when i had windows. Maybe this is driver issue or not, i wouldn’t know.

It looks really good like expected at least as it was on windows when i used it there.

I noticed starting up a game with the flag took some time to render, same with actually assets etc. I wonder if the upgrade cleared out shaders and were dealing with smooth motion latency + shaders. Going to run around my games and then relauch and see if they latency persists.

Forgot to add some details that might matter.

Gsync/adaptive sync enabled in KDE display configuration, fps limiter to less than monitor refresh rate.

Wayland.

I even tried few proton versions, hotfix and experimental.

Hi @glirosxqo115, thanks for reporting this. We’ll need some more details to investigate this. Which games are you using? And what are the in game Reflex and VSync settings?

The output from nvidia-bug-report.sh may be helpful as well.

1 Like

I found the issue. It seemed to be Goverlay fps limiter causing the inputlag with smooth motion.

Didn’t expect it, and figured it would work like any fps limiter but as we can see it did not.

On windows, fps limiter in NVCP did not cause this type of input lag even with smooth motion. Maybe in the future Linux could get an official fps limiter aswell that don’t do this? In some games ingame limiter don’t work, example like the finals or even have one.

Only reason fps limiter is being used is to make sure gsync stays active by having few frames less than refresh rate. Could be that is different on Linux and can just limit to monitor refresh rate ingame anyway and gsync still works. Didn’t get any tearing doing this with the game i had inputlag issues with which makes me think you don’t have to have the few frames less on Linux, but have to check other games.

Appreciate wanting to help, thanks.

Goverlay’s FPS limiter is likely implemented by a Vulkan layer that runs after Smooth Motion. This will delay pacing of generated frames, adding significant latency. To properly limit the framerate you would need to limit the app’s framerate to ~half the monitor’s display rate before frame generation happens.

The DXVK_FRAME_RATE environment variable will limit the app’s refresh rate. Or you could alter the ordering of the Vulkan layers so that your framerate limiter runs before VK_LAYER_NV_present. This will be tricky as the Vulkan loader does not have an interface to adjust the ordering of implicit layers. The Nvidia driver does not currently expose an FPS limiter.

1 Like

In the game i had issues i just set it to monitor refresh rate with ingame limiter, basically full not half and that worked fine.

DXVK_FRAME_RATE” works great! But figured i had to set it before NVPRESENT_ENABLE_SMOOTH_MOTION.

Now everything works perfect.

Thanks a lot for help!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.