FPS starts dropping when using shaders for a certain amount of time
haronv99 opened this issue · 14 comments
What happened?
After a period of playing with shaders, my fps starts to drop constantly creating instability, becoming unplayable, restarting seems to "solve" the problem temporarily, but then everything repeats itself again
Screenshots
No response
Log output
No response
Minecraft Version
Minecraft 1.19.2
Iris Version
Íris 1.5.0
Operating System
Windows 10
What is your GPU?
AMD RX 570 4Gb
Additional context
I heard about this application it can help someone who understands to locate the problem, so here is the test I performed when the problem started
Ok, i must have not been clear, restart minecraft, not my pc, my hardware seems to be fine. if i don't restart minecraft then i have to deactivate shaders, if i want to use it again i have to restart it. (minecraft)
only /spark command or something else specific? sorry, I'm quite willing to cooperate if it's something related to shaders, because I like minecraft that way
There's a /sparkc
command, which runs the Spark profiler on your client, as opposed to the /spark
command, which runs the Spark profiler on the server (if in singleplayer, the integrated server). The /sparkc
command will give you a link when you are done, and if you send that link to us it will give us more information about what exact code is taking up time.
Are you sure that this isn't just an issue of your laptop thermal-throttling after getting too hot? That would explain why a restart of your computer or Iris fixes the problem since it gives your laptop a chance to cool down a bit. You can check whether this is happening by using something like https://www.alcpu.com/CoreTemp/ or MSI Afterburner.
Also, the spark information isn't very usable for us since we need a link to the actual report, instead of a screenshot of it.
hello, I let the test run for a few minutes, here goes:
Relevant portion:
net.minecraft.client.MinecraftClient.run() 100.00%
net.minecraft.client.MinecraftClient.render() 100.00%
net.minecraft.client.util.Window.swapBuffers() 64.61%
com.mojang.blaze3d.systems.RenderSystem.flipFrame() 64.61%
Basically your game is spending 2/3rds of its time waiting on the graphics driver / windowing system to get back to it. This might be because your graphics card / GPU is taking too much time to render frames.
I would still recommend checking your thermals with MSI Afterburner or a similar package that can view GPU temperatures. The profiler output doesn't seem to have any sort of indicator of a memory leak or other runaway CPU usage - Minecraft is asleep/idle waiting on other system processes 64.6% of the time.
That's a normal screenshot with some useful information at the top left, but the most useful would be to press the F3 key to bring up the debug overlay, then send the resulting screenshot.
29 FPS is oddly close to 30 FPS, which would be the FPS you would get if you have VSync enabled and cannot consistently reach 60 FPS.
Some things that catch my attention are the very detailed resource pack, and the GPU showing that it is pinned at 100% load.
well, sorry the resource pack I use has a resolution of 128x, honestly, I never had a problem using it, I took two prints, with and the other without, fps still seems to drop except to drop less than the resource pack.. curious that this shader is one of the lighter two they have (chopapic), , but when the problem starts it doesn't matter which shader I switch to, it still happens.
with resource pack :
without resource pack:
Well, thanks for providing those. There's just nothing that really catches my attention here. Unfortunately, it's very hard to figure out what's causing the slowdown since the profiler has no ability to peer into the operation of the GPU driver and why it is performing poorly. It's entirely possible that we have a memory leak or something but this seems like something that is going to be difficult to diagnose even with highly specialized tooling.
thats ok buddy, thanks for your time and patience, and congratulations for the good work you do here its really much appreciated
@haronv99 Check your RAM usage when the FPS drops are happening. I'm having a problem almost exactly like this only when shaders are enabled, and it's caused by a memory leak triggering the garbage collector constantly.