We are noticing what we think are very slow disk I/O operations on our gamelift instances for our first game session (and only first game session, later sessions are fine).
Profiling our game servers, we noticed, on the first game session, when our server loads our game’s map, a ~4 minutes loading time whereas it only takes a few seconds for the following game sessions.
Since this is 100% reproducible with the first game session and the second game session’s map loading isn’t abnormally long, we are very confident this is not an issue with our game or game engine but rather an issue with gamelift instances setup.
Reading some documentation about EC2, I stumbled across the notion of EBS volume pre-warming to reduce I/O latency.
However, there is very little information regarding if and how this applies to GameLift, at what step this pre-warming should be ran (I suppose it would be executed with the setup.sh script ?)…