Reducing Input Delay with Nvidia Inspector

Everything about latency. Tips, testing methods, mouse lag, display lag, game engine lag, network lag, whole input lag chain, VSYNC OFF vs VSYNC ON, and more! Input Lag Articles on Blur Busters.
User avatar
MaxTendency
Posts: 59
Joined: 22 Jun 2020, 01:47

Re: Reducing Input Delay with Nvidia Inspector

Post by MaxTendency » 03 Aug 2020, 15:40

Rallaz wrote:
03 Aug 2020, 14:50
DisableKmRender (0)
DisableKmRenderBoost (0)
EnableDirectFlip (1)
EnableIndependentFlip (1)
EnablePerformanceMode (1)
These were some more undocumented keys that I was testing out. They may or may not make any difference. DisableWriteCombining was the most impact-full one, pretty much everyone that tested this reported i) lower avg fps ii) better input.
Rallaz wrote:
03 Aug 2020, 14:50
I just tried the tweak you mentioned I'm not sure if I can feel any difference yet. I don't see any improvement in FPS on Rocket League I got like 1800fps
Which tweak specifically? The inspector custom profiles or the reg key? Also some of the profiles may actually reduce your fps in certain games in favor of better input since they lower certain buffer settings.

Also should be worth mentioning that you should ideally have c-state and other power saving features turned off in bios , have high performance power plan selected in control panel, on w10 consider de-bloating it either manually via iobitunlocker or with custom scripts , disable dynamic tick and synthetic timers by running the commands below on cmd.

Code: Select all

bcdedit /set disabledynamictick yes
bcdedit /set useplatformtick yes
Things I mentioned above can be some of the big sources of input delay, so if you don't feel the difference after applying the nvidia custom profile and/or disablewritecombining, it *maybe* due to having latency bottleneck somewhere else. Anyways may I ask what gpu driver version are you currently on, as well as your os (if w10 please include version as well, example w10 1709)

Rallaz
Posts: 45
Joined: 12 May 2020, 08:41

Re: Reducing Input Delay with Nvidia Inspector

Post by Rallaz » 03 Aug 2020, 16:29

I've done multiple tweaks bcdedit and many regedit tweakes, delboated windows, etc. Nvidia profile inspector etc.
Still looking for some last minor tweaks thats gonna let me be able to compete again in Rocket League sadly I cannot find these last ones thats gonna make the game fully competetive. Even tho my FPS is insane high it still doesn't help with the actual "input" lag, the game is usally better from day to day in "offline" mode even so something is really up with GPU or Windows I suppose.

ffs_
Posts: 47
Joined: 24 Jul 2020, 00:57

Re: Reducing Input Delay with Nvidia Inspector

Post by ffs_ » 04 Aug 2020, 04:45

I've tried "Riot Low_Latency_High_Performance v2" profile and it reduced "Video Memory Throughput" from 98-99k to 67k in winsat formal results. FPS in CS:GO benchmark map was also reduced from 485-490 to 460. It's not a big deal since I use separate OS for CS:GO and still have high FPS during actual match, but I didn't notice any improvements in responsiveness.

Will test registry tweak later.

User avatar
MaxTendency
Posts: 59
Joined: 22 Jun 2020, 01:47

Re: Reducing Input Delay with Nvidia Inspector

Post by MaxTendency » 04 Aug 2020, 05:41

ffs_ wrote:
04 Aug 2020, 04:45
I've tried "Riot Low_Latency_High_Performance v2" profile and it reduced "Video Memory Throughput" from 98-99k to 67k in winsat formal results. FPS in CS:GO benchmark map was also reduced from 485-490 to 460. It's not a big deal since I use separate OS for CS:GO and still have high FPS during actual match, but I didn't notice any improvements in responsiveness.

Will test registry tweak later.
Thanks for the benchmark and feedback. The fps reduction is somewhat game dependent I believe, since from my benchmarks I didn't lose any fps on Apex Legends, infact 1% and 0.1% lows were better with the melody profile. Also as I noted on my OP, these profiles might cause massive fps drops on OpenGL or Vulkan games. I currently use the "Riot LLHP" profile since input was better on it despite the lower 1% and 0.1% lows compared to "Melody Mod" profile.

Image

The base profile is everything default expect putting power management to "max performance" , max pre-rendered frames to "1" and other basic tweaks you find on every yt videos. All the tests above were done with "DisableWriteCombining" on a win7 , Nvidia 441.41 driver, 3700x, 1050ti , 720p, 3200mhz 16-18-18-36 system.

From my experience , in terms of input (tested in apex , kovaaks , diabotical , quake live) Riot LLHP > Melody Mod >>>> Base. Its interesting that you did not notice any input improvement. Anyways when you post your findings on the reg key could you also include your windows version as well as nvidia driver version.

ffs_
Posts: 47
Joined: 24 Jul 2020, 00:57

Re: Reducing Input Delay with Nvidia Inspector

Post by ffs_ » 04 Aug 2020, 08:21

Perhaps I didn't notice improvements because my settings were more or less optimized already.

There was a post by MelodyUT at NVIDIA forums, it's unavailable now (after forums update I guess), but I saved it just in case, here it is:

Code: Select all

Open up NVIDIA Inspector and show unknown settings (gears icon on top right).
Apply these settings ON A GAME PROFILE. ->DON'T<- APPLY THESE SETTINGS GLOBALLY.
These settings are optimized for the latest drivers and can deliver significant improvements in Source Engine and Goldsrc games.

2 - Sync and Refresh
Frame Rate Limiter - Off
Frame Rate Limiter Mode - 0x00000010 PS_FRAMERATE_LIMITER_2_CONTROL_ALLOW_ALL_MAXWELL
Maximum pre-rendered frames - 1

5 - Common
Power management mode - 0x00000003 PREFERRED_PSTATE_PREFER_CONSISTENT_PERFORMANCE
Threaded optimization - On

Other
Frame Rate Monitor - 0x4A5A3219 PS_FRAMERATE_LIMITER_GPS_CTRL_OPTIMAL_SETTING
Frame Rate Monitor Control - 0x00000010 PS_FRAMERATE_MONITOR_CTRL_FRL_OFFSET_SHIFT
Maximum frames allowed - 0x00000001
Memory Allocation Policy - 0x00000002 WKS_MEMORY_ALLOCATION_POLICY_AGGRESSIVE_PRE_ALLOCATION
Unified back/depth buffer - 0x00000001 OGL_SINGLE_BACKDEPTH_BUFFER_ENABLE
Virtual Reality pre-rendered frames - 0x00000001

8 - Extra
ASYNC10_ENABLE - 0x37605835 APP - Enable dual core optimizations unless the application requested to disable them
ASYNC10_NVAPI_MODE - 0x00000003 ALLOW_ALL - Allow all optimizations
ASYNC10_OOO_QUERY_LIMIT - 0x00010000 (Battlefield 3)
ASYNC9_ENABLE - 0x37605835 App - Enable AsyncDevice except in configs that do not work (some SLI, Optimus) or if the application requested to disable them
CULL_BEFORE_FETCH - 0x00000006 Dynamic
OGL_APP_CLAW - 0x00000001 Enabled - Enable the Workstation Performance Code, CLAW
OGL_APP_CLAW_OPTIMIZE - 0x00000001 Enabled - Enable the optimizing compile in CLAW
OGL_APP_CLAW_THREADS - 0x00000001 Enabled - CLAW threading
OGL_APP_CONSTANT_OPTIMIZE - 0x00000001 Enabled - Optimize based on constant values
OGL_APP_DIRECT_PUSHBUFFER - 0x00000001 Enabled - Use direct pushbuffer, not cached pushbuffer
OGL_APP_LAZY_VBUM_VBOS - 0x00000001 Enabled - Enable the Lazy VBUM optimization for VBOs
OGL_OPTIMIZED_IMMEDIATE_MODE - 0x00000001 Enabled - Fast immediate mode path enable
OGL_APP_VIDMEM_PUSHBUFFER - 0x00000001 Enabled - This app benefits greatly from vidmem pushbuffers
OGL_APP_YIELD_AFTER_SWAP - 0x00000001 Enabled - Call GL_YIELD in postSwapBuffers()
OGL_SYSTEM_TEXTURE_PROMOTION - 0x00000001 Enable - Textures being promoted from Sysmem to Vidmem
OGL_THREAD_CONTROL_2 - 0x0FC00008 (Unigine: Heaven 4.0 demo, Unigine: Tropics demo, Unigine Engine, Unigine: Sanctuary demo, Unigine: Valley demo, Unigine: Heaven demo)
OGL_THREAD_OPTIMIZATION - 0x0000001F ENABLE_ALL - Enable all threading optimizations
OGL_THREAD_OPTIMIZATION_GEFORCE - 0x0000001F Enable all threading optimizations
OGL_VID_HEAP_REUSE_RATIO - 0x00000064 Default - Control the amount of freed video memory the allocator reserves for reuse by future allocations. By default the allocator reserves up to 10% of the total VRAM. The units are in 1/1000ths of total heap. So 100 means 10%
PS_ALPHABETA - 0x00000002 Dynamic_VBIB - The driver adjusts a vb/ib ID unique Alpha fraction via AlphaBeta clocks
PS_ALPHABETA_FRACTION - 0x000000FF Max
SHADERMAXREGALLOWED - 0x00000400 Max - Specifies max register allowed when compiling/optimizing a shader
STAGING_CACHE_SIZE - 0x01000001 Max
SYSTEMCACHEDCOPYBEHAVIOR - 0x00000002 ALLOW_FOR_TEXTURES_WITH_SUBRESOURCES - Allow for textures with mips
My current settings (NVIDIA Profile Inspector): https://imgur.com/a/1dRYxnj (I didn't touch any hidden parameters).

Ryzen 3600X, 16 gb 3800 CL16 (16-16-16-16-32-48), GTX 980; Windows 10 v2004 (19041.331), NVIDIA driver 451.61, CS:GO @ 1920x1080 all low graphic settings.

User avatar
MaxTendency
Posts: 59
Joined: 22 Jun 2020, 01:47

Re: Reducing Input Delay with Nvidia Inspector

Post by MaxTendency » 04 Aug 2020, 10:04

ffs_ wrote:
04 Aug 2020, 08:21
Perhaps I didn't notice improvements because my settings were more or less optimized already.
Oh that explains, the "Melody Mod" profile is latest profile from the same person but slightly modded it myself. I would suggest trying out, "Moderate" memory allocation policy and see how that goes. There are also some settings in "Extra" that you might wanna fiddle around with. Try

ColorCompressionEnabled - on
D3D9_Control_Bits - Force 1bit compression
MCForceHostStagingBufferSize - 0x00000080 (if you wanna try lower than 80 some games *might* stutter)

User avatar
BTRY B 529th FA BN
Posts: 524
Joined: 18 Dec 2013, 13:28

Re: Reducing Input Delay with Nvidia Inspector

Post by BTRY B 529th FA BN » 04 Aug 2020, 20:22

are these reduce latencies measurable with LatencyMon?

chenifa
Posts: 51
Joined: 31 Aug 2019, 18:07

Re: Reducing Input Delay with Nvidia Inspector

Post by chenifa » 05 Aug 2020, 08:05

@MaxTendency
Thanks for sharing this stuff, I will test this and report back!
Can you send me invite to the discord channel in your signature, the link is expired I think.

User avatar
MaxTendency
Posts: 59
Joined: 22 Jun 2020, 01:47

Re: Reducing Input Delay with Nvidia Inspector

Post by MaxTendency » 05 Aug 2020, 10:34

BTRY B 529th FA BN wrote:
04 Aug 2020, 20:22
are these reduce latencies measurable with LatencyMon?
Unfortunately I dont think so. Heres my tests on 3700x , 1050ti , 441.41 nvidia driver.

Image
Image

These results above are useless since its just ryzen variance.
In order to get somewhat reliable results i'd have to turn off one ccx in bios and ideally disable SMT as well. Anyways, I did get someone on an intel system to test it out as well, and it showed little to no difference in latencymon.

Image

Here is more feedback from the intel user that benchmarked this:
  • In csgo fps got reduced by 2% with the custom profiles
  • Mouse movement was much more consistent and smooth (He also reported that mouse movement valorant also felt much more smoother)
  • Clicks felt faster
chenifa wrote:
05 Aug 2020, 08:05
Thanks for sharing this stuff, I will test this and report back!
Can you send me invite to the discord channel in your signature, the link is expired I think.
I updated the link, should work now. Also try to test multiple games and test how mouse feels before and after. Fps benchmarks are also welcome.

chenifa
Posts: 51
Joined: 31 Aug 2019, 18:07

Re: Reducing Input Delay with Nvidia Inspector

Post by chenifa » 05 Aug 2020, 11:22

Thanks I joined the discord!
As for the tweaks - the registry tweak makes mouse movement more crisp, I tested in kovaak with and without the tweak couple times. It's very noticable in click time scenarios like tile frenzy. Makes the crosshair less floaty and more controlable. Very nice!
Also I didn't get lower fps in apex, from my limited testing.

I tried the riot low latency profile and it messed up mouse movement for me. Subjectively it felt like uneven acelleration, sometimes too fast sometimes too slow. My performance in tracking scenarios in kovaaks was worse. Recoil control in apex was worse. Spamming wingman in shooting range felt worse.

Before I was using barebones(not even physx) 441.66 driver without touching profile investigator. GPU is 1080ti, old XEON processor and ddr3 ram 16gb, windows 10.
I forgot....using the profile gave me 20 fps MORE in apex, which is nice but I still reverted back now.

Post Reply