forum

[Archived] [Possible Multi GPU Issue] FPS Cap behaving weirdly on lazer

posted
Total Posts
11
Topic Starter
TailsTheFox_1
Problem details: This always happened, but it was pretty rare, now for some reason it's frequency increased drastically. Basically, the framerate will drop a lot during playtime and stay low, apparently randomly and by seemingly no reason at all, which does mess up some plays as the mouse feel very different very suddenly.

I recently upgraded my hardware and did a completely clean install of everything (the OS, drivers, game...) without reusing/moving programs over. Before, it would happen occasionally, like once or twice a week. Now with a stronger and cleaner system it may happen multiple times within seconds or go for whole hours without happening.
I've tried using some tricks with Project Lasso, on NVIDIA Control Panel, on the OS itself, Afterburner and RTSS, on lazer itself, nothing really solves it. Having the NVIDIA performance overlay on or be constantly recording a video seems to help reduce the frequency of it somewhat, but it still happens even so. It also happens regardless of the FPS cap (although I haven't tried at 1x VSYNC since it is quite unbearable) and on all render engines (OGL/Legacy, DX11).

Any clues on what could be going on or ways to diagnose it deeper? I have no issues with other games and applications, and I do use my PC for heavier tasks than gaming so I know it is in mint condition.

Information about the PC: Core i9 10900K, Scythe Fuma 2, MSI MEG Z490I Unify, RTX 2080ti, 2x16GB 3200MTs DDR4 RAM, Silicon Power P34A80 512GB, Win11 Pro (legitimate) 23H2 installed on 2024/01/17, 2560x1080@75 (also happens at 60), almost no programs running in the background (though it still happens right after booting or after weeks of uptime the same).
Previous PC where it would happen rarely had a Ryzen 5 3600, Asus Prime B450m Gaming, RTX 2060, Kingston A400 Sata SSD, a Win11 build I installed from a leak eons ago and had been updating ever since and the rest was the same.


Video or screenshot showing the problem: 7.2mb, MP4 AVC+AAC, 720p60, 32s: https://files.catbox.moe/6ytg9b.mp4


osu! version: Lazer 2024.131.0
sineplusx
With just the FPS counter its hard to troubleshoot this. Can you try recording the thing happening again with Ctrl+F11 pressed twice? That will bring up the more detailed frame statistics overlay.
Topic Starter
TailsTheFox_1
I did that first time but thought it was hard to see on the video so used this one instead. I'll record it again and update the post with the second link when I get it on camera again.

Update: got it like on the second song I played.
34.7mb, MP4 AVC+AAC, 1080p60, 40s: https://files.catbox.moe/drz9gn.mp4
sineplusx
This is really weird. The red bars (SwapBuffer) arent supposed to show up unless you request Vsync to prevent tearing. Its also curious how it gets limited to a multiple of the native refresh rate. I guess its probably not lazer at fault here, neither your hardware. With all the information you already provided I think I cant really help here. Here are a few shots into the dark nonetheless:

Try checking all background applications, especially those that can render overlays or interact with the GPU (You mentioned Afterburner/RTSS)

Force Vsync off at driver level if its possible

If you have the time you can download a Linux distro like Ubuntu (with the proprietary nvidia drivers) to a USB stick, run the Linux version of lazer and check if it happens there. That way you can make sure that the issue is local to Windows and/or other programs running in Windows.
SinlessVX
you possibly set your nvidia control panel to force vsync for osu
Topic Starter
TailsTheFox_1
Although I haven't reused files from the old install, the environment is pretty similar to before, just cleaner.
I've always used Afterburner+RTSS, Afterburner for tweaking the GPU (particularly fan curves) and RTSS for stats, but I'll play for a while without the stats enabled and if it still happens, without both programs running.
Note that, on RTSS the game doesn't have a profile anymore, so it not a case of accidentally forgetting it there.

About other applications, I do go out of my way to have as little things running in the background as possible, and have very few applications installed as well, so I'm not sure about that. As far as I know there's no other programs running or even installed that can overlay anything, maybe shadowplay? Which I had all this time before as well, I don't even know how to "close" it. I'll look deeper into that as well.

About the nvidia control panel, VSYNC is set to "controlled by the application" (which is the default), max framerate is set to "off" (default), power target is set to "adaptive" (from targetting low power) and an option that seems to have something to do with the application using multiple CPU cores (segmented optimization? unsure how it is named in other languages) is set to "auto" (default) and all other settings are on default too which does look fine/sane, but I will once again fiddle with it as well in addition to the other things.

If everything fails I will try on Linux, which I'm fairly familiar with but still isn't at the point I would choose to main it.


Update after a night of tinkering and playing
Afterburner and RTSS have zero effects, I've went as far as uninstalling them, no changes whatsoever.
No other applications with overlaying capabilities found anywhere in the system, disabled everything Game Bar related, disabled the Shadowplay overlay, no changes whatsoever.
I went a step further and removed all the tweaks I've did to my CPU and the memory profile on the UEFI, no changes whatsoever.
It apparently doesn't happen when playing on the iGPU (UHD630), though I haven't played an awful lot on it since performance is quite bad (extremely consistent though).

Now the nvidia control panel, that was an interesting headache. Most options there did nothing, except for a few of them as expected.
VSYNC: trying to set vsync to OFF or adaptive/adaptive half rate would completely wreck everything. The framerate would fluctuate hundreds at a time, and almost instantly get into that weird state with the red bars when playing a song. Setting it to Fast (or quick, not sure how it is called in other languages) had the most success, it reduced the frequency of that behavior considerably, though it increased stuttering a bit, input latency a considerable amount and framerate fluctuations, though nowhere near the other modes so still well within reason. Setting it to the default Controlled by the Application is the mode that I used before and that's now having this weird behavior I mentioned on the first post. It is, by far, the best one latency wise.
Low latency mode: setting it to ON seems to help a little bit with the input latency and makes both the CPU and GPU work a bit harder, but just that. Using ultra makes everything very unstable and the framerate variation varies in the couple dozens for more or less.
Segmented optimization (or however else its called): setting it to OFF increased input latency a ton, but didn't seemed to have much effect beyond that.
These are basically all the options that changed anything.

I also tried tinkering with the affinities and priorities of the game on Project Lasso further: pretty much anything I've tried with affinities either reduced performance or increased stuttering. Increasing the game process priority to High seems to help with consistency, but nothing else (this is consistent with my experience on my old system too).

The only two things that remains for me to try is running it on Linux, which I'm not sure when I will do since it might require changes to the UEFI that I'm not comfortable doing with my main Windows install still there, and playing stable to see if it happens there as well. I'll get stable and play there for a while since that is the quicker of the two options.

Note: this beatmap seems to fairly consistently trigger that behavior at around 70% progress (at least on the difficulty I play, Trynna's Insane): beatmapsets/646368#osu/1385056

Edit: It is happening on stable too ;w;
Is this the price I have to pay to up my hardware? Lose access to osu after all these years? Right after that rush of nostalgia from how good stable feels. I am almost giving up...
Espionage724
I'd try Windows 10. Windows 11 low-prioritizes apps or related processes it detects as not in-focus. I don't know specifics but I know it still affects VR in certain cases on 11 as of late 2023 and I don't use 11 today based on that inconsistent performance. If I'm not on Linux, I'm on Windows 10 LTSC.

TailsTheFox_1 wrote:

The only two things that remains for me to try is running it on Linux, which I'm not sure when I will do since it might require changes to the UEFI that I'm not comfortable doing with my main Windows install still there, and playing stable to see if it happens there as well.
If you can find a distro with a Live USB/DVD that includes NVIDIA's proprietary driver out-the-box (maybe PopOS?), I'd use that, and run osu!lazer's AppImage; no need to install the Linux distro or change any local data.

A random 5400 RPM HDD or another secondary drive could also be used to temporarily install Linux; disconnect or disable from BIOS the Windows drive before installing Linux and both OSs will be separate (the idea is to have Windows have its own EFI folder on its own drive, and Linux with its own EFI folder/partition on its own drive so neither can overwrite one another)
Topic Starter
TailsTheFox_1
Thing is, I've used Windows 11 for years, ever since before it was officially available when I installed it from a leak, and it always worked. In fact Windows 11 works remarkably well for me, even better than 10 did. Currently out of everything I do, osu is the one and only application that is behaving weirdly.

About Linux, I used to have a super minimal install on a separate HDD before I upped my RAM, I would use it for some encoding projects where I absolutely needed that 1gb of RAM Windows was using (and I've played lazer there a few times on short idle times too). But ever since I got more memory capacity (still with the old hardware at the time) I haven't needed to do that again, and since I didn't needed to keep doing it I've tighten up some UEFI options (which most linux distros don't like), and now use the HDD for storage.
If I can get one that works on a live environment without me needing to open up my UEFI too much then I will try it, but what exactly if it fixes it? I mean, again I've been playing lazer for all this time without issues, I can't just drop everything and move over permanently to another OS because suddenly one single application decided to act up...
Topic Starter
TailsTheFox_1
Update after a month of occasionally trying things

I actually haven't found a Linux distro that will boot (live environment, either via USB or DVD) on this build, all of them I tried result in a flat blue screen which seems to be from the motherboard asking for some kind of key file to install that I couldn't for the life of me find.

I thought I had narrowed that game behavior down to CPU voltages, it did stopped almost entirely after I changed some stuff and did a small overvolting on the CPU, but I was having problems with temperatures on long all core usage sessions which is pretty much all the time when I'm not gaming, so I decided to dial things back a bit and once again it is back, but this time even reverting things back to how it was when that behavior stopped doesn't make it stop completely anymore.
Then I thought it could be because I had a second screen connected to the iGPU, which I keep off via the Windows display projection (Win+P) when I'm not using it, because after disconnecting said screen that behavior which had came back stopped again. But then I rebooted the PC a few hours later and it came right back up, even after connecting and disconnecting that second screen again.
Around the same time I've also observed that behavior seems to have a high chance of happening when randomly some copy operation from the GPU (In my case GPU engine 3, shows as Copy on task manager) happens and the graph moves from 0%, but it's not always (sometimes the graph does move but the game continues fine, sometimes the game goes weird and the graph stays at 0). Not sure how to prevent that, I've tried turning off the iGPU via the UEFI but both that copy engine and the game acting up would continue happening, seemed to have no effect.

In the meantime between these changes I've also ran more hours of synthetic stress tests and some very picky applications to see if these changes would affect them and there's nothing else weird going on, the system seems to be as rock solid stable as it can ever be.

I've also discovered that behavior can happen with the autoplay mod, which makes things easier to test.
Right now I'm using some dialed back settings for the CPU so it runs a bit cooler, though with fairly high core voltages for the game. That behavior is happening frequently again, but not as frequently as before, and curiously it now has a chance of going away on it's own if I keep playing without manually changing the framerate cap.

This is such a annoying thing, every time I think I narrowed it down to something, it jumps to something else... I'll continue investigating and trying though, what else can I do...

Oh also I've been saying "Project Lasso", it's actually Process Lasso, not sure why I was saying project, probably was thinking of something else.
bluehatgamingXE
Sorry if silly me said anything dumb, but have you tried turning off "variable refresh rate" in the blue "Change default graphics settings" link on the top of Windows settings / System > Display > Graphics (or do it like the image below)?



I just spent 1 and a half day trying to uncapped Lazer out of 60 fps in gameplay with multiple google searches (which is how I found your post) and now it is consistently 500-600 fps in game. From the looks of your videos, you have a different problem from me but I hope this helps
Topic Starter
TailsTheFox_1
I just checked it, and I don't have that option. My screen doesn't support variable refresh rate, so not surprising I guess. Thanks for the suggestion though!

I may have found out what happened, for real this time:
On nvidia control panel, manually changing the OpenGL renderer GPU (not sure how the option translates) from auto (which did picked the 2080ti) to the 2080ti (so, instead of relying on auto, manually choosing the 2080ti), seems to have fixed it.

I've been playing sparsely throughout multiple days, multiple reboots and even multiple CPU tuning on the UEFI, and the game has been working well. It still behaves weirdly if I have the other screen connected to the iGPU (even though the game is running on the main screen connected to the dGPU), but as long as the other screen is disconnected (the cable is physically disconnected from the port), it seems to run fine (hopefully I haven't triggered a flag saying that).

That is strange though, it may indicate some issue with multiple GPU setups? I haven't noticed any weird behavior with other games I play when I have the other screen connected, so maybe something specific to osu? And why would changing the OpenGL renderer GPU help if I have been running the game in DX11 mode? Some questions that could lead to some further investigation maybe, though from someone more qualified than me.
Please sign in to reply.

New reply