Modern mobile applications have grown rapidly in binary size, which restricts user growth and hinders updates for existing users. Thus, reducing the binary size is important for application developers. Recent studies have shown the possibility of using link-time code size optimizations by re-invoking certain compiler optimizations on the linked intermediate representation of the program. However, such methods often incur significant build time overhead and require intrusive changes to the existing build pipeline.
In this paper, we propose several novel optimization techniques that do not require significant customization to the build pipeline and reduce binary size with low build time overhead. As opposed to re-invoking the compiler during link time, we perform true linker optimization directly as optimization passes within the linker. This enables more optimization opportunities such as pre-compiled libraries that prior work often could not optimize. We evaluate our techniques on several commercial iOS applications including NewsFeedApp, ShortVideoApp, and CollaborationSuiteApp, each with hundreds of millions of daily active users. Our techniques on average achieve 18.4% binary size reduction across the three commercial applications without any user-perceivable performance degradations.
Sat 25 FebDisplayed time zone: Eastern Time (US & Canada) change
16:40 - 17:40 | Code Size & BugsResearch Papers at St. Laurent 3 Chair(s): Fernando Magno Quintão Pereira Federal University of Minas Gerais | ||
16:40 20mTalk | Automatically Localizing Dynamic Code Generation Bugs in JIT Compiler Back-End Research Papers DOI | ||
17:00 20mTalk | HyBF: A Hybrid Branch Fusion Strategy for Code Size Reduction Research Papers Rodrigo C. O. Rocha University of Edinburgh, Charitha Saumya Purdue University, Kirshanthan Sundararajah Purdue University, Pavlos Petoumenos University of Manchester, Milind Kulkarni Purdue University, Michael F. P. O'Boyle University of Edinburgh DOI | ||
17:20 20mTalk | Linker Code Size Optimization for Native Mobile Applications Research Papers Gai Liu ByteDance, Umar Farooq ByteDance, Chengyan Zhao ByteDance, Xia Liu ByteDance, Nian Sun ByteDance DOI |