Huge lag with Thermal Dynamics CryoStabilizedFluxduct (Infinite RF duct)
Sonic2423 opened this issue ยท 7 comments
TL;DR:
What happens: when you connect a lot of energy sources (eg. energy cells) with CryoDucts and then connect them to a bunch of LazyAE2 s machines the time per tick skyrockets (see pic2).
(My original setup was 625 energyCells all set to output to the CryoDucts connected to the cells so i have massive RF/t for all my needs so i could connect everything around my base. so i hooked up all my lazyae2 machines to the cryoduct network and my time per tick rose from 30ms/t to 130ms/t.)
to make sure it was not caused by any of the other mods installed i made a test forge 2838 server (client also with forge 2838) to try to recreate the problem with only all cofh mods + ae2 + lazyae2 + libnine+codechickenlib(+worldedit). the test setup was a wall of 25x25 energyCells connected to a 25x25 wall of cryoducts connected to a 25x25 wall auf fluix aggregators. because the server was fresh on my local machine the time per tick at the beginning was 1ms/t but after setting all up with WE the time per tick is now 980ms.
BUT if you connect all lazyae2 machines with rf/t limited ducts the time per tick settles at around 60ms/t.
i have attached 5 pictures of the setup with /forge tps readings and a setup with TE machines for behaiviour comparision. the 440ms/t in the one picture isnt that accurate because before it averages out the server decides to crash with "A single server tick took 60,00 seconds (should be max 0,05)" in the latest.log. no errors in log (besides "cant keep up" warnings). everything ran on a single pc (client/server).
I hope this helps.
also for the record, the issue wasn't necessarily a specific interaction with cryo fluxducts -- my tile entities were just slightly underperformant, but cryo fluxducts are extremely inefficient and caused the performance issue to amplify from O(m + n)
to O(m * n)
for m
energy cells and n
machines
this is my recommended setup for cryo fluxducts: you have one central bus running from your primary power storage to various secondary buffers which feed your machines using conventional energy conduits; if you have a sufficiently small number of secondary buffers, you can significantly reduce the lag caused by cryo fluxducts. you might also consider using stellar energy conduits from endergy for a high-throughput power solution that avoids cryo fluxducts
wow, that was fixed quickly. nice work! very appreciated.
i had already temporarily setup my base like you have shown but without secondary energy buffers because it seems if you connect any other TE energy duct they form another network on their own already thus reducing lag. And well after this i will probably prioritize networks with subnetworks to minimize connection count per network and keep my base that way.
i've narrowed the problem to various performance issues in libnine -- updating to 1.1.4 should fix it.
https://www.curseforge.com/minecraft/mc-mods/libnine/files/2787950