E^3: Energy-Efficient Engine for Frame Rate Adaptation on Smartphones