DroidPerf: Profiling Memory Objects on Android Devices

被引:4
|
作者
Li, Bolun [1 ]
Zhao, Qidong [1 ]
Jiao, Shuyin [1 ]
Liu, Xu [1 ]
机构
[1] N Carolina State Univ, Raleigh, NC 27695 USA
关键词
Profiling; memory inefficiencies; performance; Android; LOCALITY;
D O I
10.1145/3570361.3592503
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Optimizing performance inefficiencies in memory hierarchies is well-known for native languages, such as C and C++. There are few studies, however, on exploring memory inefficiencies in Android Runtime (ART). Running in ART, managed languages, such as Java and Kotlin, employ various abstractions, such as runtime support, ahead-of-time (AOT) compilation, and garbage collection (GC), which hide important execution details from the plain source code. In this paper, we develop DroidPerf, a lightweight, object-centric memory profiler for ART, which associates memory inefficiencies with objects created and used in Android apps. With such object-level information, DroidPerf is able to guide locality optimization on memory layouts, access patterns, and allocation patterns. Guided by DroidPerf, we optimize a number of popular Android apps and obtain significant performance gains. Many inefficiencies are confirmed by the code authors and optimization patches are under evaluation for upstreaming. As a practical tool, DroidPerf incurs similar to 32% runtime overhead and similar to 14% memory overhead on average. Furthermore, DroidPerf works in the production environment with off-the-shelf hardware, OS, Dalvik virtual machine, ART, and unmodified Android app source code.
引用
收藏
页码:75 / 89
页数:15
相关论文
共 50 条
  • [31] A Security Configuration Assessment for Android Devices
    Vecchiato, Daniel
    Vieira, Marco
    Martins, Eliane
    30TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, VOLS I AND II, 2015, : 2299 - 2304
  • [32] Remote control and instrumentation of Android devices
    Diaz-Zayas, Almudena
    Recio-Perez, Alvaro M.
    Garcia-Perez, Cesar A.
    Merino, Pedro
    PROCEEDINGS OF 2016 13TH INTERNATIONAL CONFERENCE ON REMOTE ENGINEERING AND VIRTUAL INSTRUMENTATION (REV), 2016, : 190 - 195
  • [33] Implementing a Spatial Agenda in Android Devices
    Ojeda-Guerra, C. N.
    DISTRIBUTED COMPUTING AND ARTIFICIAL INTELLIGENCE, 2012, 151 : 629 - 636
  • [34] Suvery on Privacy Protection of Android Devices
    Liang, Hongliang
    Wu, Dongyang
    Xu, Jiuyun
    Ma, Hengtai
    2015 IEEE 2ND INTERNATIONAL CONFERENCE ON CYBER SECURITY AND CLOUD COMPUTING (CSCLOUD), 2015, : 241 - 246
  • [35] Pedestrian Detection for Android Mobile Devices
    Li, Jing
    Qu, Fang
    Ma, Yingdong
    INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE AND APPLICATION ENGINEERING (CSAE), 2017, 190 : 603 - 611
  • [36] EdgeEmu - Emulator for Android Edge Devices
    Vijouyeh, Lyla Naghipour
    Bruno, Rodrigo
    Ferreira, Paulo
    DISTRIBUTED APPLICATIONS AND INTEROPERABLE SYSTEMS, DAIS 2023, 2023, 13909 : 110 - 127
  • [37] Enabling Zigbee Communications in Android Devices
    Hu, Siquan
    Fu, Yu
    She, Chundong
    Yao, Hui
    PROCEEDINGS OF THE 2ND INTERNATIONAL CONFERENCE ON COMPUTER AND INFORMATION APPLICATIONS (ICCIA 2012), 2012, : 659 - 662
  • [38] Video Watermarking for Android Mobile Devices
    Venugopala, P. S.
    Nayak, Anitha A.
    Sarojadevi, H.
    Chiplunkar, Niranjan N.
    PROCEEDINGS OF THE 10TH INDIACOM - 2016 3RD INTERNATIONAL CONFERENCE ON COMPUTING FOR SUSTAINABLE GLOBAL DEVELOPMENT, 2016, : 3554 - 3560
  • [39] Exfiltrating data from Android devices
    Do, Quang
    Martini, Ben
    Choo, Kim-Kwang Raymond
    COMPUTERS & SECURITY, 2015, 48 : 74 - 91
  • [40] Provisioning of Application Modules to Android Devices
    Kriz, Pavel
    Maly, Filip
    2015 25TH INTERNATIONAL CONFERENCE RADIOELEKTRONIKA (RADIOELEKTRONIKA), 2015, : 423 - 426