Applied Energistics 2

Applied Energistics 2

137M Downloads

Multiple AE2 systems in RFTools dimension cause lag when no one is inside dimension

neogeo0823 opened this issue ยท 15 comments

commented

The server I admin is set up a bit differently from normal. We have an RFTools void dimension that everyone lives and builds in. Several of our users have set up their own ME networks with autocrafting and other various features. When people are playing inside of this dimension, everything is fine and normal. However, once the dimension empties out, either via people logging off or going to other dimensions, then that dimension begins to cause very severe lag that makes the server unplayable. As soon as someone re-enters the dimension, even if they fly 1000 blocks away from anything so that nothing is loaded, then the dimension and the server return to normal.

We had our server hosts profile the dimension while it was causing issues, and they came back and told me that "the increased usage was from Applied Energistics finding matching recipes". They also attached this screenshot:

4309

I'm not sure where to go from here. I was able to make a copy of the dimension for testing purposes and I found that using World Edit to delete all of the bases that had ME networks did in fact make the lag problem go away in the test dimension, but obviously I'd like to let these users have their bases with their ME networks. If needed, I can provide links to a copy of our modpack and the dimension in question.

commented

The actual problem is not caused by AE. Something is constantly loading and unloading chunks. probably even every other tick or so. Each time we have to rebuild the network, inventory and similar things, which requires a bit of work.

Keeping them loaded is way more server friendly in general, then trying to unload them as often as possible. It usually should just require a bit of memory and if the other mods are not completely unable to have their machines behave when idle, the effect on the CPU load is negligible.

So either RFtools is doing something funny like reloading them due to their constant energy consumption or similar or your server host uses something to aggressively unload chunks to save some memory on their servers.

commented

what Version of AE2 ? This sounds familliar with an older Version of either AE2 or RFTools, so i would call it known pproblem but i have no idea about existing solutions, also make sure there are no Chickenchunks Chunkloaders used, they bug out all the time when nobody is present

commented

@neogeo0823 We are running a Thermos Server, so I don't know about the forge mod. I would assume it works the same way. Just go to the dimension and create an NPC on a platform. See if that helps.

commented

I'm not sure how void dimensions are handled when no one is present (specifically RFTools ones, since I've read the code for RFTools dim generation is different than normal)
If it's true that having someone loaded in, even thousands of blocks away, nullifies the issue, you could possibly keep a single, far away chunk, loaded at all times to see if it would help the problem.

commented

We actually have a ton of chunks loaded within that dimension at all times. We even utilize different mods' means of chunk loading, such as Railcraft's anchors and FTB Utils' chunk claiming system. We tried setting up one of those turtles from either Open Computers or Computer Craft(I forget which off hand) to hopefully fool the server into thinking there was a player logged into that dimension, but either we didn't set it up correctly, or it didn't work right.

commented

Is the server forge or cauldron? You could try adding in a custom npc to the dimension.

commented

It's a Forge server. How would I go about doing that? Googling around, I see a Custom NPCs mod, so would I use that, or is there a Forge command for it?

commented

We're using version Rv3 Beta 5 of Applied Energistics, Rv3 0.5.1.9 of AE2 Stuff, and RFTools 4.23. I just realized I forgot to mention we're on 1.7.10, since that's likely important.

For chunk loaders, we have the following options: FTB Utils has their chunk claiming and loading system, Mine Factory Reloaded chunk loaders, the chunk loader upgrade for Open Computers, Railcraft's anchors, Steve's Carts chunk loaders, and the EnderIO options, like the Ender Quarry and Enderthermic Pump and anything else that goes with that mod.

As for what's actually used, there's a command in FTB Utils to see loaded chunks. It tells me that we're using Railcraft anchors to load chunks as well as FTB Utils, but nothing else.

commented

One small update. I was able to get rid of all the world anchors and all but one loaded chunk from FTB Utils. Said singular chunk is unclaimed, and contains nothing but some vanilla blocks and like 99% air. I can't seem to unload it at all. I even tried deleting forcedchunks.dat from the dimension folder, but that had no effect. The dim still lags when it empties out.

commented

I am also experiencing this problem in singleplayer. My RFTools void dimension is chunkloaded by a MFR chunkloader. I will see what happens if I update RFTools and report back.

commented

NBTExplorer Is what I use.

Take the cords of the chunk, and find out what region they are in. That will correspond to the region file in the specific DIM folder on the server.

Open that file in NBTExplorer, go find the chunk and delete. Then load it back up on the server.

Make sure you have backups, and don't do this while the server is running

commented

If nothing is their, try deleting it out of the level data.

commented

@bookerthegeek what's the best method for that? MCEdit the chunk away?

commented

So, here's a pretty substantial update. The last two days, we went and changed a bunch of stuff around on the server. We swapped the overworld dimension with the RFTools hub world we had. This had the effect of completely eliminating the lag in the hub world. We also discovered that the ME network will cause lag on the Galacticraft moon dimension, not just RFT dimensions.

Specific to the moon incident, a user had set up a 3x3x3 array of ME controllers, with the inside of that filled with unpowered controllers. To each side were 2 columns 5 high of ME drives, all blank except for one, which had 5 storage cells in it. A few blocks away, some ME conduit from Ender IO ran to an ME crafting terminal. That's it. Literally nothing else AE2 was in that dimension. We found that dismantling those exact blocks and placing them in a chest completely stopped the lag in that dim.

We're going to do more experiments to try and determine what specific block or situation is causing the issue. But now it seems it's probably strictly an AE2 issue, and not an RFTools and AE2 issue

commented

make sure you dont have any AE loops. not sure how you can have a 3x3x3 powered controller with the middle filled with unpowered controllers. can you post a screenshot?