Experience: aging or glitching? why does android stop responding and what can we do about it? [conference paper]

Conference

Proceedings of the 26th Annual International Conference on Mobile Computing and Networking - April 16, 2020

Authors

Mingliang Li, Hao Lin, Cai Liu, Zhenhua Li, Feng Qian (assistant professor), Yunhao Liu, Nian Sun, Tianyin Xu

Abstract

Almost every Android user has unsatisfying experiences regarding responsiveness, in particular Application Not Responding (ANR) and System Not Responding (SNR) that directly disrupt user experience. Unfortunately, the community have limited understanding of the prevalence, characteristics, and root causes of unresponsiveness. In this paper, we make an in-depth study of ANR and SNR at scale based on fine-grained system-level traces crowdsourced from 30,000 Android systems. We find that ANR and SNR occur prevalently on all the studied 15 hardware models, and better hardware does not seem to relieve the problem. Moreover, as Android evolves from version 7.0 to 9.0, there are fewer ANR events but more SNR events. Most importantly, we uncover multifold root causes of ANR and SNR and pinpoint the largest inefficiency which roots in Android's flawed implementation of Write Amplification Mitigation (WAM). We design a practical approach to eliminating this largest root cause; after large-scale deployment, it reduces almost all (>99%) ANR and SNR caused by WAM while only decreasing 3% of the data write speed. In addition, we document important lessons we have learned from this study, and have also released our measurement code/data to the research community.

Link to full paper

Experience: aging or glitching? why does android stop responding and what can we do about it?

Keywords

mobile computing

Share