I hate replying to myself, but I did the test during my lunch hour, and now that's evening, I had a bit more time to do more testing. It appears that the big limiter on performance, is the dedicated server's single thread speed.
When I am logged in, no spawning, CPU utilisation is about 15%
Please note that an oddity of "TOP" is that if you have a four core machine, then it's possible to get CPU utilisation of 400%.
Let's spawn our first batch of 25 Fat guys. During spawn, it spikes:
But then settles a bit:
Once it settles, my client FPS is back over 100. Note my GPU is pretty idle (60%):
But my CPU is already boosting to 5.00Ghz (max I've allowed), and a couple cores are already pretty stressed:
Let's bump it up to 100 Fat Guys, (Sorry, I hate typing Hawaiian:
Server is almost at single core capacity.
On the client, my FPS has dropped to about 70fps, But note my GPU is even MORE idle, even though the load on it should be heavier:
My CPU is no more stressed than it was before.
Time to Crank it - Right to 200 Zeds.
By now the server has capped out a single core, and is using some of another core - If you know anything about parallel processing, you know this is not going to scale well.
Core two capped out for a few seconds (about 20) as I spawned in the extra 100, but I'm still getting a decent 36fps, and you can see the mathcing bit where my GPU got a bit of time off while the CPU was locked up:
Let's go to 300
The server isn't really much busier. Because it can't be. There's one single thread that can't be distributed across multiple core that is now the bottleneck.
Another indicator, I saw on another server optimisation thread that the server FPS should be between 20 and 35. (This was for an older build), but looking at the server logs, before I spawned anything:
2021-12-20T11:22:35 162.923 INF Time: 2.43m FPS: 35.19 Heap: 3243.6MB Max: 3243.6MB Chunks: 298 CGO: 9 Ply: 1 Zom: 0 Ent: 1 (1) Items: 0 CO: 1 RSS: 4500.6MB
35.19
When nearly 300 Zombies were spawned (Just less than because I got a few of these:
2021-12-20T11:38:46 1134.183 WRN Entity [type=EntityZombie, name=zombieFatHawaiian, id=570] fell off the world, id=570 pos=(3392.7, -1.7, -2292.9)
The FPS dropped dramatically. During Spawn, it was as low as 4.5
2021-12-20T11:38:45 1133.024 INF Time: 18.44m FPS: 4.53 Heap: 3297.4MB Max: 3396.6MB Chunks: 315 CGO: 33 Ply: 1 Zom: 165 Ent: 167 (319) Items: 0 CO: 1 RSS: 4740.3MB
Shortly after, it recovered:
2021-12-20T17:30:06 1178.138 WRN Forcing mesh processing after large delay
2021-12-20T17:30:21 1193.034 INF Time: 19.44m FPS: 21.51 Heap: 3217.5MB Max: 3396.6MB Chunks: 315 CGO: 35 Ply: 1 Zom: 113 Ent: 113 (173) Items: 0 CO: 1 RSS: 4740.3MB
So what do I conclude from the end of this?
(1) It's not your GPU, no matter what. In fact, the slower it goes, the less work the GPU has to do.
(2) If only you are getting big FPS drops, it's probably your PC.
(3) If everyone is getting big FPS drops, I'd say you're being stiffed on your rented server.
Hope this helps.