Lightweight Code Outlining for Android Applications
Open Access
- 16 December 2025
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Architecture and Code Optimization
- Vol. 22 (4) , 1-23
Abstract
Android employs Ahead-of-Time (AOT) pre-compilation to enhance application launch speed and runtime performance. However, these generated OAT files over-consume the scarce memory and storage resources on mobile devices, leading to degraded user experience. Our analysis of several Android applications reveals an average code redundancy of 25.4%. To reduce the code size via redundancy elimination, we propose Calibro , a C ompilation- a ssisted li nk-time b ina r y code o utlining method. However, it will incur high build overhead, so we introduce several optimizations to better suit resource-limited mobile devices. Besides, we also propose optional filtering strategies to further meet performance requirements. Experimental results show that, under common scenarios, our method reduces the OAT file code size by 19.6% and the runtime memory usage by 15.4% on average, with negligible runtime performance degradation in terms of user experience and tolerable build overhead. Therefore, the proposed method shows promise for industrial deployment on real-world Android mobile devices.Keywords
Funding Information
- National Natural Science Foundation of China (62472330)
This publication has 36 references indexed in Scilit:
- Loop Rolling for Code Size Reduction2022
- F3M: Fast Focused Function Merging2022
- ANGHABENCH: A Suite with One Million Compilable C Benchmarks for Code-Size Reduction2021
- An Experience with Code-Size Optimization for Production iOS Mobile Applications2021
- BOLT: A Practical Binary Optimizer for Data Centers and Beyond2019
- Function Merging by Sequence Alignment2019
- Compressed Suffix Trees with Full FunctionalityTheory of Computing Systems, 2007
- Practical methods for constructing suffix treesThe VLDB Journal, 2005
- On-line construction of suffix treesAlgorithmica, 1995
- Approximate string-matching with q-grams and maximal matchesTheoretical Computer Science, 1992