by Erik André (@erikandre) on Tuesday, 22 September 2015

+4
Vote on this proposal
Status: Confirmed & Scheduled
View session in schedule
Section
Core Development - Full talk (45 minutes)

Technical level
Intermediate

Media

Objective

To show developers a new way of using memory dumps to analyze those really tricky bugs (where stacktraces and logs are not enough)

Description

Memory dumps have long been used in Java to find and analyze memory related issues such as memory leaks.
However, with the wealth of information available in every memory dump, why are we not using them when trying to analyze other bugs as well?
This session will outline a new way of working with memory dumps what will allow you, the developer, to harness all this powerful information when analyzing crashes and bugs.

Presentation Outline

1. Introduction

Who am I? What is Badoo? and why do we care about memory dumps?

2. What is a memory dump

A brief introduction to memory dumps covering questions such as: What is a memory dump? and What information can we find in a memory dump?

3. Current use cases

An outline on the most common uses cases for memory dumps (on Android), focusing on memory leaks and OutOfMemoryErrors.

4. Beyond the memory leak

Looking back at the information that is available to us in a memory dump, what could we do besides use them for finding memory leaks?

5. The case against HPROF

Why is HPROF not a good file format if you want to go beyond memory leaks? What could be

6. Introducing BMD

An introduction to the Badoo Memory Dump (BMD) file format and the process that went into developing it as a replacement for HPROF memory dump files.

7. BMD vs. HPROF

A comparion of BMD and HPROF, showcasing the advantages of using BMD.

8. Demo #1: Recovering a View Hierarchy from a memory dump

A real life use case demonstration showing how you can use the tools developed by us at Badoo to extract useful View Hierarchy data from a memory dump.

9. Demo #2: On device collection and conversion of memory dumps

A quick demo showing how you can integrate our tools for collecting and converting memory dumps into your Android app.

Speaker bio

Originally from Sweden, now living London and working for Badoo as an Android developer. With 8 years of professional experience in the mobile industry starting with J2ME Feature Phones at SonyEricsson before moving on to Android. When not developing Android apps I enjoy creating tools to make life for me and other developers easier.

Besides being a dedicated software developer I also enjoy tinkering with Open Source hardware and electronics on my spare time.