Sodium

Sodium

35M Downloads

Extreme performance drop from 0.2 to 0.3

GamerKingHD opened this issue ยท 12 comments

commented

Version information

1.16.5 - 1.17

Expected Behavior

I expected to get a 5 to 10% performance difference, either better or worse.

Actual Behavior

I drop down from 280 FPS to 110 FPS when going from 1.16.5 to 1.17. I've attached the spark client profiler, the only mods used were Fabric API, Sodium and Spark, the only change is in mod versions, going from 1.16.5 to 1.17 for Fabric and Spark, and going through 0.1 - 0.3 for Sodium. It's the same map, same settings, same coordinates, same look direction, same everything. I have attached a screenshot with FPS numbers and the world used.
spark server profiler
0.1: https://spark.lucko.me/xauzC0lq50
0.2: https://spark.lucko.me/G4qQuTb2Mc
0.3: https://spark.lucko.me/rBpKZr24aq

spark client profiler
0.3 50% entity distance: https://spark.lucko.me/LqEOQ0xQkT
0.3 500% entity distance: https://spark.lucko.me/aOXyzl3XYY
0.2: https://spark.lucko.me/HfFsSOpAmF
0.1: https://spark.lucko.me/gHK0m3kpMa
Settings used:
-32 chunks

Reproduction Steps

Launch Minecraft with Sodium 0.1 and 0.2, load the world, get the same performance.
Launch Minecraft with Sodium 0.3, load the world, get 50% of the performance.

Java version

Java 16.0.1 64bit

CPU

Ryzen 5 2600 4.0Ghz

GPU

GTX 970

Additional information

I have installed the lasted version of Spark for fabric and Fabric API along with Sodium for the respective Minecraft versions, the screenshots were made without them. Fabric API 0.37.0. No other mods were used.

commented

I did some screwing around and the HUD seems to be the thing that drops FPS significantly. Disabling it essentially triples my framerate!

what did u changed so that your fps got higher
what was the problem

HUD is anything other than blocks and entities, such hotbar, status effects, items... Essentially (from what I understand) pressing F1 disables it

commented

i didnt know hud also causes lag Thanks

commented

For anyone looking at this, there seems to be a very obvious (and yet not obvious) reason why there is an "extreme performance drop". The amount of entities rendered or even loaded is very low in 0.1 and 0.2 compared to 0.3 while using the same entity distance setting.

As to why this is the case, that's the real problem.

Also cannot replicate this on my machine on Sodium 0.2 in 1.16.5. MrMangoHands mentioned that, in 0.1, Sodium did not respect the entity distance setting. Could be a problem with the config file being shared between 0.1 and 0.2 on the same instance (which is something that the original issue reporter said they did).

commented

I think that's more related to chunk loading. The fps is in average worse, but more importantly there seem
to be lot more microlag/fps drops when loading chunks. This MIGHT be caused (I'm not sure of this though this is pure speculation) by Sodium or 1.17 prioritizing fast chunk loading over smooth framerate, making framerate unstable and overall worse.

commented

For anyone looking at this, there seems to be a very obvious (and yet not obvious) reason why there is an "extreme performance drop". The amount of entities rendered or even loaded is very low in 0.1 and 0.2 compared to 0.3 while using the same entity distance setting.

As to why this is the case, that's the real problem.

Also cannot replicate this on my machine on Sodium 0.2 in 1.16.5. MrMangoHands mentioned that, in 0.1, Sodium did not respect the entity distance setting. Could be a problem with the config file being shared between 0.1 and 0.2 on the same instance (which is something that the original issue reporter said they did).

I have triple checked the settings before doing the profiles and benchmarks, made sure all of them are at 500% before doing anything.

commented

yea, i notice the fps, maybe its java16?

commented

I think that's more related to chunk loading. The fps is in average worse, but more importantly there seem
to be lot more microlag/fps drops when loading chunks. This MIGHT be caused (I'm not sure of this though this is pure speculation) by Sodium or 1.17 prioritizing fast chunk loading over smooth framerate, making framerate unstable and overall worse.

Will address this later in my comment, but....

@Hughp135 Performance is worse across the board compared to Sodium in 1.16.5. But if you are experiencing no noticeable improvement from Vanilla, that is not what many others are experiencing so you may want to report an issue on the GitHub independent from this one. Or look for support on the CaffeineMC discord.

I will reiterate that you can clearly see that Sodium in 1.17 is rendering 100x the entities (not really since the 1.16 versions are technically rendering 0) as 1.16.5 versions of Sodium (look at the top left E: field in the f3 menu). This is also backed up by a majority of rendering time being spent on entities (which you can observe in the Spark profile).

Sodium in 1.17 has some performance regressions when compared to 1.16.5 Sodium versions, even equalizing the entity counts between versions the original poster of this issue was only able to get about 70% of the performance (~200 fps) of the 1.16.5 versions (I helped them out in the support channels on the CaffeineMC discord).

But again, I would like to point out that there is clearly something more going on here. In general, yes 1.17 (Vanilla and Sodium) have brought performance problems in regards to chunk loading and microstutters. The claims about faster chunk loading being the root cause of this may not be accurate, given Sodium has chosen a much smarter chunk loading time heuristic in 0.3.0. Baseless claims about chunk loading when you can clearly see an increase in time taken to render entities and an increase in the amount of entities being rendered according to the F3 menu are really useless in my opinion. Again to reiterate, there are performance problems in 1.17 (Sodium or even just in Vanilla), but I think the more pressing issue is addressing why the entity distance slider seems to be doing different things across versions.

That was a little ranty, but I do think this issue is getting a little off-topic.

commented

I did some screwing around and the HUD seems to be the thing that drops FPS significantly. Disabling it essentially triples my framerate!

commented

I did some screwing around and the HUD seems to be the thing that drops FPS significantly. Disabling it essentially triples my framerate!

version 0.4 is planned to batch the GUI rendering which in testing was offering a great fps boost. some older dev builds have some of this enabled. due to the issues on some older gpus, that might get pushed back tho. so dont expect it to be a set eta

commented

I did some screwing around and the HUD seems to be the thing that drops FPS significantly. Disabling it essentially triples my framerate!

what did u changed so that your fps got higher
what was the problem

commented

when playing on wynncraft (mmorpg server that has lots of entities and particles near you) after about 5 minutes of playing, seems to vary from day to day, the cpu usage goes up to 50% (3600x) and there's constantly frame stutters (0fps for about 100ms)

commented

This is very old, probably stale.