On Tracing the Memory Behavior of Dalvik Applications

Hussein, Ahmed


The Dalvik virtual machine hosts all user applications for the Android platform. Written in the Java programming language, the performance of these applications is critical to the user experience of Android. Understanding the behavior of applications running on Dalvik is central to diagnosing application bottlenecks and also to improving the support provided by Dalvik to representative workloads. To date, no infrastructure for Dalvik has allowed understanding of application behavior in the context of the Dalvik implementation. This thesis develops and applies a memory profiling framework for measuring the platform-independent memory behavior of applications running on Dalvik. Validation of the resulting profiling framework is achieved by porting standard Java benchmarks with known memory behaviors so that they can execute on Dalvik with substantially similar profiles. The profiling framework thus allows evaluation of industry-standard Android benchmarks to be done with confidence.

  author = {Hussein, Ahmed},
  title = {On Tracing the Memory Behavior of Dalvik Applications},
  school = {Purdue University},
  year = {2013},
  month = {December}