[IEEE]
Cellular network enables pervasive data access, but it also increases the power consumption of smartphones due to the long tail problem, where the cellular interface has to stay in the high-power state for some time after each data transmission. To reduce the tail energy, data that will be used in the future can be prefetched. However, prefetching unnecessary data may waste energy, and this problem becomes worse when the network quality is poor. In this paper, we generalize and formulate the prefetch-based energy optimization problem, where the goal is to find a prefetching schedule that minimizes the energy consumption of the data transmissions under the current network condition. To solve this nonlinear optimization problem, we first propose a greedy algorithm, and then propose a discrete algorithm with better performance. We have implemented and evaluated the proposed algorithms in two apps: in-app advertising and mobile video streaming. Evaluation results show that the proposed algorithms can significantly reduce the energy consumption.