Energy system models based on linear programming have been growing in size
with the increasing need to model renewables with high spatial and temporal
detail. Larger models lead to high computational requirements. Furthermore,
seemingly small changes in a model can lead to drastic differences in runtime.
Here, we investigate measures to address this issue. We review the mathematical
structure of a typical energy system model, and discuss issues of sparsity,
degeneracy and large numerical range. We introduce and test a method to
automatically scale models to improve numerical range. We test this method as
well as tweaks to model formulation and solver preferences, finding that
adjustments can have a substantial impact on runtime. In particular, the
barrier method without crossover can be very fast, but affects the structure of
the resulting optimal solution. We conclude with a range of recommendations for
energy system modellers