I’ll start by posting my Spigot forums post here which is what I’ll carry over (and take out the most important bits of data)
I run a small server with an averaging playbase around 15~ people, everything is perfectly fine looking until we start hitting that 15-17 player mark then everything goes downhill.
I’ve collected dozens of timings and got rid of any plugins I saw using a lot of CPU (MythicMobs, HologramAPI, TreasureChests) and have configured ClearLag on my server. It’s no longer entities or plugins taking up large portions of my timings, but instead it’s just chunks which I have done research on Spigot’s configuration forum posts to optimize my server.
I’ve done all I can, but then I noticed when I looked into my server’s task manager and noticed that yes while it does use other threads occasionally when loading chunks, there’s 1 core that always sits above 50% when with only 4-5 people on. Once there’s 11~ people on it sits at 90-100% and that’s where the TPS starts feeling pain.
I’ve moved my server off any Pterodactyl Docker containers and any restrictions that may have been set and ran it directly as a .sh with launch parameters gathered from https://aikar.co/2018/07/02/tuning-the-jvm-g1gc-garbage-collector-flags-for-minecraft/
There’s an image and the timings at the same time that had been going on.
The chunks are being loaded on other threads as you can see in that image, but 1 core is pegged.
Xeon 1241v3 (dedicated machine, I just run my MC in a hypervisor with 6 threads allocated)
16GB of RAM allocated to the VM, I have 32GB in total I can spare
I also observed that the pegged core (in this picture the core is number 5) will randomly split up and become multi-threaded and then the server goes back to 20TPS. Then it’ll randomly go back to going single-threaded and peg a single core. Rinse & Repeat.
AntiVPN, AutoRestart, BigDoors, Citizens, CombatLogX, CompatNoCheatPlus*, ConditionalCommands, ConsoleSpamFix, CoreProtect, CustomDrops, CustomStructures, DailyRewards*, Essentials, EssentialsSpawn, ExtraContexts*, Factions, Harbor, Herochat*, Holograms*, HorseTpWithMe, LuckPerms, mcMMO, MineableSpawners, NoCheatPlus, ObsidianBreaker*, PlaceholderAPI*, Plan*, PNCP*, ProtocolLib*, Quests, RandomTeleport, Rankup, renametool*, Shopkeepers, Sickle, spark, TAB, TimTheEnchanter, Vault, ViaBackwards*, ViaRewind*, ViaVersion*, WorldEdit, WorldGuard, XrayInformer*, ClearLagg
Any help will be appreciated, thank you.
I am running on Paper-159, I will upgrade it tonight when the players log off.
Edit: I have updated to the latest paper, problem remains.