adaptive resources allocation