Question Please help with understanding FPS stability issue in Competitive Gaming - Fortnite on High End PC

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.
TIGEREXPERT
Posts: 10
Joined: 29 Aug 2020, 22:11

Question Please help with understanding FPS stability issue in Competitive Gaming - Fortnite on High End PC

Post by TIGEREXPERT » 14 Sep 2020, 11:42

Hello,

I need some help to understand why I still experience FPS stability issues (FPS drops) in certain Fortnite game situations while CPU, GPU utilization are low (never exceeding 20%). and temperature below 55C for both.

Please find below context, config + settings information, and questions down below.

Context:

I play Fortnite with high end PC that can reach max Framerate of 500-600 FPS (Fortnite Creative mode), up to 350-400 FPS (Battle Royale mode). But prefer to cap FPS at 237 in game all the time, for all game modes, to ensure consistent experience (for aim etc).

But average FPS can drop to 30 for 1 second, or to 120FPS for 5 seconds or 10 seconds, in certain game situations (early game, jumping from bus, scouting), while utilization of both CPU & GPU + temps are low.

My config:
CPU: 9900K 8cores 16threads (Hypethreading on, Turbo boost on)
GPU: 2080TI
Motherboard: GIGABYTE AORUS MASTER
SSD: 500GB SAMSUNG EVO PLUS NVME M2
RAM: 16GB 3600MHZ CL16
OS: Windows 10 Pro.
Monitor: AW2521HFL 240HZ with Gsync Compatible
Keyboard: Logitech G513 Romer G.
Mouse: Logitech G203, Polling rate: 1000Hz. DPI: 800.
Headset: Logitech Gaming Pro

Ingame-settings:
1920x1080, resolution 100%
View: Epic, all rest set to low (although Texture & Antialiasing can be set to Epic with zero impact on FPS. Tried it while testing uncapped with no Gsync or Vsync)
Multithreaded rendering On. All the rest off (vsync off, motion blur off, High definition resolution off..etc).
NVIDIA Control Panel Settings (use blurbusters low input lag advice: Gsync On + Vsync On + LLM On + Ingame Gap 237FPS ==> https://blurbusters.com/gsync/gsync101- ... ttings/14/)

Image Sharpening Off
Ambiant Occlusion Off
Anistropic Filtering Off
Antialiasing - FXAA Off
Antialiasing - Gamma Correction On
Antialiasing - Mode Off
Antialiasing - Setting Off
Antialiasing - Transparency Off
Cuda - GPUs All
DSR Factors Off
Low Latency Mode On
Max Frame rate Off
Monitor Technology Gsync Compatible
MFAA Off
Open GL Rendering GPU RTX 2080Ti
Power Management Mode Perfer Maximum Performance.
Preferred Refresh rate Highest available
Shader Cache On
Texture Filtering - Anistropic Sample Optimization On
Texture Filtering - Negative LOD Bias Allow
Texture Filtering - Quality High Performance
Texture Filtering - Trilinear Optimization On
Threaded Optimization Auto
Tripple Buffering Off
Vertical sync On
Virtual Reality pre-rendered frames 1
Virtual Reality - Variable Rate Super Off
Configure Surround Physx RTX 2080Ti
Adjust Desktop Size & Position (scaling) Perform Scaling on Display + No Scaling + Override the scaling mode set by games

Power Mode:
Bitsum Highest activated via Process Lasso.

Windows Graphics Tweaks:
Game Mode: On
Hardware Accelerated GPU Scheduling: Off
Graphics Performance Preference: set to High performance for all Fortnite executables (Fortnite.exe, Fortnite launcher.exe, Fortnite easyanticheat.exe, Battleeye.exe..etc).
Disabled HPET in device Manager
Use ISLC With 0.5ms Timer Resolution (I sometimes disable it, because it causes more fps drops then when off, dont know why).

Windows RegistryTweaks:

- CPU Optimization:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile]
"NetworkThrottlingIndex"=dword:ffffffff
"SystemResponsiveness"=dword:00000000

- Disabling MMCSS:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MMCSS]
"Start"=dword:00000004

- Higher GPU Priority for Games:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games]
"GPU Priority"=dword:00000008
"Priority"=dword:00000006
"Scheduling Category"="High"
"SFIO Priority"="High"

- Power Optimizations:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\2a737441-1930-4402-8d77-b2bebba308a3\d4e98f31-5ffe-4ce1-be31-1b38b384c009\DefaultPowerSchemeValues\381b4222-f694-41f0-9685-ff5bb260df2e]
"ACSettingIndex"=dword:0
"DCSettingIndex"=dword:0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\2a737441-1930-4402-8d77-b2bebba308a3\d4e98f31-5ffe-4ce1-be31-1b38b384c009\DefaultPowerSchemeValues\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c]
"ACSettingIndex"=dword:0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\3b04d4fd-1cc7-4f23-ab1c-d1337819c4bb\DefaultPowerSchemeValues\381b4222-f694-41f0-9685-ff5bb260df2e]
"ACSettingIndex"=dword:0
"DCSettingIndex"=dword:0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\3b04d4fd-1cc7-4f23-ab1c-d1337819c4bb\DefaultPowerSchemeValues\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c]
"ACSettingIndex"=dword:0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\4b92d758-5a24-4851-a470-815d78aee119\DefaultPowerSchemeValues\381b4222-f694-41f0-9685-ff5bb260df2e]
"ACSettingIndex"=dword:64
"DCSettingIndex"=dword:64

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\4b92d758-5a24-4851-a470-815d78aee119\DefaultPowerSchemeValues\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c]
"ACSettingIndex"=dword:64

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\7b224883-b3cc-4d79-819f-8374152cbe7c\DefaultPowerSchemeValues\381b4222-f694-41f0-9685-ff5bb260df2e]
"ACSettingIndex"=dword:64
"DCSettingIndex"=dword:64

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\7b224883-b3cc-4d79-819f-8374152cbe7c\DefaultPowerSchemeValues\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c]
"ACSettingIndex"=dword:64

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerThrottling]
"PowerThrottlingOff"=dword:00000001

Problem: while I have no issues at all in terms of FPS Stability in Creative Mode, I experience drastic FPS drops (sudden FPS drops from 237 to 20 FPS for 1sec OR average FPS becomes 120FPS for 10 seconds or 20 seconds at the start of the game, or in the middle of the game / or during some intense fights with many players) while hardware utilization is low CPU at 20%

Software I use to try to monitor overall performance:
LatencyMon (for Driver & Processes DPC latency monitoring), all is green and seems to work perfectly.
MSI Afterburner + Rivatuner (for real time graphics performance monitoring)
Nvidia FrameView (for graphics performance analysis)
Windows Performance Analyzer
GPU-Z
HwMonitor
Mouse Tester v1.5
Software I use to try to Tweak performance:
Process Lasso (bitsum highest profile, all apps use
Quick CPU
ISLC
NVCP
MSI Mode Utility2 (GPU set to MSI High)
Affinity Policy (I put the GPU Interrupts on GPU 14 & 15 => Core+Thread. Mouse & Keyboard USB hub on GPU 2 & 3 => Core+Thread).
Other:
All drivers have been installed with the latest from manufacturers' websites (Nvidia using DDU).
I deactivated many windows services, but this doesnt seem to be the issue at all
I set the sound quality to 16 bis 48000Hz and deactivated the High definition audio of the motherboard since I go through the Logitech Usb Ghub (instead of jack).
I debloated windows from all of the apps (Cortana, etc), deactivated all apps, notifications,
Adjusted the Windows Visual Effects to "Best for Performance"
Virtual Memory/Paging, set to Custom Size: 16gb to 32Gb (since I have SSD).
Added command line arguments to Fortnite Launcher: -USEALLAVAILABLECORES -NOSPLASH -PREFERREDPROCESSOR 16 -NOTEXTURESTREAMING -LANPLAY
Disabled full screen optimizations + High DPI Scaling "Override high DPI Scaling behavior" Scaling performed by "Application". on FortniteClient-Win64-Shipping.exe
My internet speed gets me a 25 Ping and 8mb/s.
Disabled mouse acceleration (from mouse settings & in registry) and set the cursor on speed 6.
I play fortnite on DirectX 11, because DirectX 12 brings more frequent and irritating FPS Drops (never understood why).
Questions:
- Could the fact that many online players are located in the same 3d arena in the game explain the FPS drops (such as in early game while waiting for bus in Fortnite, or when jumping from the bus at a crowded area; where FPS drops from 237FPS, to ~120FPS average, the more players appear, or while scouting with the mouse. Since as soon as I get in a less crowded arena say 2 or 3 players, or in empty areas, the FPS is stable at 237 when capped, and can go up to 400FPS when uncapped+vsync off)? How come since the CPU and GPU are barely utilized (<20%) and the ping+bandwidth do not seem to impact FPS at all. Can this be related to the NDIS.SYS Driver for example?

- To which extent does sound frequency or game sound effects impact FPS? Where does that translate? How can that be identified and fixed? As I do not see any impact in FPS Stability when changing the quality or the frequency of sound.

- Does Mouse polling rate stability influence FPS? How? Using Mouse Tester v1.5, I noticed that within 1sec, the polling rate can have a variability of 200Hz on average, from the 1000Hz set in Logitech Ghub software. I saw that this variability could be reduced (to reach 2Hz or max 5Hz variability) by changing the Interrupt affinity of the Mouse USB Hub, that I set to CPU 2&3. Although I tested changing the affinity with various CPU cores/threads, I could not figure out a way to improve this, at the same time, I am doubtful about the relationship between polling rate variability & FPS Stability.

- Since Fortnite is a CPU Based game, can CPU features like Turbo boost or Hyperthreading, impact negatively.

- Could this FPS Stability issue be coming from Fortnite Servers themselves? How, from a technical perspective ? Since Fortnite officially states that these issues are mainly related to the player's PC setup.

- What is the best tool or set of tools to perform a precise root-cause analysis for FPS drops. I want to be able to view the precise moment when the FPS dropped, and pin point the exact relevant factor that brought the performance decrease: power voltage? CPU? Windows or Device Driver? Specific Process? Since this problem is recurring, meaning, the FPS always drops the same way in the same situations (for example crowded areas).
Last edited by TIGEREXPERT on 14 Sep 2020, 15:03, edited 1 time in total.

User avatar
Chief Blur Buster
Site Admin
Posts: 11647
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Question Please help with understading FPS stability issue in Competitive Gaming - Fortnite on High End PC

Post by Chief Blur Buster » 14 Sep 2020, 12:49

You may need to break down your post into multiple smaller posts to get some quicker answers --

I see you tried to push full power and 100% CPU, so you've already tried that.

Yes, mouse poll Hz can have some really weird effects sometimes -- but mainly with the framerate feels and lagfeels (in more of a "Milliseconds Matter" manner where delayed polls are coalesced with the next poll, reducing mouse accuracy) -- but not necessarily much effect on absolute framerate. But it can have a motion-fluidity degrading effect and a lagfeel-effecting effect much like poor framepacing (poor poll pacing -> poor frame-position pacing, since gametime positions are often sync'd to mouse polls).

Also, do you have metallic thermal paste on your CPU? If you are seeing major changes in CPU clockspeed in realtime, you ideally want to minimize the wild CPU clockspeed gyrations as much as possible, while keeping clocks consistently high, and better paste with a watercooler block can help with that. This might not be your problem, but a utility to monitor your CPU clockspeed gyrations may be useful to diagnose the problem.

A CPU can rapidly change clockspeeds on its own volition, whether for power management (low utilization) or for protection (briefly thermally throttle) or to boost a single-core at higher speeds when other cores are idle (high speed single thread) -- some of it not affected by the granular power management settings accessible in Windows. The problem is the transitions between these states, when done sufficiently many times per second, can create lagfeel changes in rare conditions -- especially when they cause stalls/problems (faults).

Some (very) left field suggestions, that might or might not work:

** Test a very slight underclocking! CPU upclocking/downclocking can affect latency, so try a test-underclock of all your equipment, to force a stability -- clockspeed changes can actually happen many times per second, creating diffuse latency effects, happening too fast to be noticed on a realtime CPU clockspeed counter. Lock the CPU Hz, preventing it from going too low or too high. See what happens to latency. Stable 3 Ghz all-cores clock might sometimes more latency-stable than a wildly-gyrating 1GHz-5GHz swing. Overclocking can amplify these gyrations as CPUs can throttle portions of its silicon to keep within thermal envelopes, so while you see better performance in some apps, you might see worse performance in other apps when near the limits. The Intel Extreme Tuning Utility can help you lock an all-cores underclock. Disable all the features that causes clockspeed changes, including the Turbo Boost feature. Turbo Boost is useful but it doesn't stay on consistently during high-heat situations, your goal is consistency. Think about it this way -- even if your best game moments become 1% worse, your worst game moments will be more than 10% better (choose any numbers, but you get the idea) -- a worthwhile tradeoff of a slightly lower all-cores forced clock.

** Possibly, try temporarily running a CPU-hog application in the background (but keep only one or two cores busy), see how it affects variability. Some CPU stress test apps may allow you to configure them to rev just one core. This may force stable clocks on the rest of the CPU for the game. This may be done simultaneously with an intentional underclock.

There are many other unrelated tests that may work better than this, but sometimes this is a step-by-step to rule out possible causes. There are totally different troubleshoot paths.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

User avatar
jorimt
Posts: 2481
Joined: 04 Nov 2016, 10:44
Location: USA

Re: Question Please help with understading FPS stability issue in Competitive Gaming - Fortnite on High End PC

Post by jorimt » 14 Sep 2020, 13:35

TIGEREXPERT wrote:
14 Sep 2020, 11:42
But average FPS can drop to 30 for 1 second, or to 120FPS for 5 seconds or 10 seconds, in certain game situations (early game, jumping from bus, scouting), while utilization of both CPU & GPU + temps are low.
If this happens regardless of sync or no sync, and readouts are all good, then the short answer is disk access and/or network activity. Both of which you can do little to nothing about. Even with the most optimized system and best connection, there is no way to guarantee zero frametime spikes or frame drops, especially in online games. It's really as simple as that.

Certain games can also have their own internal performance bottlenecks that don't always reflect in readouts, and can't always be defeated by brute force PC specs, regardless of excess overhead.
(jorimt: /jor-uhm-tee/)
Author: Blur Busters "G-SYNC 101" Series

Displays: ASUS PG27AQN, LG 48CX VR: Beyond, Quest 3, Reverb G2, Index OS: Windows 11 Pro Case: Fractal Design Torrent PSU: Seasonic PRIME TX-1000 MB: ASUS Z790 Hero CPU: Intel i9-13900k w/Noctua NH-U12A GPU: GIGABYTE RTX 4090 GAMING OC RAM: 32GB G.SKILL Trident Z5 DDR5 6400MHz CL32 SSDs: 2TB WD_BLACK SN850 (OS), 4TB WD_BLACK SN850X (Games) Keyboards: Wooting 60HE, Logitech G915 TKL Mice: Razer Viper Mini SE, Razer Viper 8kHz Sound: Creative Sound Blaster Katana V2 (speakers/amp/DAC), AFUL Performer 8 (IEMs)

User avatar
Chief Blur Buster
Site Admin
Posts: 11647
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Question Please help with understading FPS stability issue in Competitive Gaming - Fortnite on High End PC

Post by Chief Blur Buster » 14 Sep 2020, 15:51

jorimt wrote:
14 Sep 2020, 13:35
If this happens regardless of sync or no sync, and readouts are all good, then the short answer is disk access and/or network activity. Both of which you can do little to nothing about. Even with the most optimized system and best connection, there is no way to guarantee zero frametime spikes or frame drops, especially in online games. It's really as simple as that.

Certain games can also have their own internal performance bottlenecks that don't always reflect in readouts, and can't always be defeated by brute force PC specs, regardless of excess overhead.
If this always happens regardless of PC, the old computer and the new computer, etc -- this is very true.

Network connection consistency can also be an issue here too, but that is an entirely different rabbit hole to fall in.

Such as Cable vs VDSL vs FTTH, residential vs business, gaming VPN service versus gaming VPN service, etc. A low unloaded latency connetcion can still have bad loaded ping jitter, affecting gaming, and if the stalls also make its way into the game framerate -- that can sometimes happen (doesn't happen with all games). Test offline gaming versus online gaming, to rule out these network-induced factors. And if there is, ISP roulette can help (Depending on the ping statistics, take that 100Mbps FTTH over a gigabit Cable connection. Or even a 120 Mbps Cable over a gigabit FTTH, if the backbone is actually crappy). And occasionally paying 3x more for a business connection improves things, but it depends on where you live -- very location dependant fix. Read the other threads if you want to play the expensive game of ISP roulette, it doesn't always solve problems, nor always improve things, but it's another thing to keep in mind.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

TIGEREXPERT
Posts: 10
Joined: 29 Aug 2020, 22:11

Re: Question Please help with understading FPS stability issue in Competitive Gaming - Fortnite on High End PC

Post by TIGEREXPERT » 14 Sep 2020, 16:46

Chief Blur Buster wrote:
14 Sep 2020, 12:49
You may need to break down your post into multiple smaller posts to get some quicker answers --

I see you tried to push full power and 100% CPU, so you've already tried that.

Yes, mouse poll Hz can have some really weird effects sometimes -- but mainly with the framerate feels and lagfeels (in more of a "Milliseconds Matter" manner where delayed polls are coalesced with the next poll, reducing mouse accuracy) -- but not necessarily much effect on absolute framerate. But it can have a motion-fluidity degrading effect and a lagfeel-effecting effect much like poor framepacing (poor poll pacing -> poor frame-position pacing, since gametime positions are often sync'd to mouse polls).

Also, do you have metallic thermal paste on your CPU? If you are seeing major changes in CPU clockspeed in realtime, you ideally want to minimize the wild CPU clockspeed gyrations as much as possible, while keeping clocks consistently high, and better paste with a watercooler block can help with that. This might not be your problem, but a utility to monitor your CPU clockspeed gyrations may be useful to diagnose the problem.

A CPU can rapidly change clockspeeds on its own volition, whether for power management (low utilization) or for protection (briefly thermally throttle) or to boost a single-core at higher speeds when other cores are idle (high speed single thread) -- some of it not affected by the granular power management settings accessible in Windows. The problem is the transitions between these states, when done sufficiently many times per second, can create lagfeel changes in rare conditions -- especially when they cause stalls/problems (faults).

Some (very) left field suggestions, that might or might not work:

** Test a very slight underclocking! CPU upclocking/downclocking can affect latency, so try a test-underclock of all your equipment, to force a stability -- clockspeed changes can actually happen many times per second, creating diffuse latency effects, happening too fast to be noticed on a realtime CPU clockspeed counter. Lock the CPU Hz, preventing it from going too low or too high. See what happens to latency. Stable 3 Ghz all-cores clock might sometimes more latency-stable than a wildly-gyrating 1GHz-5GHz swing. Overclocking can amplify these gyrations as CPUs can throttle portions of its silicon to keep within thermal envelopes, so while you see better performance in some apps, you might see worse performance in other apps when near the limits. The Intel Extreme Tuning Utility can help you lock an all-cores underclock. Disable all the features that causes clockspeed changes, including the Turbo Boost feature. Turbo Boost is useful but it doesn't stay on consistently during high-heat situations, your goal is consistency. Think about it this way -- even if your best game moments become 1% worse, your worst game moments will be more than 10% better (choose any numbers, but you get the idea) -- a worthwhile tradeoff of a slightly lower all-cores forced clock.

** Possibly, try temporarily running a CPU-hog application in the background (but keep only one or two cores busy), see how it affects variability. Some CPU stress test apps may allow you to configure them to rev just one core. This may force stable clocks on the rest of the CPU for the game. This may be done simultaneously with an intentional underclock.

There are many other unrelated tests that may work better than this, but sometimes this is a step-by-step to rule out possible causes. There are totally different troubleshoot paths.
Thank you very much for your answer.

1. Regarding Clockspeed gyrations due to Thermal Paste, I will investigate the potentiality of this issue. I am using a Watercooler (CoolerMaster M360R 240W TDP)

2. I totally agree with the principle (1% worse vs 10% better). Actually I noticed that during the FPS Drops while overall average CPU utilization was at ~20% or ~25% max, the per core/thread utilization was not even (say CPU 2 at 60%, CPU 1 at 3%, CPU 5 at 35% etc..). One CPU (CPU2) seemed to work harder at 60%. I never understood why the utilization of the game data by the CPU was not spread equally overal the cores, although I activated the multithreaded rendering (both in game + via Process Lasso + game launcher command line arguments). Then I thought that not only there must be other processes or drivers at play (in the background such as the drivers: Nvidia Windows Kernel Mode, DirectX Graphics Kernel, Kernel Mode Driver Framework Runtime, NT Kernel & System, that seem to have their own affinity policy..), but since the overall (and the per core) utilization is low, the problem was elsewhere. So I will deep dive the stable frequency and will revert back to you with the results.

3. Regarding the Mouse polling stability. Have you got any idea on how to reduce the frequency variability?

I tried changing the USB Hub affinity but it did not work. I read some advice online saying to disable Logitech Ghub at all cost or others suggesting to change the mouse as this must be a sensors issue. Before jumping to conclusion, I wanted to try out the relevant available technical options.

Please find below a screenshot of my G203 Mouse Tester results at 1000hz Polling rate (800 DPI), as you can see, while the majority of the polling rates are close to 1000HZ or below 100Hz variability, there are instances where the polling rate is at 500Hzand even 3000Hz. All within less than 1000ms of analysis time.

Image

Does this seem normal to you?

What is weird is that when I lower the Polling rate to 500Hz, the variability decreases to 20Hz (vs 100Hz or 500Hz), but this is still an overall 2ms latency vs 1ms latency of the 1000Hz instable polling rate.

Image

This is very annoying and I confirm that I feel sometimes that aim (although trained intensively via Kovaak's), still feels inconsistent sometimes. How to conclude this is a mouse sensor issue (vs affinity issue or any other more relevant or recurrent issue).

Again, many thanks for your valuable help. Meanwhile, I am proceeding with your suggestions for CPU stabilization. Best

TIGEREXPERT
Posts: 10
Joined: 29 Aug 2020, 22:11

Re: Question Please help with understading FPS stability issue in Competitive Gaming - Fortnite on High End PC

Post by TIGEREXPERT » 14 Sep 2020, 17:24

jorimt wrote:
14 Sep 2020, 13:35
TIGEREXPERT wrote:
14 Sep 2020, 11:42
But average FPS can drop to 30 for 1 second, or to 120FPS for 5 seconds or 10 seconds, in certain game situations (early game, jumping from bus, scouting), while utilization of both CPU & GPU + temps are low.
If this happens regardless of sync or no sync, and readouts are all good, then the short answer is disk access and/or network activity. Both of which you can do little to nothing about. Even with the most optimized system and best connection, there is no way to guarantee zero frametime spikes or frame drops, especially in online games. It's really as simple as that.

Certain games can also have their own internal performance bottlenecks that don't always reflect in readouts, and can't always be defeated by brute force PC specs, regardless of excess overhead.
Thank you for your answer. Yes I confirm that this FPS stability issue happens irrespective of the situation (tried uncapped first with low settings no sync at all, then with epic settings no sync, then epic settings + sync, or with any Nvidia Control Panel setting or Game setting On or Off, same drops, may be a little bit more intense drops when playing with these criteria: DirectX11 vs DirectX12, or with ISLC On vs Off, or with Shadows On vs. Off).

This disk access/network activity problem origin was a hypothesis I had in mind for a long time, and I thought that I could not do anything about it.

However, the curious thing is that this FPS Drops issue is very recurrent and nearly systematic, and it happens always the same way, during the same game moments, nearly at the magnitude. And these FPS Drops disappear completely most of the time, in most of game moments.

There is somehow a consistency in this framerate volatility and it is not happening randomly at all.

When starting Fortnite, I know that I will have consistent ~perfectly stable 237 Capped FPS (or even 360 capped FPS, and up to 400/500 un capped, with a ~20 ~ 50 FPS variability) in creative mode no matter what. I know that in Battle Royale mode, at the start of the game, in the waiting for battle bus area, the FPS will start at 237, then as soon as I move the mouse to view the other players, the FPS drops suddenly, and then the average rate decrease with more players joining the waiting area. Then it goes back to 237 FPS while inside the battle bus, then as soon as you jump from the battle bus, the FPS goes down to 120 FPS until I reach the ground, then it starts to stabilize, then the FPS is stable at 237 for 10 minutes, with few FPS Drops, here and there then it is stable again. It is always like that.

So I thought, this issue (Access/Network) cannot be inherent to online gaming. Since creative mode is online gaming with many players in game (~10 to 20 in general. Never any problem, may be not 100 players in a concentrated area though). This is why I was asking the question: to which extent players' congestion in a 3d area can influence FPS drops, and how come, overall GPU+CPU utilization remains low in those fps drops moments.

Also regarding network, I thought to myself that FPS Drops & Network issues are two exclusive points since:
- FPS Drops are driven by Hardware (GPU, CPU, RAM..) and Software (+OS) performance
- Network Lags are driven by Bandwidth + Ping + packet loss

This means that if the network is horrible, say Ping is at 1000, and bandwidth = 0kb/sec, and packet loss = 100%, the FPS can still remain stable at 237 FPS during the network lag. Am I missing something in this thought process ?

Assuming this thought process is correct (FPS exclusive from Network), then the issue is localized in the PC hardware setup or within the game engine or the drivers or processes..etc. And if the issue has nothing to do with Game Engine bugs (handling certain game moments causing FPS Drops), then one needs to figure out where the issue is located. And my current hypothesis is that it is the CPU frequency fluctuation as suggested by

One final thing, today I tried the DLSS feature of Fortnite (can be modified in Gamesettings.ini, will be officially available on September 17th as a game graphics option), this decreased the resolution by 50% while maintaining the quality at 1920x1080. I felt an improvement in game responsiveness (as if I was playing uncapped FPS, no sync in creative mode), the FPS drops felt somehow less laggy, but the Fps drops were in the exact same magnitude as without DLSS, at the exact same moments of the game etc. Since DLSS did not solve the FPS drops issue, and felt too blurry (their TAA antialiasing coupled with the still perceivable degradation of overall quality, decreasing vision clarity), I abandonned the option (as I do not have an image quality issue without DLSS, at low settings).

Again thanks a lot for your help.

TIGEREXPERT
Posts: 10
Joined: 29 Aug 2020, 22:11

Re: Question Please help with understading FPS stability issue in Competitive Gaming - Fortnite on High End PC

Post by TIGEREXPERT » 14 Sep 2020, 17:37

Chief Blur Buster wrote:
14 Sep 2020, 15:51
jorimt wrote:
14 Sep 2020, 13:35
If this happens regardless of sync or no sync, and readouts are all good, then the short answer is disk access and/or network activity. Both of which you can do little to nothing about. Even with the most optimized system and best connection, there is no way to guarantee zero frametime spikes or frame drops, especially in online games. It's really as simple as that.

Certain games can also have their own internal performance bottlenecks that don't always reflect in readouts, and can't always be defeated by brute force PC specs, regardless of excess overhead.
If this always happens regardless of PC, the old computer and the new computer, etc -- this is very true.

Network connection consistency can also be an issue here too, but that is an entirely different rabbit hole to fall in.

Such as Cable vs VDSL vs FTTH, residential vs business, gaming VPN service versus gaming VPN service, etc. A low unloaded latency connetcion can still have bad loaded ping jitter, affecting gaming, and if the stalls also make its way into the game framerate -- that can sometimes happen (doesn't happen with all games). Test offline gaming versus online gaming, to rule out these network-induced factors. And if there is, ISP roulette can help (Depending on the ping statistics, take that 100Mbps FTTH over a gigabit Cable connection. Or even a 120 Mbps Cable over a gigabit FTTH, if the backbone is actually crappy). And occasionally paying 3x more for a business connection improves things, but it depends on where you live -- very location dependant fix. Read the other threads if you want to play the expensive game of ISP roulette, it doesn't always solve problems, nor always improve things, but it's another thing to keep in mind.
I tried WTFAST VPN, since I got a free 6 months subscription when getting the 2080TI. It's a great tool. But honestly, it did not deliver better ping than the tweaks that I made in Windows Directly (using TCP Optimizer: disabling network throttling, power savings & wake modes..Etc in registry, putting the right DNS via DNSBenchmark), due to my geographical location. However, I consider 20 ping to be fine (with WTFAST I got 30-40 ping).

This is very interesting that FPS can be impacted by network. May be not in Fortnite, because I experienced situations where the Network was horrible (or let's say deactivated completely), but the FPS was still high and stable for a prolonged period of time. I do not really understand how online games work with data stored vs data flux.

I tried with War Zone, and had no major FPS stability issues at all like in Fortnite.

I finally noticed that many streamers and professional e-sport players (with the same setup) had the same drops in FPS in the same game moments (while watching their stream, they were having the exact same issue) while being located and connecting from different geographical areas (NA East, Europe..).

User avatar
Chief Blur Buster
Site Admin
Posts: 11647
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Question Please help with understanding FPS stability issue in Competitive Gaming - Fortnite on High End PC

Post by Chief Blur Buster » 14 Sep 2020, 18:06

More thoughts:

Earlier, I was thinking of adding a suggestion to double RAM to 32 gigabytes may help partially -- if the slowdowns are asset-streaming related. Basically a level is nowadays more than 16 gigabytes, so graphics churning can cause stalls as you turn around (especially when there is a huge level in view AND lots of players in view), which overflows the main RAM and GPU RAM, so it has to be streamed in/out of the SSD. Which can cause some early-game instabilities on first level load. But nowadays levels are so big, that early-game instabilities repeat itself.

The extra RAM thus, then caches the extra textures/graphics so that there's less streaming to/from SSD.

I don't think this is the problem after reading through your pos, but it can affect games. Basically better RAM might help your 0.1% frametimes caused by repeated gamestreaming of a single level, by improving caching of an entire repeatedly-played game level. But that might only help less than 0.1% of your game, and be not as worthwhile an upgrade.

As long as the immediate surroundings are loaded just fine, there would be no issues with the framerate valleys, so the RAM wouldn't matter for the majority of game play as 16 gig is sufficient, but with a single massive levels that no longer fit in memory, streaming becomes a mainstream part of a game, which can get very churny at the beginning when more of the level/players are concurrently in view (player textures + level textures being dynamically loaded and reloaded from disk). Let's say -- you might only see an immaterial improvement like a 10% improvement to your 0.1% frametimes, with 0% improvement to 99.9% of your other frametimes -- but it might be better than that.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

User avatar
Chief Blur Buster
Site Admin
Posts: 11647
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Question Please help with understading FPS stability issue in Competitive Gaming - Fortnite on High End PC

Post by Chief Blur Buster » 14 Sep 2020, 18:12

TIGEREXPERT wrote:
14 Sep 2020, 17:37
This is very interesting that FPS can be impacted by network. May be not in Fortnite, because I experienced situations where the Network was horrible (or let's say deactivated completely), but the FPS was still high and stable for a prolonged period of time. I do not really understand how online games work with data stored vs data flux.
Battle(non)sense is the specialist in this stuff -- YouTube channel.

It varies on the algorithms used. Most algorithms nowadays are used predictvely so you can move and turn without being throttled by the network. But if you're old enough to play synchronous networked games like NetDOOM (in year 1994), framerates were more locked to network quality back in those old days.

Then later games had certain movements that had no problems with certain movements (turning left/right with no lag) but lagged with other movements (e.g. moving forward was erratic framerate/lag).

Nowadays, network-to-framerate coupling effets are much more rare, but they can still exist with certain movements for certain games (e.g. laggy connection may only affect specific weapon behaviors or specific special movement type) -- it's a very game dependent behavior -- sometimes there's absolutely no coupling.

Your real-world local position can actually go out-of-sync with what the other players see, but the game engine tries its best with predictive algorithms to keep things in sync without inducing local latencies and/or framerate affecting behaviors.

This is common hitreg problem -- the visible target may be in different positions on all the different player screens -- and the correct registration of a shot can go wonky when everybody's latencies is different, because the algorithm prioritized your ability to move laglessly locally, despite other players having lagged movements. This didn't happen when movements used to be more synchronous in very old networked games (e.g. NetDOOM) which forced a major framerate-to-network coupling effect. This became impractical for the latencies and jitter of TCP/IP so now it's all asynchronous with predictive algorithms trying to keep things in sync (semi-successfully).
TIGEREXPERT wrote:
14 Sep 2020, 17:24
This means that if the network is horrible, say Ping is at 1000, and bandwidth = 0kb/sec, and packet loss = 100%, the FPS can still remain stable at 237 FPS during the network lag. Am I missing something in this thought process ?
That's how most modern games do it nowadays -- fully decoupled/synchronous behavior.

It does mean things go wonky, player positions being different on the different computer screens, with all the attendant hit-registration problems (you shot but it didn't score -- or you thought you missed but it actually hit/scored by chance)

Some games do a better job of compensating, and others do a worse job. Or sometimes it's a side effect of a playing-field-levelling algorithm (e.g. trying to keep things fair between all refresh rates, frame rates, etc). In some games, players with 10ms latency are automatically handicapped slightly compared to players with 30ms latency, if it's a server full of higher-lag players. These playing-field-levelling algorithms are frustratingly unpredictable, and vary hugely from game-to-game.

This happens less often if everybody has FTTH or everyone is on an LAN. For certain games, you can also always try to cherrypick servers containing players that are similar to your latency, but that will generally not automatically happen.

Playing game server roulette (if that is an option) can things to a certain extent, depending on your geographical location -- basically choosing to connect to preferred game servers that creates more balanced latency behaviors. For certain games, you generally prefer to play 30ms-vs-30ms-vs-30ms rather than a huge mix of latencies such as 10ms-vs-30ms-vs-100ms -- and on fast servers (so server-side performance jitter doesn't interfer with its own algorithmns). The network play can feel much better and more predictable.
TIGEREXPERT wrote:
14 Sep 2020, 16:46
Image

Does this seem normal to you?
I've seen better. It is unrelated to your framerate slowdowns, but you might as well also improve that a little bit.
-- Testing different USB ports can also have major effects, try comparing the USB2 ports versus USB3 ports (Even if mouse is USB1). I sometimes notice 1ms latency differences between different mouse ports, so mouse-utility test them to make sure you are plugged into the best possible port that is not shared with other USB traffic. Don't plug a high-bandwidth device to the port immediately above/below the mouse port, as they often share the same internal USB hub.
-- Testing a different brand mouse can help. You want a lot of headroom in your mouse sensor.

P.S. Unrelated, but I am personally a fan of 1600dpi+ (at half in-game mouse sensitivity versus 800dpi) in the 240Hz refresh rate race, since mouse slowturns can feel smoother / less steppy -- the higher the refresh rate, the more important tweaking mouse DPI is. However, this is likely not your weak link, and older sensors don't do 1600dpi very well. I even now recommend 3200dpi in certain situations (if that rate is available non-interpolated -- as in newest sensor). Your mouse sensor probably works best at 800dpi since it is a 2017 sensor, so it might be time to test out a different mouse sensor to see if it performs the 1000Hz better.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

User avatar
jorimt
Posts: 2481
Joined: 04 Nov 2016, 10:44
Location: USA

Re: Question Please help with understading FPS stability issue in Competitive Gaming - Fortnite on High End PC

Post by jorimt » 14 Sep 2020, 21:17

TIGEREXPERT wrote:
14 Sep 2020, 17:24
However, the curious thing is that this FPS Drops issue is very recurrent and nearly systematic, and it happens always the same way, during the same game moments, nearly at the magnitude. And these FPS Drops disappear completely most of the time, in most of game moments.
Not saying it's ultimately the case, but the fact that this is repeatable in the same places, at the same times, regardless of settings (or the system in question) points even further still to disk access for asset retrieval in this particular game, possibly both on the server (their system) and local (your system) side.

Could also be something else entirely. It's hard to say when focused at such a granular-level as this.
(jorimt: /jor-uhm-tee/)
Author: Blur Busters "G-SYNC 101" Series

Displays: ASUS PG27AQN, LG 48CX VR: Beyond, Quest 3, Reverb G2, Index OS: Windows 11 Pro Case: Fractal Design Torrent PSU: Seasonic PRIME TX-1000 MB: ASUS Z790 Hero CPU: Intel i9-13900k w/Noctua NH-U12A GPU: GIGABYTE RTX 4090 GAMING OC RAM: 32GB G.SKILL Trident Z5 DDR5 6400MHz CL32 SSDs: 2TB WD_BLACK SN850 (OS), 4TB WD_BLACK SN850X (Games) Keyboards: Wooting 60HE, Logitech G915 TKL Mice: Razer Viper Mini SE, Razer Viper 8kHz Sound: Creative Sound Blaster Katana V2 (speakers/amp/DAC), AFUL Performer 8 (IEMs)

Post Reply