monitor and optimise performance