Ender IO Zoo

Ender IO Zoo

962k Downloads

Vapor of levity causing massive lag

Deregorn opened this issue ยท 8 comments

commented

Issue Description:

Apparently larger quantites of vapor of levity will cause massive lag.

What happens:

I tried to use it as a coolant for my max size extreme reactor. My tps went down to around 4-5. I even tried unloading the chunks but that didn't help either. It doesn't matter if the reactor multiblock is formed or not. I don't think it has anything to do with the reactor.

What you expected to happen:

I obviously expected it to not affect tps in a significant way.

Steps to reproduce:

  1. Fill a moderately sized room with vapor of levity (I suggest at least 16x16 and around 30 blocks high), just placing it on the floor and letting it flow up until it hits the ceiling.
  2. Check /forge tps.
  3. Be amazed at how it destroys your tps.

Affected Versions (Do not use "latest"):

  • EnderIO: 3.1.164
  • EnderCore: 0.4.1.65-beta
  • Minecraft: 1.10.2
  • Forge: 12.18.3.2215

Your most recent log file where the issue was present:

No crash log, since it didn't cause a crash.

commented

Please attach a profiler (e.g. warmroast) and drill down to what takes the time. I cannot see anything here, even with a full chunk of it. Server is still spending way over 90% of it's time in Thread.sleep(), and most of the rest is trying to spawn mobs.

commented

In SF3 I created a RFTools Dimension where Huge Liquid Orbs were filled with Vapor of Levity, this Levity was in a confined space, didn't flow up or anything, they were nicely packed inside the orbs. Loading in the dimension brought server TPS down to below 10, even 5. Needless to say I scrapped the dimension. Filling a decent size reactor with Vapor of Levity causes significant TPS drops as well.

commented

I reproduced it in a new clean MultiMC instance, the only mods being EnderIO and EnderCore. Just filling a section of a chunk already had a huge impact. Mean tick time went from around 5 ms to 15 ms.

Check out the screenshots attached.

2017-02-12_15 43 26
2017-02-12_15 44 33
2017-02-12_15 45 49
2017-02-12_15 46 34

commented

the other example was using stone, not glass, this is not an exact reproduction

commented

I tried reproducing this and could not.

EnderIO: 3.1.171
EnderCore: 0.4.1.65-beta
Minecraft: 1.10.2
Forge: 12.18.3.2239

2017-02-27_19 39 28
2017-02-27_19 37 52

commented

I tried it with stone and had the the same results. Not sure what I'm missing as far as reproducing this goes...

2017-02-28_08 29 23
2017-02-28_08 32 36

commented

You're testing with the latest version, so either this doesn't happen for you, or my changes did work. I'm now preventing Forge's fluid code from running most of the time---the code that checks if a fluid can flow into a new block.

commented

Sounds like it might be fixed then. Hopefully 1 or 2 other people can confirm my results on latest.