Lag caused by painted blocks
JoramD0 opened this issue ยท 11 comments
Issue Description:
Server lags and Can't keep up
when there are a lot of painted cobblestone blocks placed.
The building, mostly consisting of painted cobblestone:
https://cdn.discordapp.com/attachments/257945129791258624/752261058156167199/2020-09-06_22.16.20.png
I somewhat didn't expect this to happen since I'd image the code that applies the painted texture would (I thought) only run on being loaded in.
The testing I did consisted of flying around (with a jetpack), shooting my bow and placing/breaking blocks. The server nor client lagged anywhere but around the building
What happens:
It is laggy for the client and the server. The server posts a bunch of this:
[18:27:39] [Server thread/WARN] [minecraft/MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 3409ms behind, skipping 68 tick(s)
[18:28:04] [Server thread/WARN] [minecraft/MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 12345ms behind, skipping 246 tick(s)
[18:28:15] [Server thread/WARN] [minecraft/MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 7113ms behind, skipping 142 tick(s)
[18:28:31] [Server thread/WARN] [minecraft/MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 2449ms behind, skipping 48 tick(s)
[18:34:35] [Server thread/WARN] [minecraft/MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 2588ms behind, skipping 51 tick(s)
[18:35:06] [Server thread/WARN] [minecraft/MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 14427ms behind, skipping 288 tick(s)
[18:35:15] [Server thread/WARN] [minecraft/MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 5102ms behind, skipping 102 tick(s)
What you expected to happen:
Less lag.
Steps to reproduce:
- Connect to server
- Place a ton of blocks
- See server lag
...
Affected Versions:
- EnderIO:
5.2.59
- EnderCore:
0.5.76
- Minecraft:
1.12.2
- Forge:
14.23.5.2854
- SpongeForge?
no
- Optifine?
yes
- Single Player and/or Server?
Server
Your most recent log file where the issue was present:
Please use the vanilla profiler to collect some data. Start it with /debug start, wait a minute or two, then stop it with /debug stop. There will be a new file in your Minecraft folder with the results. See also https://www.reddit.com/r/feedthebeast/comments/5mxn51/vanilla_has_an_built_in_profiler_that_not_a_lot/. Please post the latest result for us to see
Your server log is incomplete. Please send us the latest crash-report from the crash-reports folder on your server.
I have asked the lead dev to look over the result you sent
Whoops, my bad.
Here are my 2 latest crash reports, the most recent one crashed after the profiler was done and the older one crashed while it was still running.
Thanks for that. We are just looking over everything and then we'll give you an answer :)
hypher, I think you forgot this one...
If I remember correctly, the profiler data did not have any entry related to painted blocks, so they are not using any cpu time, but it was slow all over with no real hotspot. A bit much in the vanilla section that tries to find spaces to spawn mobs, but that's all. So our guess at the moment is that you are running low on memory.
I initially thought so too but I upped it to 16gb (from 8) so I doubt that is the case. Could it be that the profiler didn't catch anything because it crashes after a minute?
Well, it definitely is not a RAM issue. I just tested assigning 32gb of RAM to the server and I was still having the exact same issue.
do you have the possibility to monitor your garbage collector? native java runtime was designed to work with 2GB of RAM and adding more and more ram only leads to smooth play for a short periode of time, until the garbage collector kicks in and the mor ram you have the more time it takes the GC to clean up your memory and the longer the lags become
just google a little bit for advanced command line options for optimizing the garbage collector(GC) for minecraft
when i do not forget this issue, i can possibly post my personal favorit for GC settings later when i am home again if @HenryLoenwind allows it :) (i do not wantr to derail the issue here too much :P )
so recommend you grab Sampler and try figure out painted blocks if it is issue bc we have 64GB of ram and there 40 or more people on are server count of paint blocks is huge and TPS is normal there no spikes no lag so i recommend you installing sampler