Then you can tune the PID parameters.
In a lot of cases the time to settle is so short that it doesn't matter but sometimes it does. When you operate datacenter you might not want to wait for hours for PID to spin up the right amount of servers.
That means either you'd have to run the control loop comparatively slowly (e.g. once every five minutes), or you'd need to have the gain very low, or you'd ave to tolerate a lot of overshoot. None of which will produce great results.
A more sophisticated controller would be able to take into account the fact there are servers currently starting up, and only call for more if those already on the way won't be sufficient.
> A more sophisticated controller would be able to take into
> account the fact there are servers currently starting up,
> and only call for more if those already on the way won't be sufficient.
cant that be modelled into the transfer function characterizing the system. Even linear dynamics are quite capable of modeling sluggish dynamics, so PIDs should be able to handle them fine. If there are strong nonlinearities and the system may start far from a desired set point (to the extent that local linearizations are far too inaccurate) or may venture far out, then yes PID may indeed have trouble.
A model predictive controller will need much less iterations because it would actually try to predict number of servers necessary based on some kind of model of the server farm.
Parameters for that model can even be learned/adjusted over time, automatically.