Optimised settings for >100 concurrent users?

mdef
New member
Posts: 7
Joined: Tue Nov 16, 2021 11:29

Optimised settings for >100 concurrent users?

by mdef » Post

Hey there,

I am regularly hosting a Minetest server on my i7-4790, 24 GB RAM, with a 100 MBit/s fiber connection. That server is used for a workshop with more than 100 students. I experience severe lag and other, apparently performance related, issues such as the fact that saplings do not grow that limit the quality of the experience for my students.

Of course I have read the pinned server settings thread, but it's pretty old and my hardware and connection are significantly faster than what is described there. Looking at my resource usage, the CPU seems to be the limiting factor. RAM usage is less than 1GB. I am using a pretty small world with long sightlines, so maybe that plays a role?

I'd appreciate any tips and tricks from the more seasoned server operators out there. My students really appreciate the ability to use Minetest, but some have expressed that I should use the other, commercial world builder instead. I'd rather make sure that their experience of Minetest gets better than abandoning it, though.

Thanks in advance!

User avatar
Festus1965
Member
Posts: 4181
Joined: Sun Jan 03, 2016 11:58
GitHub: Festus1965
In-game: Festus1965 Thomas Thailand Explorer
Location: Thailand ChiangMai
Contact:

Re: Optimised settings for >100 concurrent users?

by Festus1965 » Post

somewhere I put all this tuning together - I will not repeat it all here.
* missing here: HDD, SSD or better M.2 ?
* to use 24 GB you need to change settings in OS and minetest.conf also ... not just hoping
...
Human has no future (climate change)
If urgend, you find me in Roblox (as CNXThomas)

mdef
New member
Posts: 7
Joined: Tue Nov 16, 2021 11:29

Re: Optimised settings for >100 concurrent users?

by mdef » Post

I am running Ubuntu 20.04 from an SSD. Minetest is the current development build.

Could you point me to where you wrote about tuning? I searched the forum and your posts (well, the first couple of pages of them), but was not lucky. I'd be happy to know what changes I need to make to make use of my RAM, if that is indeed the problem. As I said, the world is pretty small (mapgen limit was set to 240).

User avatar
Minix
Member
Posts: 144
Joined: Thu Nov 12, 2020 13:51
In-game: Minix

Re: Optimised settings for >100 concurrent users?

by Minix » Post

Welcome to the forum and the Minetest community. Some notes about server resources that play a role in running a Minetest server:

CPU: Minetest is mostly single-threaded, lua code from mods run in a single thread but map generation code that is written in C++ (native to the engine) can use multiple threads, the number of threads to use can be configured with the num_emerge_threads setting in your server configuration file, however leaving that setting commented means Minetest will use all system threads, so you do not need to modify that if you want to use all your CPU for map generation. However you stated that your world has a limited size, and it is very likely that most of it has been already generated, so you will not experience a performance boost by changing that setting. CPU single thread performance is one of the most limiting factors for running a Minetest server, so generally you will want to use a CPU that has high clock speeds and not many cores, your i7 is a good candidate for this task.

RAM: Minetest loads mod data in memory as well as world data to use it as a cache so that it does not need to load from disk as much. Since your world is small you will not use too much memory but you can change the server_unload_unused_data_timeout to 500, 1000 or more so you make more use of your spare RAM.

Disk: in terms of disk space you will be fine because your world is limited in size, however random read/write speed is very important for good performance in Minetest because the world is stored in a database, however you can get away with a slow disk by setting the aforementioned timeout value very high and instead using a lot of RAM as cache, but you have an SSD so you are completely fine.

Network speed: from my experience as server administrator a moderately modded server with Minetest Game as base uses an average of 14 KB/s upload and 7 KB/s download for each player, but that can peak to around 42 KB/s upload and 21 KB/s download or even more if said player is inside an area that has many action going on, for example running a mesecons or technic machine. Keep in mind that whenever a player joins for the first time it downloads all mod data from the server, and there is no official way to limit the speed at which the data is sent, so this creates lag spikes to other players, however once that player has the mod data locally cached, every time they join the data sent will be much lower.

With all that said, you can start debugging by looking at the max_lag value while you are in the server as a player (press F5 to open debug screen), max_lag = 0.1 is optimal performance, if you get values that are above 10.0 then there is something wrong going on. Monitor CPU, memory and disk usage if possible when a lot of players are in the server. You said that you think your CPU is the limiting factor, using top/htop pay close attention to the CPU% metric in the minetest process, since that will tell you how much of a single thread the process is using, because 100% means that whatever thread the process is running on is being maxed out.

To lower CPU usage you may want to reduce/optimize the mods on your server, reduce the active block area or play around with the settings in the configuration file, here is a sample conf file with all valid settings listed https://github.com/minetest/minetest/bl ... nf.example. If your CPU is still not enough for 100 players then you can consider overclocking, getting a CPU with better single thread performance, disabling hyper-threading if that is an option for you or compiling Minetest yourself while applying optimization flags for your CPU architecture (read at the end of this post I made, it may have some useful hints) viewtopic.php?f=3&t=26507

You should still verify that your disk/network are not being overloaded with a tool like nmon. Sharing the mods/subgame you use can also help in determining what kind of performance you should be expecting.

EDIT: you should also state whether you are saving the world in an SSD or HDD.

User avatar
Festus1965
Member
Posts: 4181
Joined: Sun Jan 03, 2016 11:58
GitHub: Festus1965
In-game: Festus1965 Thomas Thailand Explorer
Location: Thailand ChiangMai
Contact:

Re: Optimised settings for >100 concurrent users?

by Festus1965 » Post

mdef wrote:
Tue Nov 16, 2021 14:13
Could you point me to where you wrote about tuning? I searched the forum and your posts (well, the first couple of pages of them), ...
go http://tuning.minetest.one/

the forum is not the wide internet, and as of there are still Helpers illegal deleting posts of me, I can't trust for such important data.
Human has no future (climate change)
If urgend, you find me in Roblox (as CNXThomas)

mdef
New member
Posts: 7
Joined: Tue Nov 16, 2021 11:29

Re: Optimised settings for >100 concurrent users?

by mdef » Post

Wonderful, thanks for the detailed write-up @Minix and thanks for the link @Festus1965.

I was running top while the server was up and CPU usage was about 65 to 70%. I was not sure, however, if that was single thread usage or usage across all four cores. But this points to the network as a limiting factor, but even considering the peak you mentioned of 42 KB/s times 105 players is a far cry from the 100 Mbit/s my connection is capable of (and usually delivers). Still, nmon is a good tip and I will check network usage next time the server is up. Needless to say, it is connected directly via 1 Gbit/s ethernet to the router.

When it comes to mods, I am only using a few:
  • edutest
  • edutest_chatcommands
  • unified_inventory
  • worldedit
  • worldedit_hud_helper
  • worldedit_additions
Is any of them known to be performance hogs? I can also try disabling worldedit while the server is up, I usually don't need it while the workshop is running and the players can't use it anyway.
I am using the standard Minetest Game without any additions.

Thanks also for the tips concerning limiting writes to the SSD (that's where the world data is stored as well as the game data). I will certainly try keeping more of the game data in memory.

As a side note, I have played with the server settings a little bit in an attempt to improve performance. It's just difficult to test this with 100 players simultaneously... once I have them on the server, the workshop is on and I can't fiddle with the settings.
Anyway, here are the changes I made from the default:

Code: Select all

# Default: max_simultaneous_block_sends_per_client = 40
# Reduced to limit network load
max_simultaneous_block_sends_per_client = 20

# Default: max_packets_per_iteration = 1024
# Increased since I saw error messages in the server log that the packet quota was used up
max_packets_per_iteration = 2048

# Default: active_object_send_range_blocks = 4
# Reduced in an attempt to limit server CPU load
active_object_send_range_blocks = 3

# Default: active_block_range = 3
# Reduced in an attempt to limit server CPU load
active_block_range = 2

# Default: max_block_send_distance = 10
# Reduced to limit network and CPU load
max_block_send_distance = 8

# Default: server_map_save_interval = 5.3
# Reduced to limit CPU and I/O load
server_map_save_interval = 10.3

# dedicated_server_step = 0.09
# Reduced to limit CPU load
dedicated_server_step = 0.2 
Do these modifications make sense to you? Or did I make things worse?

Thanks again for your help, it's much appreciated!

User avatar
Festus1965
Member
Posts: 4181
Joined: Sun Jan 03, 2016 11:58
GitHub: Festus1965
In-game: Festus1965 Thomas Thailand Explorer
Location: Thailand ChiangMai
Contact:

Re: Optimised settings for >100 concurrent users?

by Festus1965 » Post

what database ?
* I use "player_backend = postgresql"
* I use M.2 SSD. again 4 times faster than SSD
* area all RAM slots used ... even if same ram at all = faster access if 4 of 4 as only 1 of 4
I night tell: all mods not needed when real aktive = false
* active_object_send_range_blocks = 4, auf 3 oder 2 ... testen
* active_block_range = 3 to 2
* max_block_send_distance = 10, to 5

Hmm, if you want you can test my server: maximum online was 75 about than you can compare some feeling, even I have much mods

Under linux check for sysctl.conf and search for
* rising file cache
* avoid swap

and in minetest server ...
#server_unload_unused_data_timeout = 600 # 86400 24 h, 1 Tag
server_unload_unused_data_timeout = 86400
= keep used data longer in memory, not need to realod ...
Human has no future (climate change)
If urgend, you find me in Roblox (as CNXThomas)

User avatar
Minix
Member
Posts: 144
Joined: Thu Nov 12, 2020 13:51
In-game: Minix

Re: Optimised settings for >100 concurrent users?

by Minix » Post

You have very little mods in fact, that makes me wonder what kind of lag are you experiencing, is it network related, high ping for example? or just the server taking too long to respond to certain actions, maybe are you running other programs on the server apart from just Minetest?

The settings you changed make sense and can help, except for active_object_send_range_blocks, reducing this can possibly reduce the CPU load a bit but what it mostly does is to reduce network traffic since the server will not send players data about objects that are farther than active_object_send_range_blocks * 16 nodes (blocks in MC terms). Objects include mobs, dropped items and things like boats/minecarts, so I doubt this will help you.

mdef
New member
Posts: 7
Joined: Tue Nov 16, 2021 11:29

Re: Optimised settings for >100 concurrent users?

by mdef » Post

Thanks again to both of you.

Festus1965, I am running the default SQLite3 backend. All RAM slots are used. If I/O is indeed the issue then I should see an improvement if I tell minetest not to dump the data using "server_unload_unused_data_timeout = 86400", right? By the way, what's the relationship to server_map_save_interval which I am already using?

Minix, the computer is not running anything else while minetest-server is active. Just a bare bones Ubuntu system with no other services.

The lag that the players experience is that:
  • Parts of the map are not rendered when you get to them. That is mostly when using fly mode. Usually they update after a short while.
  • Players and other objects are not updated. One second your friend is right in front of you, the next minute they are gone. One second the piece you wanted to mine is there, the next it is gone since someone else (you did not see) mined it.
  • Bush saplings never grow. According to the documentation, they should grow within 8 minutes or so. When running the workshop with fewer players and identical settings, I am certain they did grow. Now they are stuck in sapling stage the entire four hours we play.
Especially the last issue might point to a CPU bottleneck, right? If I understand it correctly, the server increases tick times when it cannot keep up with changes. Is that correct?

User avatar
Minix
Member
Posts: 144
Joined: Thu Nov 12, 2020 13:51
In-game: Minix

Re: Optimised settings for >100 concurrent users?

by Minix » Post

If I/O is indeed the issue then I should see an improvement if I tell minetest not to dump the data using "server_unload_unused_data_timeout = 86400", right?
You are correct, this will help with disk I/O. The official documentation on both settings you mentioned is misleading, I have not inspected the engine source code to verify what they would actually do but from prior extensive experimentation I found that server_unload_unused_data_timeout is just a factor that increases the amount of memory used for world cache and server_map_save_interval is roughly the interval in seconds at which world data is dumped to disk.

The first two lag symptoms you mentioned are caused by I/O bottlenecks either from disk or network, the CPU can also affect this. In the first post you mentioned you have a 100 Mbit/s internet connection, I assume the students connect from outside the network the server is in, that is their traffic goes through the internet, could it be that your internet service is asymmetric? if that is the case then your upload speed may actually be around 20 Mbit/s or so, then you are probably running into an upload speed bottleneck. Can you perform an internet speed test and verify what your upload/download speeds actually are? you can use speedtest-cli from the distribution repositories for that task.

The other possible cause is that your SSD is just being overwhelmed.

To verify this is a network issue or not you should join the server as a player when a workshop is taking place, press F5, and take note of the max_lag value. If you cannot get the debug screen to show up use Minetest 5.4.0 because starting from 5.5.0 the debug screen now requires a server privilege.
If I understand it correctly, the server increases tick times when it cannot keep up with changes. Is that correct?
you are correct, it is also possible that your CPU or disk are saturated. Please check your max tick time, that is the max_lag value.

mdef
New member
Posts: 7
Joined: Tue Nov 16, 2021 11:29

Re: Optimised settings for >100 concurrent users?

by mdef » Post

Great, thanks so much for taking the time to walk me through all of this!

My internet connection is indeed symmetric. I do regular speed tests and I always have 100/100 Mbit/s. There is still the possibility that the Zoom meeting I am in while the workshop is running takes up some of that bandwidth, but if your numbers from the previous post are correct, that should not have a major impact. Still, I will connect to the Zoom meeting via my mobile phone the next time around. The Zoom client runs on a different machine, so at least it's not eating up any CPU.

I will try adjusting the server_unload_unused_data_timeout setting and increase the server_map_save_interval for the next time and see what this does. If I understand it correctly, I can also manually trigger writing to disk using /save? If that is right, I might just do the writing manually during the breaks as to avoid any hangs based on I/O.

Also, thanks for the tip about max_lag. Do you know which privilege I need in 5.5.0 to show max_lag?

User avatar
Festus1965
Member
Posts: 4181
Joined: Sun Jan 03, 2016 11:58
GitHub: Festus1965
In-game: Festus1965 Thomas Thailand Explorer
Location: Thailand ChiangMai
Contact:

Re: Optimised settings for >100 concurrent users?

by Festus1965 » Post

Upps,
you didn't mention using 5.5.0 !!! so as of not really continue things from dev team, most of my hints might not work anymore. Does lag show up with /status ?

check your memory usage after 1 hour, and cpu usage,
as CPU might just be near 20% ... is ok, if free RAM is near 20 GB = something wrong.
htop show both ...
Human has no future (climate change)
If urgend, you find me in Roblox (as CNXThomas)

User avatar
Minix
Member
Posts: 144
Joined: Thu Nov 12, 2020 13:51
In-game: Minix

Re: Optimised settings for >100 concurrent users?

by Minix » Post

Then your internet connection is probably not a problem, 100 Mbit/s is more than enough for your player count.

Sorry I was wrong about viewing the max_lag value, just for your information the privilege required to get access to the basic debug screen when you press F5 is called "basic_debug" but players with admin privileges should already have it anyway, however to view the max_lag value you do not use the debug screen, you just need to type "/status" in chat as Festus stated. There is no "/save" command in Minetest, so you cannot stop the server from dumping data entirely.

We do not see servers with close to 100 players often so experience on how the game behaves in that situation is limited, but we will get to the problem.

EDIT: I was looking up benchmarks for your i7 and it seems it should be able to handle around 100-120 players with your mods, but on a server with more mods it would struggle with just 90 players. I am just extrapolating from my experience so there is a big chance that I am wrong, but next time you have a chance to debug the server please take note of max_lag and use htop to check memory usage and also verify if there are cores reaching 100%.
Last edited by Minix on Fri Nov 19, 2021 22:21, edited 1 time in total.

Mineminer
Member
Posts: 325
Joined: Mon Mar 05, 2018 04:05

Re: Optimised settings for >100 concurrent users?

by Mineminer » Post

Minix wrote:
Fri Nov 19, 2021 21:54
Then your internet connection is probably not a problem, 100 Mbit/s is more than enough for your player count.

Sorry I was wrong about viewing the max_lag value, just for your information the privilege required to get access to the basic debug screen when you press F5 is called "basic_debug" but players with admin privileges should already have it anyway, however to view the max_lag value you do not use the debug screen, you just need to type "/status" in chat as Festus stated. There is no "/save" command in Minetest, so you cannot stop the server from dumping data entirely.

We do not see servers with close to 100 players often so experience on how the game behaves in that situation is limited, but we will get to the problem.
Would be intensively dangerous but you can. Just set the save to disk to "0", this will just non-presists to RAM (as soon as power is lost or the server is offlined/crashed ALL data is lost).

User avatar
Minix
Member
Posts: 144
Joined: Thu Nov 12, 2020 13:51
In-game: Minix

Re: Optimised settings for >100 concurrent users?

by Minix » Post

Mineminer wrote:
Fri Nov 19, 2021 22:14
Would be intensively dangerous but you can. Just set the save to disk to "0", this will just non-presists to RAM (as soon as power is lost or the server is offlined/crashed ALL data is lost).
Are you referring to server_map_save_interval?

Mineminer
Member
Posts: 325
Joined: Mon Mar 05, 2018 04:05

Re: Optimised settings for >100 concurrent users?

by Mineminer » Post

Minix wrote:
Fri Nov 19, 2021 22:15
Mineminer wrote:
Fri Nov 19, 2021 22:14
Would be intensively dangerous but you can. Just set the save to disk to "0", this will just non-presists to RAM (as soon as power is lost or the server is offlined/crashed ALL data is lost).
Are you referring to server_map_save_interval?
Yes, logics tells me that this will turns that off. So if that what they want, they can surely tell it to quits it.

User avatar
Minix
Member
Posts: 144
Joined: Thu Nov 12, 2020 13:51
In-game: Minix

Re: Optimised settings for >100 concurrent users?

by Minix » Post

Mineminer wrote:
Fri Nov 19, 2021 22:16

Yes, logics tells me that this will turns that off. So if that what they want, they can surely tell it to quits it.
There is database backend called dummy which does just what you just said, it stores the world only in memory, but I should test your suggestion.

Mineminer
Member
Posts: 325
Joined: Mon Mar 05, 2018 04:05

Re: Optimised settings for >100 concurrent users?

by Mineminer » Post

Minix wrote:
Fri Nov 19, 2021 22:23
Mineminer wrote:
Fri Nov 19, 2021 22:16

Yes, logics tells me that this will turns that off. So if that what they want, they can surely tell it to quits it.
There is database backend called dummy which does just what you just said, it stores the world only in memory, but I should test your suggestion.
It's gonna be removed so it might be worth a try as an alternative.

User avatar
Festus1965
Member
Posts: 4181
Joined: Sun Jan 03, 2016 11:58
GitHub: Festus1965
In-game: Festus1965 Thomas Thailand Explorer
Location: Thailand ChiangMai
Contact:

Re: Optimised settings for >100 concurrent users?

by Festus1965 » Post

I give you a hint on whom you should talk real about admins know how to make server with huge gamer:
viewtopic.php?p=396942#p396942 = server admin they proofed it is possible
* Asia Thailand (game Braincraft) max 93 / seen 73
* Your Land 42 / 26
* Pandorabox, 30 / 26
* Capture the Flag (Classes!) 30 / 26
* Tunnelers' Abyss 30 / 21
* SkyBlock! by Telesight 25 / 20
* Blocky Survival 100 / 17
* Subgames for all! 200 / 14
* CAIC School 50 / 14
* Eurythmia Evolution [Francais/English] 30 / 13
* IFS (IhrFussel's Server) 40 / 12
* Tech Age Survival [DE/EN] 20 / 12
* LinuxForks FREE TOILET PAPER 33 / 11
* MinersWorld by Telesight 60 / 9
* SkyWars by Telesight 50 / 10
* REWORLD[ENG] 30 / 9
* LinuxForks FREE ... 33 / 8
* Paradis 15 / 8
* Xanadu 40 / 8
* BuildersWorld by Telesight 30 / 6
* Survival server No. 521 60 / 5
* Zarnica Survival 50 / 3
* Liberty Land 50 / 3
but a big max_gamer setting doesn't mean they CAN, look at the max gamer I detected during 6 months.

So if you wanna test, maybe you have to check out MultiCraft 2.0.0 but HIDE it and CLOSE it with a game password !
This servers have most proofed with also some mods to handle around 75 gamer same time, moving individuals.

So far, my 5.2.0 is the most fastest proofed server, with even hard mods like technic, mesecons, pipeworks, trees ... and decide from whom you wanna get information's that are working.

And before I may close me server next year, I give you the option to test it, with your mates if you want, and see the difference to yours at some point of gamer in. I would set a game password, and take new gamer off for you that you get real data.
Otherwise join also with about 20 partner one of the MC2.0.0 server and compare.
Human has no future (climate change)
If urgend, you find me in Roblox (as CNXThomas)

mdef
New member
Posts: 7
Joined: Tue Nov 16, 2021 11:29

Re: Optimised settings for >100 concurrent users?

by mdef » Post

Thanks again everyone for chiming in! I will have another chance to test my settings in a couple of weeks. Of course, this will be during a live workshop, so I have little chance to tinker with the settings. But I have some ideas on what I can improve and it is good to hear that my machine should be able to handle the number of players I have. I guess optimising I/O and making Minetest use more RAM is my best bet right now.

I'll report back how it went!

User avatar
Festus1965
Member
Posts: 4181
Joined: Sun Jan 03, 2016 11:58
GitHub: Festus1965
In-game: Festus1965 Thomas Thailand Explorer
Location: Thailand ChiangMai
Contact:

Re: Optimised settings for >100 concurrent users?

by Festus1965 » Post

MultiCraft2.0 server Catlandia had a max of 123 Gamer last 24 hours ... I have Screenshot ...
check it out, test and look what they do.
Human has no future (climate change)
If urgend, you find me in Roblox (as CNXThomas)

sfan5
Moderator
Posts: 4094
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

Re: Optimised settings for >100 concurrent users?

by sfan5 » Post

There are good general tips in this thread. As explained network or disk will not be an issue for your case.

Using Minetest Game with few mods are good conditions for reducing lag (certain other games are plagued with performance issues), though without reviewing Edutest I can't say whether it performs badly. For WorldEdit at least I can assure you that it doesn't do anything if you don't use it.

At >100 players you might also be hitting suboptimal design in the engine, since that is a rare case even today. Hard to say without taking a closer look.
Two things caught my eye:
  • You say bush saplings never grow, this would mean ABMs do not run (enough). You should have warning like "active block modifiers took XXX ms (processed N of M active blocks)" in your logs.
    -> You can try raising the abm_time_budget setting, but be aware that this can introduce more lag.
  • You mentioned error messages about the packet quota being used up.
    -> Since you have lots of players raising max_packets_per_iteration is likely the right choice. But there could also be a different underlying reason, this would have to be debugged in detail.
    This could also have to do with overhead of telling each of the 100 players where each other is at any given time. Are your players all in roughly the same place or spread around the map? If it's not necessary for everyone to be able to locate everyone else check out the player_transfer_distance setting.
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

User avatar
ywwv
Member
Posts: 299
Joined: Mon Jan 18, 2021 11:51

Re: Optimised settings for >100 concurrent users?

by ywwv » Post

Mineminer wrote:
Fri Nov 19, 2021 22:14
Minix wrote:
Fri Nov 19, 2021 21:54
Then your internet connection is probably not a problem, 100 Mbit/s is more than enough for your player count.

Sorry I was wrong about viewing the max_lag value, just for your information the privilege required to get access to the basic debug screen when you press F5 is called "basic_debug" but players with admin privileges should already have it anyway, however to view the max_lag value you do not use the debug screen, you just need to type "/status" in chat as Festus stated. There is no "/save" command in Minetest, so you cannot stop the server from dumping data entirely.

We do not see servers with close to 100 players often so experience on how the game behaves in that situation is limited, but we will get to the problem.
Would be intensively dangerous but you can. Just set the save to disk to "0", this will just non-presists to RAM (as soon as power is lost or the server is offlined/crashed ALL data is lost).
this is solvable using persistent RAM. https://www.intel.com/content/www/us/en ... emory.html

User avatar
celeron55
Administrator
Posts: 532
Joined: Tue Apr 19, 2011 10:10
GitHub: celeron55
IRC: celeron55

Re: Optimised settings for >100 concurrent users?

by celeron55 » Post

Minetest's built in profiler is quite useful in figuring out where the CPU time is going. Just set profiler_print_interval = 10 and debug_log_level = info or so and look at the log.

But continuing with the theme of this thread, here are some blind guesses:

Sounds like you have control over the clients. Have you tried increasing client_unload_unused_data_timeout and client_mapblock_limit on the clients? This will cause the clients to request less stuff from the server as they continue to keep it a longer time in their memory once they have it.

Also, reducing max_block_send_distance is an ages old optimization that can be done on the server and is effective if map sending is using too much CPU time and you can accept a lower visible range.

mdef
New member
Posts: 7
Joined: Tue Nov 16, 2021 11:29

Re: Optimised settings for >100 concurrent users?

by mdef » Post

Hello again,

Once more, thanks for all of the input you have provided! I ran the second instance of the workshop yesterday with a maximum of 95 players on the server. Overall, the performance was much improved over the previous iteration. There was still some lag at times, but the game was much more playable than the first time around. I am not sure what to attribute this to, but the changes in the config certainly played a role.

I was observing the max_lag value over the course of the four hours we played and it oscillated pretty wildly between 1 and 5. Again, it is not clear to me why and how these changes happen. It did not correlate with CPU usage which stayed well below 50% on each of the four cores. Memory usage never went above 500 MB, even though I had changed the server_unload_unused_data_timeout and server_map_save_interval as advised. By the way, minetest started five processes which meant that the load was pretty well distributed across CPU cores. Two of those processes seem to have done the heavy lifting, though.

In any case, I have posted the config file as well as my other material for the workshops on GitHub: https://github.com/steghoja/minetest-scrum
I hope they will be useful for others in the future.

Once more, thank you for all of your input! It was much appreciated that the community helped me out on this. OSS at its best!

Cheers!

Post Reply

Who is online

Users browsing this forum: No registered users and 21 guests