Jump to content

Replicating Stuttering in Menu’s


speed-of-heat

Recommended Posts

Hi @BIGNEWY

i encountered this problem intermittently, and I couldn’t track it down, until yesterday.

when I restarted after a change in options that forced a restart, and then there it was.

Even with cpu affinity set, core parking disabled etc… (cpu affinity, was still set, however resetting it will alleviate the problem).

for me the problem is consistently replicating if I do a forced restart from the options menu.

 

SYSTEM SPECS: Hardware Intel Corei7-12700KF @ 5.1/5.3p & 3.8e GHz, 64Gb RAM, 4090 FE, Dell S2716DG, Virpil T50CM3 Throttle, WinWIng Orion 2 & F-16EX + MFG Crosswinds V2, Varjo Aero
SOFTWARE: Microsoft Windows 11, VoiceAttack & VAICOM PRO

YOUTUBE CHANNEL: @speed-of-heat

1569924735_WildcardsBadgerFAASig.jpg.dbb8c2a337e37c2bfb12855f86d70fd5.jpg

Link to comment
Share on other sites

I can't add any meaningful insights into this, other than since the last update (DCS 2.9.1.48111) there seems to have been a change in the scheduler?
Loading up DCS (VR) gives me a frametime at 23-26ms in the menu often enough, it was supposed to be around 1.6-2ms before. 

Noticed also that when tabbing in/out sometimes the frametimes improve by over 15ms, sometimes after several launch attempts it also seem to run normal again
(at least in the menu)
 

This seems to be more a hit or miss situation now, freeflight supposed to be on the given settings at around 7ms CPU frametime, now often stuck at 25ms.
I have not found a reliable way to keep the performance somewhat stable .  (AMD CPU)

Did not spot anything in this regards in the changelog...

Link to comment
Share on other sites

Okay, I do have some update on this one too.....
It might have started in the initial 2.9 release, but I am quiet sure it started with DCS 2.9.1.48111.

The issue is the similar/same? as @speed-of-heat does have...(it reads like the opposite) the CPU frametime is about 10times higher than usually in the main menu. (in MT)
Instead of 1.6ms CPU frametime (what I usually got), the frametime is between 9.8-10.6ms. but even with this frametime it cannot maintain 45fps (VR), but it should...

This performance drop is also carried over into the game itself, not just the menu, and it's not playable...

 

After trying many many things, suddenly I noticed it went back to 1.6ms frametime on the CPU, and on the next DCS restart it went up again.
Literally all that is needed to 'alter' this behavior (this is NOT a fix) is to change a setting in DCS that does require DCS to restart.
(toggle full screen display on for instance, even when on VR, it's all about the enforced restart)
..and DCS is back to 1.6ms frametime in the menu for me and the in-game performance is great* again.

It tanks the performance again when I close DCS and open it again, have to do a settings change, which forces DCS to restart, and then it's fine again (for that session)

* with the given engine limitations...

 

So something does happen when DCS is restarting itself, I did not check if there are different command line arguments being used. 
I have it on Steam, and without renaming the 'bin' folder and create a symlink (or just copy over the stuff) there seems to be no way to start the steam version in mutlithreading via commandline.

 

Screenshot 2023-11-23 221544.pngScreenshot 2023-11-23 221713.pngScreenshot 2023-11-20 150353.png

Left: (mainmenu) DCS unable to reach 45FPS (VR setup at 90Hz, mathematically it should be able with those frametimes)
Middle: (mainmenu) after changing *any* setting in DCS that does trigger a DCS restart, 
Right: (in game) when the frametimes were inflated by x10 already in the main menu (left screen), it is not playable that way.


 

 

 


Edited by durp
  • Thanks 1
Link to comment
Share on other sites

SteamVR performance graphs attached.

There does not seem to be a different command-line argument between a regular start and a DCS-enforced-restart, checked with processexplorer

 

Just started DCS today, no settings changed since yesterday ('acceptable performance yesterday'), frametimes as bad as mentioned before,
graph is from mainmenu, as expected in game not playable (not shown, refer to previous post)

Screenshot 2023-11-24 110405.png

went then into the options, toggled fullscreen to force a DCS-restart (the value of the fullscreen setting does not matter, it's all about the fact that DCS does require a self-triggered restart)

and the frametimes were acceptable again, in mainmenu (shown), but also in game (not shown) (aka acceptable in game performance)

Screenshot 2023-11-24 110832.png

process explorer performance graphs (not much information shown, except the CPU usage)

'bad' state with mainmenu frametimes of 9.9ms
Screenshot 2023-11-24 110547.png

 

'good state', mainmenu frametimes ~1.6ms

Screenshot 2023-11-24 111039.png

 

some differences from the logfile (badrun, vs goodrun):
 

(pause10, standard deviation)

// BAD RUN
2023-11-24 10:32:20.337 INFO    EDCORE (Main): pause10: 0.016800 us (std dev: 0.014967)
2023-11-24 10:32:20.337 INFO    EDCORE (Main): pause10: 583 cycles (std dev: 410.2)

//GOOD RUN
2023-11-24 10:07:31.261 INFO    EDCORE (Main): pause10: 0.016777 us (std dev: 0.005829)
2023-11-24 10:07:31.261 INFO    EDCORE (Main): pause10: 583 cycles (std dev: 429.7)

rest does not show any real difference (other than TIME and THREAD ID changes) (and I hope those are not really sleep calls in the loops for thread synchronization....)

------------------------------------------------------------------------------------------------------------------------------

I am not much into benchmarking/performance graphs, maybe there are more/better tools that might give some insight. 
Happy to try those and post the results.
Noteworthy from the SteamVR performance graph might be 'compositor update end' and most noticeable the 'application interval'

Settings are the plain vanilla "VR" settings in DCS. During testing the last few days I did also rename the config folder.

At least for now... all I have to do to run DCS in acceptable performance is opening it, and if the frametimes are ~10ms in the mainmenu
(which is almost always the case, except once, where I had 2.5ms? didn't dig further as I was doing this to compare the log files)
goto the options, toggle a setting that requires DCS to restart (i.e. fullscreen, and again: the value does not matter, just that it changes to enforce a DCS restart)
and once DCS did restart itself, the frametimes are at 1.6ms in the menu and in-game performance is acceptable again.

 


Edited by durp
while(grammarBad()) { fixGrammar(); _delayms(1000);}
  • Like 1
  • Thanks 1
Link to comment
Share on other sites

I have observed the same behavior as @durp on two separate PCs now. One of them a completely new machine with fresh installs of Windows 11 and DCS: Sometimes after DCS starts, the CPU frame time is very bad for no apparent reason. In such cases, switching a setting that causes a DCS restart usually fixes the problem. @BIGNEWY perhaps that is useful information that you could pass on to your devs? Thanks!

Link to comment
Share on other sites

  • ED Team

Hi, 

I can mention it to the team but I am not aware of any issues regarding a restart being required to stop stuttering. 

It maybe a good idea to attach two dcs logs, before with stutter and after without, and let us know what setting was changed. 

thank you

smallCATPILOT.PNG.04bbece1b27ff1b2c193b174ec410fc0.PNG

Forum rules - DCS Crashing? Try this first - Cleanup and Repair - Discord BIGNEWY#8703 - Youtube - Patch Status

Windows 11, NVIDIA MSI RTX 3090, Intel® i9-10900K 3.70GHz, 5.30GHz Turbo, Corsair Hydro Series H150i Pro, 64GB DDR @3200, ASUS ROG Strix Z490-F Gaming, HP Reverb G2

Link to comment
Share on other sites

50 minutes ago, BIGNEWY said:

Hi, 

I can mention it to the team but I am not aware of any issues regarding a restart being required to stop stuttering. 

It maybe a good idea to attach two dcs logs, before with stutter and after without, and let us know what setting was changed. 

thank you

It was the other way around, the stuttering started after a restart from settings change

 

For me

 

SYSTEM SPECS: Hardware Intel Corei7-12700KF @ 5.1/5.3p & 3.8e GHz, 64Gb RAM, 4090 FE, Dell S2716DG, Virpil T50CM3 Throttle, WinWIng Orion 2 & F-16EX + MFG Crosswinds V2, Varjo Aero
SOFTWARE: Microsoft Windows 11, VoiceAttack & VAICOM PRO

YOUTUBE CHANNEL: @speed-of-heat

1569924735_WildcardsBadgerFAASig.jpg.dbb8c2a337e37c2bfb12855f86d70fd5.jpg

Link to comment
Share on other sites

The difference in the logfiles between the two 'states' in my case are already posted (literally went with a diff tool over them), the only different values are:

pause10, standard deviation

which could mean that the times are all over the place.. and they are... judging by the graphs.

Thread wise, the only other difference I have found so far is that on the first launch via Steam, the parent process is steam.exe and after an enforced relaunch of DCS the parent is the previous instance of DCS (dcs.exe)
I don't know what else to check, I am open for ideas, could even do process dumps for the good&bad runs and alike (via direct contact or ticket)

 

So far it is consistent for me that after launching DCS the frametimes are much higher (mainmenu, in-game not playable)  and a simple settings change followed by an enforced DCS restart sorts it out.

Slightly worried what else will happen, MT was running really good before (with the given limitations). At least I have a workaround for now.

Another symptom I have observed on the 2.9.1.48111 release is that SteamVR started to show the desktop on the VR headset while launching DCS and that the DCS authentication dialog was displayed in the VR headset... it did that never before... which made me worry this is running in some sort compatibility mode... and this does NOT happen when launching the ST version.

 

PS:
I tried the symlink trick to have bin and bin-mt refer to the same directory and launch DCS via commandline, no joy, the parent is still steam.exe
 


Edited by durp
Link to comment
Share on other sites

1 hour ago, durp said:

Thread wise, the only other difference I have found so far is that on the first launch via Steam, the parent process is steam.exe and after an enforced relaunch of DCS the parent is the previous instance of DCS (dcs.exe)
 

Interesting, both PCs where I encountered the problem also used the Steam version of DCS. Maybe it's somehow related to that?
 

Link to comment
Share on other sites

Could be. 
I will ask someone who uses the Standalone but uses SteamVR (Index, same as I use) what their parent process is, but I do expect it not to be steam.exe, since it's standalone.
(He doesn't observe this behavior.. but neither he bothers about frametimes)

Unless there is a way to start DCS without the need of Steam (aka without steam.exe being the parent) I would have to switch to the standalone for a testrun. Can't do that now as VFA is in 2 weeks.
My guts feeling tells me that the increased frametimes won't be observed then... but.. might also be SOL and the problem would persist.. just without any workarounds anymore... and I would have to wait 1 month before I can swap back to Steam.... (picked up that switching between steam<>standalone requires 1 month in between)

Can offer a  process dump, if ED is interested, via a ticket, and/or if there are other tools/stats I can try, just mention them.. maybe there is something that can give some insight. 
I (personally) suspect that dcs.exe is launched either in some sort compatibility mode within steam (particular because what is displayed during DCS launch) or that dcs.exe inherits some priority/affinity settings from the parent application (steam.exe)

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...