Accelerating App Recompilation across Android System Updates by Code Reusing
Wu, Hongtao ; Chen, Yu ; Xie, Mengfei ; Yang, Futeng ; Yan, Jun ; Ma, Jiang ; Fu, Jianming ; Xue, Chun Jason ; Li, Qingan
Wu, Hongtao
Chen, Yu
Xie, Mengfei
Yang, Futeng
Yan, Jun
Ma, Jiang
Fu, Jianming
Xue, Chun Jason
Li, Qingan
Author
Wu, Hongtao
Chen, Yu
Xie, Mengfei
Yang, Futeng
Yan, Jun
Ma, Jiang
Fu, Jianming
Xue, Chun Jason
Li, Qingan
Chen, Yu
Xie, Mengfei
Yang, Futeng
Yan, Jun
Ma, Jiang
Fu, Jianming
Xue, Chun Jason
Li, Qingan
Supervisor
Department
Computer Science
Embargo End Date
Type
Conference proceeding
Date
License
Language
Collections
Research Projects
Organizational Units
Journal Issue
Abstract
Android utilizes Ahead-of-Time (AOT) compilation technology to precompile applications and stores the compiled code in OAT files, thereby improving app performance. When the Android system is updated, the old OAT files become invalidated. Applications will fall back to interpreted execution, resulting in degraded performance. To accommodate the frequent updates to the Android system that commonly occur on a monthly basis for most smartphone manufacturers, apps must be frequently recompiled into OAT files to promptly restore optimal app performance. However, recompiling applications is a resource-consuming process that cannot be completed quickly. Users have to endure issues such as device overheating and lag, which are caused by performance degradation after system updates. This paper evaluated popular Android apps across different system updates and made an important observation: up to 99% of the compiled code can be reused across different system updates, rendering most existing recompilation efforts unnecessary. Based on this observation, this paper proposes a method to accelerate app recompilation across Android system updates by reusing the old OAT files. We evaluated the proposed method with eight popular apps, on ten open-source Android system pairs and one closed-source Android system pair provided by a smartphone manufacturer. These Android system pairs have the same Android Runtime (ART) version and execute AOT compilation in both speed and speed-profile modes. Experimental results show that the proposed method reuses approximately 95% of compiled methods, achieving average speedups of 2.12× in CPU time and 1.39× in wall-clock time in speed-profile mode. In speed mode, the proposed method reuses about 99% of compiled methods, achieving average speedups of 5.15× in CPU time and 2.80× in wall-clock time, respectively. The proposed method not only accelerates app recompilation but also generates OAT files identical to those generated by native AOT compilation, without introducing security issues. Therefore, it holds significant promise for real-world deployment and has the potential to enhance user experience by speeding up the generation of new OAT files for applications.
Citation
H. Wu, Y. Chen, M. Xie, F. Yang, J. Yan, J. Ma , et al., "Accelerating App Recompilation across Android System Updates by Code Reusing," 2026, pp. 577-588.
Source
Conference
2026 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)
Keywords
46 Information and Computing Sciences, 4612 Software Engineering
Subjects
Source
2026 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)
Publisher
IEEE
