Too much consume on timmings
UnitedCraft opened this issue ยท 8 comments
Confirmation
- I have read the FAQ.
- I have tested the latest development build of Holographic Displays and the bug is still present.
- I have updated Spigot to the latest release for my particular Minecraft version.
- I made sure the bug hasn't already been reported on the issue tracker.
Description
How can I prevent from using so much CPU?
How to reproduce
- 50 holograms without rainbow effect
Server version
1.18.2 purpur
Holographic Displays version
The laster build 205
Installed plugins that allow players to join with multiple Minecraft versions
ViaVersion, ViaBackwards
Additional information
No response
I don't see anything too weird here, since sending packets is how the plugin works. Possibly there are some placeholders which are updating frequently, causing many packets to be sent? Maybe the packets should be sent from a different thread, as a solution? Not sure if it's even allowed. But given that I will stop maintaining the plugin the end of this month, I don't think it's worth the effort.
Just checked, it seems that sending packets async is possible, but I'm not sure of the implications or if it does cause race conditions or concurrency issues (which are extremely hard to find and debug).
Might try one last patch before stopping the maintenance.
I've made a quick (and ugly) change for async packets with the latest dev build.
Be aware that this is a highly experimental build, might have some unintended bugs. When you make the code run async, especially in Bukkit/Spigot, it might cause some race conditions, hard to reproduce and debug.
My personal tip is just to do yourself a favor and switch to another plugin, rather than use this build, which is a temporary fix since the plugin will not be maintained. If you want to try it: https://ci.codemc.io/job/filoghost/job/HolographicDisplays/
How to reproduce
46 holograms without rainbow effect
Server version
1.18.1 paper
Holographic Displays version
3.0.0 Beta 2
Installed plugins that allow players to join with multiple Minecraft versions
ViaVersion
This has led to huge tps drops from 20 -> 10, with no players online at all.
Does this still happen with the latest versions? I tried spawning many holograms locally, but it doesn't seem to impact performance like that. I have no clue what causes it in particular, and I don't think I can optimize the code further.