Score:2

Spikes on softirqs RCU monitored with NetData on proxmox container

cn flag

I have a server with the following characteristics: https://www.soyoustart.com/it/offerte/1801sysgame05.xml

Processor Intel i7-4790K

RAM 32GB DDR3 1333MHz

Traffic Unlimited Anti-DDoS Included

Disks 1x240GB SSD

Bandwidth 250 Mbps

I've installed the Proxmox Linux distribution that runs a container based on Ubuntu server to handle a real-time TCP game server written in C++ that, at the moment, reached around 1000 online users, and we are going to double the current population soon.

The problem is that we are encountering a weird performance "bottleneck" as soon as the number of online users reaches ~850. As soon as it returns to ~800 or less, the bottleneck disappears. What practically happens is that players have to wait for about 30s to be connected to the server, while the players already connected are not experiencing any issue (no latency, no freezes etc.). It seems like network congestion, or cap-limit, or something similar that denies further connections to the same process and creates pressure on our CPU (as you can see from the screenshots below)

Here I have collected some graphs from our NetData where I have noticed the same "pattern". The softirqs RCU is particularly meaningful I guess but I do not know what does it mean exactly.

softirqs RCU: image

cpu usage/pressure: image

cpu frequency image

cpu temperature

image

I do not believe that the fault is our CPU itself, but as said above, seems like something related to a process limitation or something similar.

Do you have any idea of what's going on?

UPDATE:

another related graph

image

Michael Hampton avatar
cz flag
Obviously the prime suspect is the gameserver software itself. You should check its logs for this time period for any possible clues.
cn flag
There's nothing suspicious on logs unfortunately
Score:0
cn flag

I solved this problem by increasing the ulimit

In my specific case the issue was that ulimit must be increased (both the hard and the soft) and permanently configured inside the /etc/ folder for both the host and the lxc container.

Also, I changed my container to a privileged one, but I'm not sure it's really needed, there could be a way to fix it also for a priviledged container, but I could not achieve that.

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.