Application Performance Profiling in Android Dalvik Virtual Machines

Hung-Cheng CHANG
Kuei-Chung CHANG
Ying-Dar LIN
Yuan-Cheng LAI

IEICE TRANSACTIONS on Information and Systems   Vol.E99-D    No.5    pp.1296-1303
Publication Date: 2016/05/01
Publicized: 2016/01/25
Online ISSN: 1745-1361
DOI: 10.1587/transinf.2015EDP7277
Type of Manuscript: PAPER
Category: Software System
Android,  Dalvik virtual machine,  profiling,  

Full Text: PDF(1.8MB)>>
Buy this Article

Most Android applications are written in JAVA and run on a Dalvik virtual machine. For smartphone vendors and users who wish to know the performance of an application on a particular smartphone but cannot obtain the source code, we propose a new technique, Dalvik Profiler for Applications (DPA), to profile an Android application on a Dalvik virtual machine without the support of source code. Within a Dalvik virtual machine, we determine the entry and exit locations of a method, log its execution time, and analyze the log to determine the performance of the application. Our experimental results show an error ratio of less than 5% from the baseline tool Traceview which instruments source code. The results also show some interesting behaviors of applications and smartphones: the performance of some smartphones with higher hardware specifications is 1.5 times less than the phones with lower specifications. DPA is now publicly available as an open source tool.

open access publishing via