Jump to content

Maximum number of people who can connect to the server.


Recommended Posts

Currently, I am using AWS to run a dedicated server on Windows. The version is the latest experimental beta.
 

Except for setting the ServerMaxPlayerCount to 100, most of the settings are default, so it's in a vanilla state. However, even with about 50 clients connected, the game experiences lag and abnormal zombie behavior...
 

The CPU usage is below 50%, and the RAM usage is 10%, so I don't think it's due to the specs, but it's hard to play the game...


Is there any good way to improve this...?

Link to comment
Share on other sites

IIRC, the game is designed for 8 player co-op.  Pushing that far out of its comfort zone, comes with risks and problems.  Others may have some tips and tricks but I suspect you will have to rein in your expectations.

Link to comment
Share on other sites

Only 8 players are supported.

 

Most modern hardware is capable of supporting 16-20 players stable. 

 

Top-end highly optimized hardware can get up to 25-30. 

 

This is a fully 3D Voxel game with structural integrity and complex AI. The more players on your world, the more data that is being read, modified, and written to.

 

Also note that most game servers are only capable of utilizing a single CPU core. That means that if you have four cores, the highest activity you will see by a game is 25% usage.  7 Days will make good use of Multithreading on Linux, and limited use of it on Windows, but the primary process is still tied to the one core.

Link to comment
Share on other sites

Posted (edited)
6 hours ago, Dorosii said:

The CPU usage is below 50%, and the RAM usage is 10%, so I don't think it's due to the specs, but it's hard to play the game...

 

5 hours ago, SylenThunder said:

Also note that most game servers are only capable of utilizing a single CPU core. That means that if you have four cores, the highest activity you will see by a game is 25% usage.  7 Days will make good use of Multithreading on Linux, and limited use of it on Windows, but the primary process is still tied to the one core.

I haven't done any testing in several years now, so my knowledge might be a bit skewed, but from my understanding and what I remember being told over the years, single core use isn't quite accurate (at least not for this game). The theory is that the client and probably server can utilize 2 physical cores and benefit from 2 virtual cores as well, so 4 threads total. My guess is OP has a 4 core / 8 thread CPU, which would explain the 50% utilization. If the OP has an ancient 2 core 4 thread cpu, then I stand corrected.

 

Of course, do correct me if I'm wrong as I may be a bit outdated now.

Edited by Fox (see edit history)
Link to comment
Share on other sites

3 hours ago, Fox said:

 

I haven't done any testing in several years now, so my knowledge might be a bit skewed, but from my understanding and what I remember being told over the years, single core use isn't quite accurate (at least not for this game). The theory is that the client and probably server can utilize 2 physical cores and benefit from 2 virtual cores as well, so 4 threads total. My guess is OP has a 4 core / 8 thread CPU, which would explain the 50% utilization. If the OP has an ancient 2 core 4 thread cpu, then I stand corrected.

 

Of course, do correct me if I'm wrong as I may be a bit outdated now.

I was stating it as this game is the exception to the rule. However, you aren't going to see heavy usage on more than one core.  The minimum requirement for the client is four physical cores. One core will be used for the primary client thread and may often reach 100% when it is busy. The client will also send child tasks to other cores/threads. These child tasks aren't well optimized IMHO though, and the main core thread is still heavily reliant on the data that is being processed in them. So, if something is calculated on a child task using another core, that part of the equation on the main core is basically on hold until the data comes back.

On a Windows OS system, the client is capable of utilizing 4-6 cores/threads for these child tasks. However, you won't see very high CPU usage on those cores/threads as a result. Probably only 1-2% for each. Meanwhile the primary core is clocking at 80-100% processing all of the data. 

On Linux OS, multithreading gets utilized a lot better and the client is capable of taking advantage of all the cores. This helps to improve performance by delving out more child tasks at once and getting faster responses on them. 

 

Still, you are limited to the capabilities of the single core. If it is an older architecture, it may not process the data as quickly, even with higher clock speeds. 

For example, I can overclock an i7-3930k to 5.1GHz and run a server on that. However, if I run the same server on an I7-8700K running at 4.25GHz it will out-perform the old I7 by a margin of 30-40%. Because of the newer architecture, better cache, and improvements to the way threads are handled. Even though the two chipsets at those clock speeds will benchmark within 5-10% of each other in raw numbers.

 

As for the OP, most of the AWS servers only have two virtual cores, which is half of what the minimum requirement is.

Link to comment
Share on other sites

Posted (edited)

After reading your response, I decided to launch the game (max settings of course, and capped at I think either 60 or 72fps) and see what you posted for myself, and ya, you're right. 1 main core used heavily and several cores being used for "child tasks". So does the dedicated server also work like this or is it a little different / even more single core focused?

 

PS: I'll be afk for the whole weekend, so I probably won't be able to read or respond until Sunday night or later.

 

7d2d.png.a1c9cdfe8301557feb83e969f8bc1a1d.png

Edited by Fox (see edit history)
Link to comment
Share on other sites

9 hours ago, Fox said:

After reading your response, I decided to launch the game (max settings of course, and capped at I think either 60 or 72fps) and see what you posted for myself, and ya, you're right. 1 main core used heavily and several cores being used for "child tasks". So does the dedicated server also work like this or is it a little different / even more single core focused?

 

Yep dedicated server utilizes the cores pretty much the same.

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