Consumption and Runtime Automatic Software Performance Optimization on Android Smartphones
摘要
Energy consumption has become a major concern in computing nowadays. Hardware designs are more and more energy efficient, especially in the field of battery-based devices, as smartphones, the subject of study in this work. However, software ultimately drives hardware behavior, and it needs to be carefully designed to get the best performance. This task requires deep knowledge on the hardware architecture, and performing it by experts is unpractical for all existing hardware infrastructures. In this work, we propose an automated methodology to modify the source code so that the performance of the software is optimized, in terms of both its energy consumption and runtime. For that, a novel combinatorial multi-objective optimization problem is defined, and a micro cellular genetic algorithm is designed to address it. Results show important savings of up to 78% runtime and 64% consumption performance on a commercial Android device.