Optimizing Fabric for Public Server or switching to Paper/Pufferfish?

Hello Reader and Gamer, I'm reaching out for some advice regarding our Java Minecraft server, which has been running for over 4 years. Here are some details about our current situation: - We've used Purpur and Paper throughout our server's history, but recently many players have requested we switch to Fabric due to Paper disabling a lot of redstone and making farming difficult. - We just started a new season on 1.21 running Fabric, but we've been struggling to maintain a consistent TPS, often not even reaching 15. - Our server consistently hosts over 15 players, though we expect this number to drop to 5-10 in the next six months. - We recently upgraded our RAM from 8GB to 12GB, with 9GB allocated to startup. - Most of our mods are performance-based and moderation-based, with a few random ones like fsit. - We also have a couple of datapacks and custom ones to replace some of the features we had while on Paper/Purpur. - We used to have a daily restart enabled but there are no commands to restart or start a server on Fabric. So we've been seeing an issue if the server does stop or crash, then there is a rollback. We've tried kicking all the players before the server stops, but this doesn't seem like a long term solution. - Here is our Spark Profiler link: https://spark.lucko.me/M0DxvlWYUu We're torn between continuing with Fabric and trying to optimize for a stable 20 TPS or reverting to Paper/PurPur/Pufferfish. Fabric has been a significant challenge for our staff team, with a steep learning curve and many new commands and replacements to figure out. We've invested a lot of time into creating the server on Fabric, but we couldn't stress test it until day one, leaving us at a sunk cost fallacy decision point. Any help or insight from others who have faced similar challenges would be greatly appreciated! Thank you!
spark
spark is a performance profiler for Minecraft clients, servers, and proxies.
8 Replies
Admincraft Meta
Admincraft Meta8mo ago
Spark Profile Analysis
❌ Processing Error
The bot cannot process this Spark profile. It appears that the platform is not supported for analysis. Platform: Fabric
Requested by rinkiwa#0
Admincraft Meta
Admincraft Meta8mo ago
Thanks for asking your question!
Make sure to provide as much helpful information as possible such as logs/what you tried and what your exact issue is
Make sure to mark solved when issue is solved!!!
/close !close !solved !answered
Requested by rinkiwa#0
RinKiwa
RinKiwaOP8mo ago
Our startup command from flags.sh java -Xmx9216M -Xms9216M --add-modules=jdk.incubator.vector -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs/ -Daikars.new.flags=true -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -jar customfabric.jar nogui
Jenkins
Jenkins8mo ago
Pufferfish
Skullians
Skullians8mo ago
This shows no lag If you only experience lag occasionally (e.g. at peak player count), make a profiler when you actually experience it
RinKiwa
RinKiwaOP8mo ago
Wait lmao, it was just showing lag right before I sent this message. We did a quick server restart to add in a new mod to add command /seen I'll send another profiler later then
Skullians
Skullians8mo ago
:ThumbsUp: thanks. The profiler you sent does tell us some things but not enough consider getting ServerCore by the way Consider moving your sim distance down. View distance should always be bigger than sim. Maybe 8 view 6 sim
Labamba
Labamba8mo ago
yeah, right now we lowered view distance and mob spawns by a ton in the hope of preventing the server from being in complete agony... we will do that

Did you find this page helpful?