TickThreading - concurrent entity/tile entity ticks and other optimisations

  • FTB will be shutting down this forum by the end of July. To participate in our community discussions, please join our Discord! https://ftb.team/discord

saki2fifty

New Member
Jul 29, 2019
73
0
0
Ok, I lied. One more last thing. What is the most significant number in determining a server capacity or whatever when doing a /ticks, /profile, etc. Thank you sir.
 

saki2fifty

New Member
Jul 29, 2019
73
0
0
Getting the below when dismantling turrets:

Mod : http://www.minecraftforum.net/topic/562836-152-spmplan-turret-mod-v301/

Code:
8:01:17 PM
 
CONSOLE:
 
[SEVERE] Exception ticking entity EntityDismantleStorage['entity.TurretMod3.DismStorage.name'/4512, l='world', x=1060.50, y=64.00, z=-475.50] in rX: 66, rZ: -30, hashCode: -1966014/Overworld/0:
 
8:02:09 PM
 
CONSOLE:
 
[SEVERE] Exception ticking entity EntityDismantleStorage['entity.TurretMod3.DismStorage.name'/6232, l='world', x=1057.50, y=64.00, z=-476.50] in rX: 66, rZ: -30, hashCode: -1966014/Overworld/0:
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 19:56:45 [INFO] Writing region logs to log files...
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 19:56:45 [INFO] Log files saved & closed.
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 19:58:46 [INFO] Sakki_Sakkyr[/76.30.160.220:55197] logged in with entity id 31 at ([world] 1053.2859867160334, 69.0, -503.46489452972787)
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 19:58:46 [INFO] Updating the IP for Sakki_Sakkyr.
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 19:58:46 [INFO] Sakki_Sakkyr bandwidth usage: 0 bytes, Total: 0 bytes
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 19:58:46 [INFO] Synchronizing client <-> server removed recipes
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 19:58:46 [INFO] Loading Player: Sakki_Sakkyr
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 19:58:46 [INFO] Sending serverside check to: Sakki_Sakkyr
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 19:58:46 [INFO] Sakki_Sakkyr kicked, reason: You are not using the server client!
 
8:02:37 PM
 
CONSOLE:
 
/ Download it here: http://dev.bukkit.org/server-mods/flockclient-server/
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 19:59:33 [INFO] Using inbuilt NmsBlock for this version.
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 20:00:00 [INFO] CONSOLE: Forcing save..
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 20:00:00 [INFO] CONSOLE: Save complete.
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 20:01:17 [SEVERE] Exception ticking entity EntityDismantleStorage['entity.TurretMod3.DismStorage.name'/4512, l='world', x=1060.50, y=64.00, z=-475.50] in rX: 66, rZ: -30, hashCode: -1966014/Overworld/0:
 
8:02:37 PM
 
CONSOLE:
 
/java.lang.NoSuchMethodError: net.minecraft.entity.item.EntityItem.func_70016_h(DDD)V
 
8:02:37 PM
 
CONSOLE:
 
/ at sanandreasp.mods.TurretMod3.entity.EntityDismantleStorage.func_70609_aI(EntityDismantleStorage.java:107)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.entity.EntityLiving.func_70030_z(EntityLiving.java:648)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.entity.Entity.func_70071_h_(Entity.java:479)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.entity.EntityLiving.func_70071_h_(EntityLiving.java:835)
 
8:02:37 PM
 
CONSOLE:
 
/ at sanandreasp.mods.TurretMod3.entity.EntityDismantleStorage.func_70071_h_(EntityDismantleStorage.java:58)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.world.World.func_72866_a(World.java:391)
 
8:02:37 PM
 
CONSOLE:
 
/848;1R at net.minecraft.world.WorldServer.func_72866_a(WorldServer.java:921)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.world.World.func_72870_g(World.java:2464)
 
8:02:37 PM
 
CONSOLE:
 
/ at nallar.tickthreading.minecraft.tickregion.EntityTickRegion.doTick(EntityTickRegion.java:61)
 
8:02:37 PM
 
CONSOLE:
 
/ at nallar.tickthreading.minecraft.tickregion.TickRegion.run(TickRegion.java:35)
 
8:02:37 PM
 
CONSOLE:
 
/ at nallar.tickthreading.minecraft.ThreadManager$2.run(ThreadManager.java:101)
 
8:02:37 PM
 
CONSOLE:
 
/ at nallar.tickthreading.minecraft.ThreadManager$1.run(ThreadManager.java:43)
 
8:02:37 PM
 
CONSOLE:
 
/ at nallar.tickthreading.util.FakeServerThread.run(FakeServerThread.java:16)
 
8:02:37 PM
 
CONSOLE:
 
/2013-07-16 20:02:09 [SEVERE] Exception ticking entity EntityDismantleStorage['entity.TurretMod3.DismStorage.name'/6232, l='world', x=1057.50, y=64.00, z=-476.50] in rX: 66, rZ: -30, hashCode: -1966014/Overworld/0:
 
8:02:37 PM
 
CONSOLE:
 
/java.lang.NoSuchMethodError: net.minecraft.entity.item.EntityItem.func_70016_h(DDD)V
 
8:02:37 PM
 
CONSOLE:
 
/ at sanandreasp.mods.TurretMod3.entity.EntityDismantleStorage.func_70609_aI(EntityDismantleStorage.java:107)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.entity.EntityLiving.func_70030_z(EntityLiving.java:648)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.entity.Entity.func_70071_h_(Entity.java:479)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.entity.EntityLiving.func_70071_h_(EntityLiving.java:835)
 
8:02:37 PM
 
CONSOLE:
 
/ at sanandreasp.mods.TurretMod3.entity.EntityDismantleStorage.func_70071_h_(EntityDismantleStorage.java:58)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.world.World.func_72866_a(World.java:391)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.world.WorldServer.func_72866_a(WorldServer.java:921)
 
8:02:37 PM
 
CONSOLE:
 
/ at net.minecraft.world.World.func_72870_g(World.java:2464)
 
8:02:37 PM
 
CONSOLE:
 
/ at nallar.tickthreading.minecraft.tickregion.EntityTickRegion.doTick(EntityTickRegion.java:61)
 
8:02:37 PM
 
CONSOLE:
 
/ at nallar.tickthreading.minecraft.tickregion.TickRegion.run(TickRegion.java:35)
 
8:02:37 PM
 
CONSOLE:
 
/ at nallar.tickthreading.minecraft.ThreadManager$2.run(ThreadManager.java:101)
 
8:02:37 PM
 
CONSOLE:
 
/ at nallar.tickthreading.minecraft.ThreadManager$1.run(ThreadManager.java:43)
 
8:02:37 PM
 
CONSOLE:
 
/ at nallar.tickthreading.util.FakeServerThread.run(FakeServerThread.java:16)
 

nallar

New Member
Jul 29, 2019
270
0
0

`java.lang.NoSuchMethodError: net.minecraft.entity.item.EntityItem.func_70016_h(DDD)V` - not a TT bug, can't fix it. Looks like they're trying to use a client only method. There are more reports of it in that thread.[DOUBLEPOST=1374102650][/DOUBLEPOST]
Ok, I lied. One more last thing. What is the most significant number in determining a server capacity or whatever when doing a /ticks, /profile, etc. Thank you sir.

What do you mean by "determining a server capacity"?

If you mean how much of your server's available processing power is in use, look at overall %age load in /tps.[DOUBLEPOST=1374102686][/DOUBLEPOST]
One last thing for the day. If I update my server with a mod, and rerun the .sh patch, will it mess anything up with patching and already patched mod? I did that, and on a few of them it said True on overwriting, like it made a change and wrote something to the mod.

Thx.

All you need to do when updating a mod is update the mod, then run PATCHME.sh.
 

nallar

New Member
Jul 29, 2019
270
0
0
Hey nallar,
I've tested TickThreading yesterday for the first time and I already like it.
But at the Moment my console is getting spammed with "[INFO] [STDOUT] something on tick went wrong".
I'm receiving that message every 10-40 seconds and it didn't happen before I used TickThreading.
Is that normal? I'm currently using TickThreading-1.5.2.143.
Thanks for your help.

Should be fixed in latest, although I haven't tested the fix. If it's still broken after updating, please give the patching log.
 

Omicron

New Member
Jul 29, 2019
2,974
0
0
Hey nallar, I've been wondering: does TickThreading play nice with the JRockit JVM?

I ask this because switching to JRockit has been the single most massive performance improvement I've ever managed to achieve for my small, self-hosted Minecraft server. Especially a few months ago when I was still using a 7 year old core 2 duo CPU which was honestly overburdened by the task. Simply changing the JVM made me go from 25 ms tickrate and a stuttering experience to 10 ms that ran perfectly smooth. Of course my new Haswell CPU is in comparison almost bored by the task, but I still see a consistent (if small) improvement even then. The only downside to JRockit is Redpower2's incompatibility with it, but that only applies to pre-1.5 game worlds.

This performance improvement has to come from somewhere... so that makes me wonder. If JRockit does something much like you do with TickThreading, but natively, that would probably mean that the two will trip over each other. Conversely, if there's no relation then there's the possibility of gaining even more performance.
 

nallar

New Member
Jul 29, 2019
270
0
0
Hey nallar, I've been wondering: does TickThreading play nice with the JRockit JVM?

I ask this because switching to JRockit has been the single most massive performance improvement I've ever managed to achieve for my small, self-hosted Minecraft server. Especially a few months ago when I was still using a 7 year old core 2 duo CPU which was honestly overburdened by the task. Simply changing the JVM made me go from 25 ms tickrate and a stuttering experience to 10 ms that ran perfectly smooth. Of course my new Haswell CPU is in comparison almost bored by the task, but I still see a consistent (if small) improvement even then. The only downside to JRockit is Redpower2's incompatibility with it, but that only applies to pre-1.5 game worlds.

This performance improvement has to come from somewhere... so that makes me wonder. If JRockit does something much like you do with TickThreading, but natively, that would probably mean that the two will trip over each other. Conversely, if there's no relation then there's the possibility of gaining even more performance.

I've used JRockit successfully with TT.

Ran into an issue with classloading, JRockit required adding the redpower jars and TT jar to the classpath.
 

saki2fifty

New Member
Jul 29, 2019
73
0
0
Hmm... gonna try this too. The specs say that its Intel based only, but looks like some are using it with Opterons as well (what we have).
 

Trec93

New Member
Jul 29, 2019
24
0
0
players are constantly taking falling damage while walking, I am not sure if its tick threading, but I know that the author is a really skilled guy with such issues so I was sure of one, that he will know whats wrong. :)
 

cjm721

New Member
Jul 29, 2019
734
0
1
players are constantly taking falling damage while walking, I am not sure if its tick threading, but I know that the author is a really skilled guy with such issues so I was sure of one, that he will know whats wrong. :)


That has been reported a few times. Still trying to figgure out what exactly is the cause, like how is the player jumping (from 1 block and phyiscaly jumping or walking off etc)
 

saki2fifty

New Member
Jul 29, 2019
73
0
0
Found why idle CPU usage is so high, should be fixed very soon.

edit: and done.

Updating now.

questions:

1. What does /profile u do? I've searched your commands on the wiki, but it doesn't say what it does (the link isn't working right now, so can't be sure).
2. This indirectly relates to TT, but on my test server I have McMyadmin. On my Linux box I just launch a .sh script. I'm thinking of adding MCM to my Linux box so that I'll have a quick visual while i'm at work. Any performance problems here with TT? I know it's kind of a wrapper, but i'm not a programmer so I have no idea if it'll effect TT or not.
 

saki2fifty

New Member
Jul 29, 2019
73
0
0
Getting the below error when using the update script. I changed the FTBServer.jar to ForgeMod.jar in the script.

saki2fifty@SakkisWonderland:~/McMyAdmin/Minecraft$ sh updateTT.sh lastSuccessfulBuild
--2013-07-19 07:48:18-- http://nallar.me/buildservice/job/T...essfulBuild/artifact/target/TickThreading.jar
Resolving nallar.me (nallar.me)... 173.236.6.240
Connecting to nallar.me (nallar.me)|173.236.6.240|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2351572 (2.2M) [application/java-archive]
Saving to: `mods/TickThreading-lastSuccessfulBuild.jar'
100%[==============================================================================>] 2,351,572 1.53M/s in 1.5s
2013-07-19 07:48:20 (1.53 MB/s) - `mods/TickThreading-lastSuccessfulBuild.jar' saved [2351572/2351572]
2013-07-19 07:48:20 [INFO] [TickThreading] Running TickThreading v1.0.0.2083 for MC1.4.7 - 1.7.0_25-b15
2013-07-19 07:48:20 [SEVERE] [TickThreading] An error occurred while patching, can't continue
java.lang.NoClassDefFoundError: com/google/common/io/ByteStreams
at nallar.tickthreading.patcher.ClassRegistry.loadZip(ClassRegistry.java:334)
at nallar.tickthreading.patcher.ClassRegistry.loadFiles(ClassRegistry.java:101)
at nallar.tickthreading.patcher.PatchManager.loadBackups(PatchManager.java:69)
at nallar.tickthreading.patcher.PatchMain.patcher(PatchMain.java:97)
at nallar.tickthreading.patcher.PatchMain.main(PatchMain.java:31)
at me.nallar.tickthreading.patcher.PatchMain.main(PatchMain.java:5)
Caused by: java.lang.ClassNotFoundException: com.google.common.io.ByteStreams
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 6 more
2013-07-19 07:48:20 [INFO] [TickThreading] Done. Press enter to exit.

The script:
#!/bin/sh
if [ $# -ne 1 ]; then
echo "Usage: ./update.sh <enter build number or just use lastSuccessfulBuild>"
exit 1
fi
rm mods/TickThreading-*.jar
wget http://nallar.me/buildservice/job/TickThreading/$1/artifact/target/TickThreading.jar -O mods/TickThreading-$1.jar
java -cp "mods/TickThreading-$1.jar:lib/guava-12.0.1.jar" me.nallar.tickthreading.patcher.PatchMain patcher "ForgeMod.jar,coremods,mods" "$@"````




[EDIT] Nevermind, I changed it to this:
#!/bin/sh
rm mods/*TickThreading*.jar
wget http://nallar.me/buildservice/job/T...essfulBuild/artifact/target/TickThreading.jar -O mods/TickThreading.jar
java -cp "mods/TickThreading.jar:lib/guava-14.0-rc3.jar:lib/asm-all-4.1.jar" nallar.tickthreading.patcher.PatchMain patcher "ForgeMod.jar,coremods,mods" "$@"
java -server -Xmx25600M -XX:UseSSE=4 -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:+UseParNewGC -XX:+DisableExplicitGC -XX:+AggressiveOpts -jar ForgeMod.jar nogui
 

nallar

New Member
Jul 29, 2019
270
0
0
Getting the below error when using the update script. I changed the FTBServer.jar to ForgeMod.jar in the script.

saki2fifty@SakkisWonderland:~/McMyAdmin/Minecraft$ sh updateTT.sh lastSuccessfulBuild
--2013-07-19 07:48:18-- http://nallar.me/buildservice/job/T...essfulBuild/artifact/target/TickThreading.jar
Resolving nallar.me (nallar.me)... 173.236.6.240
Connecting to nallar.me (nallar.me)|173.236.6.240|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2351572 (2.2M) [application/java-archive]
Saving to: `mods/TickThreading-lastSuccessfulBuild.jar'
100%[==============================================================================>] 2,351,572 1.53M/s in 1.5s
2013-07-19 07:48:20 (1.53 MB/s) - `mods/TickThreading-lastSuccessfulBuild.jar' saved [2351572/2351572]
2013-07-19 07:48:20 [INFO] [TickThreading] Running TickThreading v1.0.0.2083 for MC1.4.7 - 1.7.0_25-b15
2013-07-19 07:48:20 [SEVERE] [TickThreading] An error occurred while patching, can't continue
java.lang.NoClassDefFoundError: com/google/common/io/ByteStreams
at nallar.tickthreading.patcher.ClassRegistry.loadZip(ClassRegistry.java:334)
at nallar.tickthreading.patcher.ClassRegistry.loadFiles(ClassRegistry.java:101)
at nallar.tickthreading.patcher.PatchManager.loadBackups(PatchManager.java:69)
at nallar.tickthreading.patcher.PatchMain.patcher(PatchMain.java:97)
at nallar.tickthreading.patcher.PatchMain.main(PatchMain.java:31)
at me.nallar.tickthreading.patcher.PatchMain.main(PatchMain.java:5)
Caused by: java.lang.ClassNotFoundException: com.google.common.io.ByteStreams
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 6 more
2013-07-19 07:48:20 [INFO] [TickThreading] Done. Press enter to exit.

The script:
#!/bin/sh
if [ $# -ne 1 ]; then
echo "Usage: ./update.sh <enter build number or just use lastSuccessfulBuild>"
exit 1
fi
rm mods/TickThreading-*.jar
wget http://nallar.me/buildservice/job/TickThreading/$1/artifact/target/TickThreading.jar -O mods/TickThreading-$1.jar
java -cp "mods/TickThreading-$1.jar:lib/guava-12.0.1.jar" me.nallar.tickthreading.patcher.PatchMain patcher "ForgeMod.jar,coremods,mods" "$@"````




[EDIT] Nevermind, I changed it to this:
#!/bin/sh
rm mods/*TickThreading*.jar
wget http://nallar.me/buildservice/job/T...essfulBuild/artifact/target/TickThreading.jar -O mods/TickThreading.jar
java -cp "mods/TickThreading.jar:lib/guava-14.0-rc3.jar:lib/asm-all-4.1.jar" nallar.tickthreading.patcher.PatchMain patcher "ForgeMod.jar,coremods,mods" "$@"
java -server -Xmx25600M -XX:UseSSE=4 -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:+UseParNewGC -XX:+DisableExplicitGC -XX:+AggressiveOpts -jar ForgeMod.jar nogui

That's why it was called the 1.4.7 update script on the wiki, needed the libs path changed.[DOUBLEPOST=1374248573][/DOUBLEPOST]
Updating now.

questions:

1. What does /profile u do? I've searched your commands on the wiki, but it doesn't say what it does (the link isn't working right now, so can't be sure).
2. This indirectly relates to TT, but on my test server I have McMyadmin. On my Linux box I just launch a .sh script. I'm thinking of adding MCM to my Linux box so that I'll have a quick visual while i'm at work. Any performance problems here with TT? I know it's kind of a wrapper, but i'm not a programmer so I have no idea if it'll effect TT or not.

1. Profiling to see which threads are taking the most cpu time. Currently broken.
2. Shouldn't cause any problems.
 

BreakingReality

New Member
Jul 29, 2019
26
0
0
Hello I have a few questions about TickThreading.

1. How do you run the patch if your server is hosted by a server provider? (using mcpc+ jar also)
2. Will tickthreading patch possibly fix any crashes that my server has been having lately?
 

nallar

New Member
Jul 29, 2019
270
0
0
Hello I have a few questions about TickThreading.

1. How do you run the patch if your server is hosted by a server provider? (using mcpc+ jar also)
2. Will tickthreading patch possibly fix any crashes that my server has been having lately?

1. It now runs the patches during server startup and then shuts down if it needs patched, so starting the server then starting it again after it patches should be all you need to do.
2. Maybe, what are the crashes?
 

BreakingReality

New Member
Jul 29, 2019
26
0
0
crashes involve the ME terminal systems =0 its very annoying, and I think i need to update my applied energistics mod but does that mean no one
can play on server if i have a new version of applied energistics
 

nallar

New Member
Jul 29, 2019
270
0
0
crashes involve the ME terminal systems =0 its very annoying, and I think i need to update my applied energistics mod but does that mean no one
can play on server if i have a new version of applied energistics

There are no newer versions of AE for 1.4.7 anyway.

Can you paste a crashlog?
 

jznomoney

New Member
Jul 29, 2019
2
0
0
Hi nallar. I appreciate all the hard work you have put into tick threading. My friend and I run a Tekkit lite 1.4.7 updated to 0.6.5. We are having some weird issues. Most of them I listed here. https://github.com/nallar/TickThreading/issues/912 I don't understand how the items that are routed to deployers on my map get messed up and I wind up with my lava buckets in the wrong deployers. The ME network seems to get glitchy to with it either not routing the items properly in the export pipes(not exporting them, or exporting them weather it's receiving a redstone signal or not). Also the timer issue is still present and sometmes it just locks on. If you need any logs or anything I can pull them from the server machine.
Thanks for your time
 

saki2fifty

New Member
Jul 29, 2019
73
0
0
I need to recheck this again when I get home today, but after the last couple of TT updates, last night I found that my little dispensing station was no longer working. I have an automatic dispensing chest (bukkit plugin) that dispenses an item and a Buildcraft Obsidian pipe used to pick up those items. The problem, is that the Obsidian Pipe is no longer picking up the items. When the items come out of the chest, it looks like something is trying to group them up, then places those items a few blocks away, which is out of reach of the pipe to pick up. The way I got it working for now is to surround the whole area in blocks so that those dispensed items have nowhere to go other than to fall onto the pipe. I have a feeling regardless of how the items are dispenced, the same problem is going to happen (with a dispencer, etc.)

Also, my idle without any players, without any chunk loaders is below 1%. Goes from .7 to 1. When I join, its around 3%, and when I add a few other players, the %'age does not go up... on average, so about 3-4% with a few players. However, when I add a Railcraft "train" with a chunk loader (or just me sitting in the train), the overall usage jumps to an average of 10-12%, and stays there. I have 2 main server based train stations, one east and west, and one north and south. I'm a little unsure why a simple train is using close to 10% of the server, overall and am a little afraid to put up the other North/South train or even let my players use Railcraft. Is it because of the loaded chunks? I'm only showing 550 on average. Any way to have carts force chunks to be unloaded immediately after the trains passes through (might be more of a Railcraft question).

One last thing, is there any way to see how many threads is being used by TT? The config is set to autodetect the threads, but would server as a little piece of mind if I knew TT saw all of my cores.

Everything else is working good.

[Edit] The trains are set to wait for 2 minutes at each station, and even after sitting at the station, the Overall usage still remains @ 10-12%. 10 carts total, 1 Loco, 1 Admin Chunk Loader, and 8 regular carts.