Device-Specific Linux Kernel Optimization for Android Smartphones

Pengfei Yuan,Yao Guo,Xiangqun Chen,Hong Mei
DOI: https://doi.org/10.1109/mobilecloud.2018.00018
2018-01-01
Abstract:To make smartphones more powerful, researchers have proposed many techniques to improve the performance of mobile systems and applications. As the most popular mobile operating system, Android is based on the Linux kernel. Therefore optimizing kernel performance can potentially accelerate Android smartphones.In this paper, we propose a compiler-based approach to constructing device-specific optimized Linux kernels for Android smartphones. By utilizing runtime feedback from the device, we can instruct the compiler to perform profile-guided optimization (PGO) and produce a Linux kernel image optimized specifically for the device, which can be shipped together with the device when it is manufactured, or released later in an update of the whole system. To the best of our knowledge, this paper is the first work that successfully applies PGO to the Linux kernel on Android smartphones to gain performance improvement.We conduct experiments on three different Android smartphones, namely Nexus 5X, Nexus 6 and Nexus 5. Results show that system performance improves by 11.1%, 4.1% and 9.3% on average, respectively. Specifically, we measure performance improvements of key Android system components such as multithreading and task scheduling, Binder, and storage and file systems.
What problem does this paper attempt to address?