Page 1 of 1

7800x3D Latency Mon Values

Posted: 30 Mar 2025, 18:48
by hot_coffee
Hello I am looking for other 7800x3D owners to compare Latency Mon values with, so that I know whether I can tweak my system even further.

Latency Mon
Runtime: 5 min (this is only the desktop without doing anything.)
Average Interrupt to process latency: 1,95 (will go up to 2,3 when gaming)
Average DPC: 0,8

PC
OS: W11 FoxOS
GPU: RTX 3070
RAM: 1x 6000Mhz 16GB CL34
Mainboard: Gigabyte B650 Gaming X AX

Coming from an Intel 10700K DDR4 CL14, I noticed more input lag on the 7800x3D, but I am not sure if it's the worse DDR5 timings or the AM5 CPU architecture itself. I enjoy the gained frames, but the system doesn't feel snappy anymore.

Re: 7800x3D Latency Mon Values

Posted: 31 Mar 2025, 07:52
by kyube
hot_coffee wrote: ↑
30 Mar 2025, 18:48
Hello I am looking for other 7800x3D owners to compare Latency Mon values with, so that I know whether I can tweak my system even further.

Latency Mon
Runtime: 5 min (this is only the desktop without doing anything.)
Average Interrupt to process latency: 1,95 (will go up to 2,3 when gaming)
Average DPC: 0,8

PC
OS: W11 FoxOS
GPU: RTX 3070
RAM: 1x 6000Mhz 16GB CL34
Mainboard: Gigabyte B650 Gaming X AX

Coming from an Intel 10700K DDR4 CL14, I noticed more input lag on the 7800x3D, but I am not sure if it's the worse DDR5 timings or the AM5 CPU architecture itself. I enjoy the gained frames, but the system doesn't feel snappy anymore.
1.) LatencyMon is absolutely useless for evaluating DPC/ISR driver performance on Windows.
Use ETW-based scripts such as xperf or xtw.

2.) Custom OS' break more things than they fix, make your own OS from scratch or follow Calypto's, Bored's, DjDallman's, ValleyOfDoom's (easiest) guide

3.) Running RAM in single channel is a significant performance bottleneck.

Re: 7800x3D Latency Mon Values

Posted: 31 Mar 2025, 14:09
by hazzahodgson
Image
heres mine just sat on desktop.
i know what you mean tho by it not feeling as "responsive"
i use a lot of latency tweaks. If you want to try them out, make a system restore point and try each of these, in order, 1 by 1 and see how it feels for you
download gointeruptpolicy https://github.com/spddl/GoInterruptPolicy. for your gpu and the pcie express root port its connected to, enable msi mode if its not already enabled, select device policy, irqpolicyspecifiedprocessors then assign it to 1 core. choose an even threads not an smt thread. you can check cpus tab on latencymon and find which core has the less isr/dpc processing going on then choose this. -this helps a lot with 1% lows and msi interupts causing small micro stutters.
choose a thread for each usb controller-disable any that you arent using. Make sure your usb controller that moues is connected to is on its own thread. you can get away with having the other controllers on the same thread as something else if there isnt any high polling devices connected to it. try keep mouse controller as close to core 0 as possible due to intercore latency. A lot of people recommend avoiding settings affinity to core 0 for anything as thats where msot of interupts and windows processing happens. but i have the best results as ive assigned a lot of things off to dif cores already. it avoids the intercore latency there.

Next up are some reg tweaks PLEASE make sure to make a restore point (not as important as setting msi mode but its still advised as changing msi setting for storage can mess up boot)
apply them in order, 1 group at a time and test(every ENTER space will devide the groups
12
12

131
414

122

like this)
but first, download and run this bat to disable power saving for devices(you can right click and edit in notepad to view contents if youre wary of running downloaded bats) https://drive.google.com/file/d/1JZ5hCr ... sp=sharing

now,

reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel" /v InterruptSteeringDisabled /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\dwm.exe\PerfOptions" /v "IoPriority" /t REG_DWORD /d "3" /f

reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\csrss.exe\PerfOptions" /v CpuPriorityClass /t REG_DWORD /d 4 /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\csrss.exe\PerfOptions" /v IoPriority /t REG_DWORD /d 4 /f


reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel" /v ThreadDpcEnable /t REG_DWORD /d 0 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v DpcWatchdogProfileOffset /t REG_DWORD /d 0 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v DpcTimeout /t REG_DWORD /d 0 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v IdealDpcRate /t REG_DWORD /d 1 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v MaximumDpcQueueDepth /t REG_DWORD /d 1 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v MinimumDpcRate /t REG_DWORD /d 1 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v DpcWatchdogPeriod /t REG_DWORD /d 0 /f

Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "ForegroundBoost" /t REG_DWORD /d "1" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "ThreadBoostType" /t REG_DWORD /d "2" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "ThreadSchedulingModel" /t REG_DWORD /d "1" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "AdjustDpcThreshold" /t REG_DWORD /d "800" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "DeepIoCoalescingEnabled" /t REG_DWORD /d "1" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "IdealDpcRate" /t REG_DWORD /d "800" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "SchedulerAssistThreadFlagOverride" /t REG_DWORD /d "1" /f


reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v UseHWDrawListEntriesOnWARP /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v ResampleModeOverride /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v RenderThreadWatchdogTimeoutMilliseconds /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v ParallelModePolicy /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableResizeOptimization /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableMegaRects /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableFrontBufferRenderChecks /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableEffectCaching /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnablePrimitiveReordering /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v OverlayQualifyCount /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v OverlayDisqualifyCount /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v ResizeTimeoutModern /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v ResizeTimeoutGdi /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableResizeOptimization /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableEffectCaching /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v HighColor /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v DisableDrawListCaching /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v AnimationsShiftKey /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v AnimationAttributionEnabled /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableCommonSuperSets /t REG_DWORD /d 1 /f

if you see an improvement go to next, if worse skip and try next. if youre happy then stop there and dont apply more to avoid any instabilities anywhere. Also make sure you have set your global timer reslution - https://www.youtube.com/watch?v=_Gi1PLg ... l=Hickensa

Re: 7800x3D Latency Mon Values

Posted: 01 Apr 2025, 11:01
by hot_coffee
kyube wrote: ↑
31 Mar 2025, 07:52
hot_coffee wrote: ↑
30 Mar 2025, 18:48
Hello I am looking for other 7800x3D owners to compare Latency Mon values with, so that I know whether I can tweak my system even further.

Latency Mon
Runtime: 5 min (this is only the desktop without doing anything.)
Average Interrupt to process latency: 1,95 (will go up to 2,3 when gaming)
Average DPC: 0,8

PC
OS: W11 FoxOS
GPU: RTX 3070
RAM: 1x 6000Mhz 16GB CL34
Mainboard: Gigabyte B650 Gaming X AX

Coming from an Intel 10700K DDR4 CL14, I noticed more input lag on the 7800x3D, but I am not sure if it's the worse DDR5 timings or the AM5 CPU architecture itself. I enjoy the gained frames, but the system doesn't feel snappy anymore.
1.) LatencyMon is absolutely useless for evaluating DPC/ISR driver performance on Windows.
Use ETW-based scripts such as xperf or xtw.

2.) Custom OS' break more things than they fix, make your own OS from scratch or follow Calypto's, Bored's, DjDallman's, ValleyOfDoom's (easiest) guide

3.) Running RAM in single channel is a significant performance bottleneck.
1) You're right, but latencymon gives a good rough overview of how busy the cores are and whether something is wrong with the latencies, so I am asking for values to compare with.

2) Custom os are very powerful, if you are aware of the risks. Nevertheless, I have already followed Calypto's latency guide, you can tweak the OS even further.

3) In my case, the ram is completely sufficient, I have slightly less fps but better responsivness in my specific game. I tested 2x16GB kit before.

Re: 7800x3D Latency Mon Values

Posted: 01 Apr 2025, 11:50
by hot_coffee
hazzahodgson wrote: ↑
31 Mar 2025, 14:09
heres mine just sat on desktop.
i know what you mean tho by it not feeling as "responsive"
i use a lot of latency tweaks. If you want to try them out, make a system restore point and try each of these, in order, 1 by 1 and see how it feels for you
download gointeruptpolicy. for your gpu and the pcie express root port its connected to, enable msi mode if its not already enabled, select device policy, irqpolicyspecifiedprocessors then assign it to 1 core. choose an even threads not an smt thread. you can check cpus tab on latencymon and find which core has the less isr/dpc processing going on then choose this. -this helps a lot with 1% lows and msi interupts causing small micro stutters.
choose a thread for each usb controller-disable any that you arent using. Make sure your usb controller that moues is connected to is on its own thread. you can get away with having the other controllers on the same thread as something else if there isnt any high polling devices connected to it. try keep mouse controller as close to core 0 as possible due to intercore latency. A lot of people recommend avoiding settings affinity to core 0 for anything as thats where msot of interupts and windows processing happens. but i have the best results as ive assigned a lot of things off to dif cores already. it avoids the intercore latency there.

Next up are some reg tweaks PLEASE make sure to make a restore point (not as important as setting msi mode but its still advised as changing msi setting for storage can mess up boot)
apply them in order, 1 group at a time and test(every ENTER space will devide the groups
12
12

131
414

122

like this)
but first, download and run this bat to disable power saving for devices(you can right click and edit in notepad to view contents if youre wary of running downloaded bats)
now,

reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel" /v InterruptSteeringDisabled /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\dwm.exe\PerfOptions" /v "IoPriority" /t REG_DWORD /d "3" /f

reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\csrss.exe\PerfOptions" /v CpuPriorityClass /t REG_DWORD /d 4 /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\csrss.exe\PerfOptions" /v IoPriority /t REG_DWORD /d 4 /f


reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel" /v ThreadDpcEnable /t REG_DWORD /d 0 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v DpcWatchdogProfileOffset /t REG_DWORD /d 0 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v DpcTimeout /t REG_DWORD /d 0 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v IdealDpcRate /t REG_DWORD /d 1 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v MaximumDpcQueueDepth /t REG_DWORD /d 1 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v MinimumDpcRate /t REG_DWORD /d 1 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v DpcWatchdogPeriod /t REG_DWORD /d 0 /f

Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "ForegroundBoost" /t REG_DWORD /d "1" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "ThreadBoostType" /t REG_DWORD /d "2" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "ThreadSchedulingModel" /t REG_DWORD /d "1" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "AdjustDpcThreshold" /t REG_DWORD /d "800" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "DeepIoCoalescingEnabled" /t REG_DWORD /d "1" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "IdealDpcRate" /t REG_DWORD /d "800" /f
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl" /v "SchedulerAssistThreadFlagOverride" /t REG_DWORD /d "1" /f


reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v UseHWDrawListEntriesOnWARP /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v ResampleModeOverride /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v RenderThreadWatchdogTimeoutMilliseconds /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v ParallelModePolicy /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableResizeOptimization /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableMegaRects /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableFrontBufferRenderChecks /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableEffectCaching /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnablePrimitiveReordering /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v OverlayQualifyCount /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v OverlayDisqualifyCount /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v ResizeTimeoutModern /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v ResizeTimeoutGdi /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableResizeOptimization /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableEffectCaching /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v HighColor /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v DisableDrawListCaching /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v AnimationsShiftKey /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v AnimationAttributionEnabled /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\WINDOWS\DWM" /v EnableCommonSuperSets /t REG_DWORD /d 1 /f

if you see an improvement go to next, if worse skip and try next. if youre happy then stop there and dont apply more to avoid any instabilities anywhere. Also make sure you have set your global timer reslution
Thank you for your detailed input! I am now at (5min desktop):
Average interrupt to process latency: 1,58
Average interrupt to DPC latency: 0,65
without applying the registry tweaks.

In my case I forgot to specifiy a core for the PCIE Controller and switched the core for the mouse controller to 0, it made a huge difference.

Re: 7800x3D Latency Mon Values

Posted: 01 Apr 2025, 18:40
by kyube
hot_coffee wrote: ↑
01 Apr 2025, 11:01
1) You're right, but latencymon gives a good rough overview of how busy the cores are and whether something is wrong with the latencies, so I am asking for values to compare with.
Easy question, which "latencies"? That's not what LatencyMon was meant to do.
If you haven't noticed, LatencyMon itself heavily impacts the results due to the severe performance overhead their driver applies to the system.
The way to optimise DPC/ISR in Windows is to:
1.) Choose the right I/O controllers (USB, Network, Audio)
2.) Choose the right drivers (vendor for ASMedia, avoiding Realtek audio drivers, trying out W7 AMD drivers)
3.) Grab a PCIe add-in card if necessary (ASMedia for USB, Intel 1gbit or 10gbit NIC, if RSS is needed)
4.) Optimising BIOS (disabling SMT, disabling power saving options,...)
5.) Optimising Windows (disabling defender & updates, adjusting power plan to avoid unnecessary ntoskrnl calls)
hot_coffee wrote: ↑
01 Apr 2025, 11:01
2) Custom os are very powerful, if you are aware of the risks. Nevertheless, I have already followed Calypto's latency guide, you can tweak the OS even further.
No, they aren't. They are mostly made by people who believe process count is what matters and have never heard of profilers and/or ETW reports.
hot_coffee wrote: ↑
01 Apr 2025, 11:01
3) In my case, the ram is completely sufficient, I have slightly less fps but better responsivness in my specific game. I tested 2x16GB kit before.
Is it sufficient? Your opening post suggests otherwise:
hot_coffee wrote: ↑
30 Mar 2025, 18:48
Coming from an Intel 10700K DDR4 CL14, I noticed more input lag on the 7800x3D, but I am not sure if it's the worse DDR5 timings or the AM5 CPU architecture itself. I enjoy the gained frames, but the system doesn't feel snappy anymore.
You are clearly experiencing a severe performance penalty due to single channel and/or perhaps microstuttering from your previous potentially unstable RAM (extreme) overclock.
Refer to https://www.nvidia.com/en-us/geforce/ne ... -platform/ to have a rough chart on the total latency stack.