Skip to content

Files

Latest commit

7f64ae7 · Apr 14, 2024

History

History

007

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Apr 14, 2024
Apr 14, 2024
Apr 14, 2024
Apr 14, 2024
Apr 14, 2024
Apr 14, 2024
Apr 14, 2024

007

Go to google cloud with terraform, run 10 n1-standard-8 VMs with 1000 clients each to get 10K players each against a c3-highcpu-176

Remove the server <-> backend comms for the moment, and focus on the client to server UDP packets.

To run:

terraform init
terraform apply

You'll need significant quota for n1 cores and c3 instances in your google cloud to be able to run. If you don't have it, edit the main.tf for different instance types.

Result:

image

Even with the c3-highcpu-176 for the server, we can only get 10-25k clients max. Above this, UDP packets start to get dropped.

You can see these drops on the server with:

sudo apt install net-tools -y
netstat -anus

The problem is that with c3 class machines:

"Using gVNIC, the maximum number of queues per vNIC is 16. If the calculated number is greater than 16, ignore the calculated number, and assign each vNIC 16 queues instead."

https://cloud.google.com/compute/docs/network-bandwidth

This means even though we have a massive amount of cores, only 16 are actively available to receive packets. When we overload these, UDP packets are dropped on receive, even though we are only using a fraction of the CPU available.