Mekanism Additions

Mekanism Additions

21M Downloads

Multiblocks stall server

MrDj200 opened this issue ยท 7 comments

commented

Issue description:

When you have a lot of mekanism multiblocks loaded, the server stalls quite often for quite long.
This is mainly a problem with the evap towers, turbines and boilers as far as I can see.
We also had to limit the evap towers to 4 per player, since the server tps go down quite a lot otherwise.

Steps to reproduce:

  1. Have a big server
  2. Have a lot of mekanism multiblocks loaded

Version (make sure you are on the latest version before reporting):

Forge: 14.23.5.2836
Mekanism: 1.12.2-9.7.4.375

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

Stall report

Note:

I know this is not the latest version, my main point is to ask wether this has been fixed in a newer version, or if we need to find another solution on our server :)

commented

The code block shown in the report is only triggered when a block in or perhaps next to the multiblock is changed.

There's not much we can do there. You'll need to ensure that they're not on or crossing chunk borders and that there isn't any continuous block setting/breaking next to them

commented

so if we ensure on our server that Multiblocks are only valid when they are within one chunk, these kind of stalls would be fixed?

commented

It's just a guess/precaution; we can't say anything definite unless you can get an nps (profiler snapshot) file

commented

I don't know how to read or even open it, so I'm not sure if it caught what you need.
profilerSnapshot.nps

If this does not contain the info you need, I'll try to catch another stall while profiling.

commented

Its better that nothing anyway. I'm assuming you used Sampler, which VisualVM doesn't think outputs all the data it normally gathers itself.

What I can tell from it though is that someone likely has a multiblock on a chunk border, where one (or more) parts of it are not chunk loaded. The loop to scan for a valid multiblock is getting triggered every 5 ticks because it is missing its 'structure'

commented

Here is another snapshot:
profilerSnapshot2.nps

Thing is, we have a lot of modpacks with mekanism hosted, but these kind of stalls only happen on this one modpack (Stoneblock 2).

But I guess it doesnt get used much on other servers. Or could there be another reason?

commented

Going ahead and closing this as we have made lots of performance improvements in the 1.15 version of Mekanism so I believe this is likely fixed.