Integrated Dynamics

Integrated Dynamics

63M Downloads

Huge FPS lag on client - down to single digit

Hiranus opened this issue · 12 comments

commented

Issue type:

  • 🐛 Bug

Short description:

Recently I updated my ATM 6 server to version 1.8.22 from 1.8.20 and I noticed that in this latest release I have huge FPS issues with or without optifine. It seems that there are problems when stuff from this mod and EnderChests are close together.

Steps to reproduce the problem:

Build this and watch your fps die.
obraz

Expected behaviour:

No fps lag.


Versions:

  • This mod: 1.10.8
  • EnderChests: 1.7.12
  • Minecraft: 1.16.5
  • Forge: 36.2.31

Log file:

Without Optifine: https://spark.lucko.me/YCCRJdhnk2
With Optifine: https://spark.lucko.me/vQRKMJAo2p
Those profiles are from client, it seems like there is no impact on server.

commented

@rubensworks now I also noticed that I get over 500 ms spike when placing/breaking cable, and call stack in spark looks similar.
https://spark.lucko.me/BBR9jpBFew

spark is a performance profiler for Minecraft clients, servers and proxies.
commented

Thanks for reporting!

commented

And here is how it looks: https://gfycat.com/saltyboringborderterrier

Gfycat
Watch and share Unknown 2022.04.15-14.16 GIFs on Gfycat
commented

Hmm, I was afraid this might happen, probably caused by this change: d224665
In any case, the good news is that I know exactly why the performance issue occurs here.
Not sure yet if I should just revert that change, or try to optimize it (which might be tricky, as it gets to the internals of MC rendering).

@Hiranus If I give you a new dev build with some optimizations, would you be willing to test this build in your world?

commented

Yes, obviously. You will have to wait ~2h for results as I have to do some shopping.

commented

No worries, I won't have time to prepare a fix at right this instance though, likely later this weekend :-)

commented

Yep, looks like it has the same cause.

commented

I got even weirder thing that connects to this issue.
obraz
when I dig and place those 2 dirt blocks I get this:
https://spark.lucko.me/f6fkn56rpz
But if I go somewhere where there are no ID cables in proximity everything seems fine. It seems like that piece of code is executed when I do anything close to ID cables.

spark is a performance profiler for Minecraft clients, servers and proxies.
commented

Implemented a fix, and it seems to resolve all issues on my end.
Will make a new release soon. Please let me know if it wouldn't fully resolve the problem on your end.

commented

It works. It not only fixed areas that had spike lags but also other places that had lower fps than normal. Great job.

commented

Excellent, thanks for checking.

commented