Jump to content

Recommended server specifications?


WauloK

Recommended Posts

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 :)

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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
Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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).

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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 by Loader
Link to comment
Share on other sites

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 by Kalbintion
Link to comment
Share on other sites

 

/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.

Link to comment
Share on other sites

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).

Link to comment
Share on other sites

  • Discord Moderator

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

Link to comment
Share on other sites

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! :D

Link to comment
Share on other sites

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)

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...