Mekanism

Mekanism

111M Downloads

Multiblock Tick Impact

Castone22 opened this issue ยท 2 comments

commented

Issue description

Mek's multiblocks seem to have a fairly notable tick impact on the server due to the fact that every block in them is its own ticking entity.
image
Checking with observable, we're sitting around 9.3ms of tick time to just mek structure calculations.
https://spark.lucko.me/4tWFOLEtuF?hl=78,49,265,215,266,267,216
Spark points at a fairly sizable amount of that time seems to be from structure validation (i'm assuming, i haven't dived into the code around updateCache yet)

Steps to reproduce

Create a bunch of large mek multiblocks

  • Fission Reactor
  • Steam Turbines
  • Evaporation Towers
  • Induction Cells (more excusable than some of the others because they're significantly less ticky than the energy cubes are.)
  • Dynamic Tanks

Run Observable and/or Spark to take profiles.

Note high tick impact of mek structures.

Minecraft version

1.16.5 (Latest)

Forge version

1.16.5-36.1.32

Mekanism version

10.0.21 (Latest)

Other relevant versions

No response

If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)

No response

commented

Coming from the Enigmatica 6 server, somebody apparently discovered that multiblocks check if they are a complete multiblock every single tick, apparently, which is disastrous if people on servers all make their own multiblocks instead of selling stuff to each other or whatnot.

commented

I am going to close this/merge this with #7140, as I believe the majority of the issues have been at least lessened a fair bit by changes we have made thanks to the profiling provided in #7140.