Well, i’ve finally managed to implement a dedicated ArmA 3 Alpha [DEV] server on my VPS.
It worked surprisingly well with wine.
The reason i’m using wine is that BIS [Bohemia Interactive Studios] haven’t yet released a linux dedicated server binary yet, but as forum posts mention it’s due to be released after the win32 dedicated. So here is me hoping it’ll get released soon.
The process was fairly straight forward. install wine and xvfb on the VPS. Since the win32 client pretty much expects an GUI environment to be available that’s what i had to do, from what i know there’s no flag for wine to tell it to send all drawing to /dev/null and just run the application headlessly.
The biggest issue was performance, at least in the beginning. I launched the arma3server.exe using wine and it was a tedious slow-start. And the mission loading was a mile-long walk of a load.
Though after the mission was loaded the server FPS and general gameplay was fairly smooth as shown in the ”#monitor 5″ command in ArmA that shows various game server runtime statistics in the chatlog. Stuff like network bandwidth used and server CPU usage and server FPS.
First i thought it was due to the wine-layer putting a lot of overhead and that it wouldn’t work better than this. But i didn’t settle for that and started to measure and profile the host and the game server service.
What i found after analysing the data is that the IO was the bottleneck. Long IO queues and IO wait. From experience i know that’s usually a result of a IO subsystem performance issue.
So i contacted the VPS provider with my suspicions and results, and no shorter than 4 hours they had found the culprit. Another customer was abusing IO and caused IO delays for the other users on the node.
I had a couple of thoughts during the process.
First one was if they’d under dimensioned their IO subsystem on the node.
And second, what was that abusing customer’s workload?. My suspicions range was a possible BitTorrent seedserver. Since the workload they present is heavy on network and disk IO during operation. And mostly so during hash/consistency check on downloaded files/data.
And third, is my workload within reasonable limits?. I personally believe it is since the workload is hard to really affect since the arma3server.exe doesn’t come with that many tunables. Or can be configured in any performance relevent way that would affects it’s disk IO usage. Most settings are for network IO only.
That’d be the end of this post, If you wanna join and play some ArmA 3 Alpha [DEV Build] games with me. The server can be reached at anirev.net:2302 in the game. The name of the server is.
[DEV] Revellion’s A3 Alpha Server
See you ingame.