WauloK Posted May 25, 2014 Posted May 25, 2014 Howdy! I thought I might check what is the recommended server specs for AOTBT? I see a lot of topics about client specs, but not server. This is the VPS I am running AOTBT on: Number of CPU Cores @ min. 1.8 Ghz minimum 8 Memory 4 GB Storage 80 GB @ No IOPS max Additional / Backup Storage 40 GB Internet Transit Traffic Quota / Month 20 Mbps of Network Bandwidth Cheers
Kalbintion Posted May 25, 2014 Posted May 25, 2014 The server specs for this modpack should be very similar to vanilla minecraft, with additional processor power and RAM necessary to accommodate for the modpack. The number of cores for a processor will have little to no impact on the server speeds due to the fact that minecraft, and consequently modpacks, do not take full advantage of multi-threading and will only use a single core. RAM and processor requirements increase depend on the number of players, what will happen with their bases, etc. You could easily tear apart a top-of-the-line super computer if someones base does not take into consideration laggy aspects of the modpack.
WauloK Posted May 26, 2014 Author Posted May 26, 2014 The reason I was asking is the server cpu seems to jump around 64% 140% 36% 120% 89% 34% 160% 56%. We get block lag as well. We only have 3 accounts logged in at the moment and wanted to turn off the Whitelist to allow others to join but it seems the CPU is not fast enough (running CentOS). Do you recommend we upgrade to a faster CPU? Here's our commandline. I found a forum with recommended parameters: -Xms3072m -Xmx3072m -XX:+UseLargePages -XX:PermSize=256M -XX:+AggressiveOpts -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.net.preferIPv4Stack=true CPUInfo actually shows: model name : Intel(R) Core(TM) i7-4820K CPU @ 3.70GHz
disconsented Posted May 26, 2014 Posted May 26, 2014 The issue here is that you are using a VPS, resources are shared across clients so you will never be guranteed CPU time (also hertz =/= preformance) namico2000 1
Loader Posted May 26, 2014 Posted May 26, 2014 Not necessarily, just guaranteed cycles. In this case you're better off with a faster CPU than more CPUs because of the reasons Kalbintion said (some mods do delegate and have some threading built in, but it doesn't even balance out to two cores so a faster dual is better than a slower quad for this). Try turning off Large Pages (that's good for some people in some situations, check it's actually helping and not overloading some bus somewhere), try turning Xms down to 2048 (so it'll try to clear up somewhere between 2GB and 3GB used rather than lagging every time it hits 3GB - minecraft's memory management is weird, give it some room for its oddities). Aggressiveopts is a dangerous switch to use - it means "use functions in Java that aren't working properly yet but add some feature or speedup". Once they're working they're rolled into a new version, if they'll never work they're dropped, but you can get all kinds of weird behaviour with that on.
WauloK Posted May 26, 2014 Author Posted May 26, 2014 Hmm. With the new parameters and only one player online exploring: Memory 3Gb. CPU 116.9% 3.0g 17m S 116.9 64.3 9:30.21 java
Loader Posted May 26, 2014 Posted May 26, 2014 Use /forge tps to find out which world is sucking up all the power (it's probably overworld, but just to make sure), then grab Opis to identify exactly where it's happening - I'm leaning toward something funny in the world perhaps being responsible now (it shouldn't jump around and should idle around 10-15% with one player on that CPU and 3GB RAM unless you're restricted in some other way it's not telling you).
WauloK Posted May 26, 2014 Author Posted May 26, 2014 Thanks! I hadn't heard of the forge tps command but have run Opis on other servers before. /gc gives 256 chunks loaded and 762 tiles even when nobody is on. This has been over 1000 chunks loaded when 3 people were on. Will get the output of forge tps next time the CPU is high. 2014-05-26 02:36:49 [INFO] Dim 21 : Mean tick time: 0.058 ms. Mean TPS: 20.000 2014-05-26 02:36:49 [INFO] Dim 9 : Mean tick time: 0.028 ms. Mean TPS: 20.000 2014-05-26 02:36:49 [INFO] Dim -127 : Mean tick time: 0.027 ms. Mean TPS: 20.000 2014-05-26 02:36:49 [INFO] Dim -1 : Mean tick time: 0.026 ms. Mean TPS: 20.000 2014-05-26 02:36:49 [INFO] Dim 1 : Mean tick time: 0.024 ms. Mean TPS: 20.000 2014-05-26 02:36:49 [INFO] Dim 0 : Mean tick time: 0.318 ms. Mean TPS: 20.000 2014-05-26 02:36:49 [INFO] Overall : Mean tick time: 0.855 ms. Mean TPS: 20.000 2014-05-26 02:37:50 [INFO] CONSOLE issued server command: /gc 2014-05-26 02:37:50 [INFO] Uptime: 1 hour 46 minutes 56 seconds 2014-05-26 02:37:50 [INFO] Current TPS = 19.988 2014-05-26 02:37:50 [INFO] Maximum memory: 3,005 MB. 2014-05-26 02:37:50 [INFO] Allocated memory: 1,981 MB. 2014-05-26 02:37:50 [INFO] Free memory: 579 MB. 2014-05-26 02:37:50 [INFO] World "world": 256 chunks, 18 entities, 762 tiles. 2014-05-26 02:37:50 [INFO] World "DIM21": 0 chunks, 0 entities, 0 tiles. 2014-05-26 02:37:50 [INFO] World "DIM9": 0 chunks, 0 entities, 0 tiles. 2014-05-26 02:37:50 [INFO] World "DIM-127": 0 chunks, 0 entities, 0 tiles. 2014-05-26 02:37:50 [INFO] The End "DIM1": 0 chunks, 0 entities, 0 tiles. 2014-05-26 02:37:50 [INFO] Nether "DIM-1": 0 chunks, 0 entities, 0 tiles.
WauloK Posted May 26, 2014 Author Posted May 26, 2014 High CPU: 22014-05-26 06:05:25 [INFO] Dim 21 : Mean tick time: 0.060 ms. Mean TPS: 20.000 2014-05-26 06:05:25 [INFO] Dim 9 : Mean tick time: 0.031 ms. Mean TPS: 20.000 2014-05-26 06:05:25 [INFO] Dim -127 : Mean tick time: 0.029 ms. Mean TPS: 20.000 2014-05-26 06:05:25 [INFO] Dim -1 : Mean tick time: 0.027 ms. Mean TPS: 20.000 2014-05-26 06:05:25 [INFO] Dim 1 : Mean tick time: 0.027 ms. Mean TPS: 20.000 2014-05-26 06:05:25 [INFO] Dim 0 : Mean tick time: 5.775 ms. Mean TPS: 20.000 2014-05-26 06:05:25 [INFO] Overall : Mean tick time: 6.414 ms. Mean TPS: 20.000 2014-05-26 06:05:34 [INFO] CONSOLE issued server command: /gc 2014-05-26 06:05:34 [INFO] Uptime: 5 hours 14 minutes 40 seconds 2014-05-26 06:05:34 [INFO] Current TPS = 19.98 2014-05-26 06:05:34 [INFO] Maximum memory: 3,005 MB. 2014-05-26 06:05:34 [INFO] Allocated memory: 1,988 MB. 2014-05-26 06:05:34 [INFO] Free memory: 739 MB. 2014-05-26 06:05:34 [INFO] World "world": 1,138 chunks, 383 entities, 1,021 tiles. 2014-05-26 06:05:34 [INFO] World "DIM21": 0 chunks, 0 entities, 0 tiles. 2014-05-26 06:05:34 [INFO] World "DIM9": 0 chunks, 0 entities, 0 tiles. 2014-05-26 06:05:34 [INFO] World "DIM-127": 0 chunks, 0 entities, 0 tiles. 2014-05-26 06:05:34 [INFO] The End "DIM1": 0 chunks, 0 entities, 0 tiles. 2014-05-26 06:05:34 [INFO] Nether "DIM-1": 0 chunks, 0 entities, 0 tiles. 2014-05-26 06:05:53 [INFO] Dim 21 : Mean tick time: 0.060 ms. Mean TPS: 20.000 2014-05-26 06:05:53 [INFO] Dim 9 : Mean tick time: 0.028 ms. Mean TPS: 20.000 2014-05-26 06:05:53 [INFO] Dim -127 : Mean tick time: 0.028 ms. Mean TPS: 20.000 2014-05-26 06:05:53 [INFO] Dim -1 : Mean tick time: 0.026 ms. Mean TPS: 20.000 2014-05-26 06:05:53 [INFO] Dim 1 : Mean tick time: 0.025 ms. Mean TPS: 20.000 2014-05-26 06:05:53 [INFO] Dim 0 : Mean tick time: 5.895 ms. Mean TPS: 20.000 2014-05-26 06:05:53 [INFO] Overall : Mean tick time: 7.207 ms. Mean TPS: 20.000 2014-05-26 06:05:54 [INFO] CONSOLE issued server command: /gc 2014-05-26 06:05:54 [INFO] Uptime: 5 hours 15 minutes 2014-05-26 06:05:54 [INFO] Current TPS = 19.97 2014-05-26 06:05:54 [INFO] Maximum memory: 3,005 MB. 2014-05-26 06:05:54 [INFO] Allocated memory: 1,988 MB. 2014-05-26 06:05:54 [INFO] Free memory: 847 MB. 2014-05-26 06:05:54 [INFO] World "world": 1,139 chunks, 408 entities, 1,018 tiles. 2014-05-26 06:05:54 [INFO] World "DIM21": 0 chunks, 0 entities, 0 tiles. 2014-05-26 06:05:54 [INFO] World "DIM9": 0 chunks, 0 entities, 0 tiles. 2014-05-26 06:05:54 [INFO] World "DIM-127": 0 chunks, 0 entities, 0 tiles. 2014-05-26 06:05:54 [INFO] The End "DIM1": 0 chunks, 0 entities, 0 tiles. 2014-05-26 06:05:54 [INFO] Nether "DIM-1": 0 chunks, 0 entities, 0 tiles.
Loader Posted May 26, 2014 Posted May 26, 2014 (edited) That's really weird, it doesn't look like it's the CPU limiting you - you should be able to get up to nearly 50ms (not including overhead, so ~50ms from that indicator) total tick time before it starts to give you block lag. Is the behaviour the same without those garbage collection flags set? (-XX:+UseParNewGC -XX:+UseConcMarkSweepGC) I could imagine they might cause lag spikes (parnewgc is also a bit like aggressiveopts, +UseParallelGC is safer) but I can't think of a way they could cause block lag.. Even if the VPS provider was limiting you quietly you should be able to see the effect in minecraft (like you would in a benchmark) even if they can hide most numbers, so I can't see it being that either. I can't think of anything that points to it from the information so far, and I think you've provided all the relevant information (I can't think of anything to ask for that might help other than playing with those flags and seeing results from that). I'm thinking, I will post back if I come up with anything. Congratulations on your interesting and unusual problem. Edited May 26, 2014 by Loader Kalbintion and WauloK 2
Kalbintion Posted May 27, 2014 Posted May 27, 2014 (edited) I prefer /cofh tps as it is a bit more informative in the way its information is presented, compared to /forge tps. But that's a preference thing. There really is no reason for block lag with showing those numbers unless what Loader mentioned about your host throttling you without your knowledge. If the server itself was the problem in this particular case, those numbers would be much higher and a TPS below 20 would be seen. The only other option I can possibly think of for any types of lag that isn't server related is your connection to the server where packet loss is happening or simply bad connection. A Tracert (traceroute on mac) command issued to the server IP (minus port) would be able to shed some light on the network traffic and potentially where the issue may lay if the issue is indeed network related. Edited May 27, 2014 by Kalbintion
disconsented Posted May 27, 2014 Posted May 27, 2014 Looks like you need to use profiling tools like Warmroast to diagnose the issue WauloK 1
ThePagan Posted May 27, 2014 Posted May 27, 2014 /gc gives 256 chunks loaded and 762 tiles even when nobody is on. This has been over 1000 chunks loaded when 3 people were on. If 3 people are loading over 1000 chunks you might want to check your server properties and look at 'view distance'. This is the radius around the player that the player is chunkloading. I think it defaults to 10. which should make each player load 441 chunks. Dropping it to 4 would make each player load 81 chunks. Not sure what yours is set at, but it's an easy way to lessen the load on your server.
Loader Posted May 27, 2014 Posted May 27, 2014 Warmroast! That's a good suggestion - some error, loop or delay/sleep function may be causing issues behind minecraft and that'll point it out (this kind of thing is often some oddity in a single mod, a pathfinding loop in P|R or minions or something like that and warmroast will point it out). If it's a delay or loop it'll be the first to go if you run out of cycles, it'll not drop ticks if that's the case (it'll drop sleep cycles which can cause desync between threads which can cause pauses/lag or even race conditions which will crash the server outright if the code is dodgy). Loading less chunks could help, but I don't think it's the root cause of the problem - it's also only really feasible to go that low if you've made flying a little less accessible or people with slower connections are going to have a painful time flying around (the second part of that is an opinion thing, if you try it and think it's ok that low then it's not wrong, just something I dislike).
Discord Moderator plowmanplow Posted May 27, 2014 Discord Moderator Posted May 27, 2014 An item of note: Worldgen can be VERY painful on system resources. If you get no or little lag when folks are just working in their bases and a lot when folks are rapidly moving around (flying, porting, etc.) then worldgen could be a source of lag. Warmroast can, as previously mentioned, really help to isolate the source. P.S. 1400th post, woohoo WauloK 1
Loader Posted May 27, 2014 Posted May 27, 2014 If it's worldgen then bukkit plugins like worldborder can help, it'd need MCPC+ but I'd probably suggest installing that anyway even if you didn't want plugins (it does some basic lag-reduction stuff like grouping similar ground items into stacks and things so there are less entities around, great if you've got hammer tunnellers leaving cobble drops all over the place). I'd congratulate you on your 1400th post plowmanplow if it wasn't overshadowed by an even greater achievement - managing to make it this far without a mod messing with your forum title! Congrats on that! WauloK 1
Kalbintion Posted May 28, 2014 Posted May 28, 2014 Opis might want to be given a shot as well for isolating issues. We recently installed it on the server I'm an admin on and discovered someone having 1,000+ openblock tanks causes stupids amounts of lag (communications between the openblock tanks it seems to be the source of this issue)
WauloK Posted May 29, 2014 Author Posted May 29, 2014 Thanks, guys. We already run MCPC+ so will see how things go for a while
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now