30
Jernej Virag / PSPDFKit

Infinum Android Talks #20 - Making your Android apps fast like Blue Runner and slim like the Slenderman

  • Upload
    infinum

  • View
    114

  • Download
    1

Embed Size (px)

Citation preview

Jernej Virag / PSPDFKit

Jernej Virag / PSPDFKit

I/Choreographer(1378): Skipped 55 frames! The application may be doing too much work on its main thread.

The Stutter:

Jernej Virag / PSPDFKit

60fps = 16ms time for main othread ops

Jernej Virag / PSPDFKit

MEASURE!

Jernej Virag / PSPDFKit

MEASURE!CPU Profiling: • Android Studio Profiler • TraceView • SysTrace

GPU Profiling: • Android Studio Profiler • OpenGL Profiler

Memory Profiling: • Android Studio Profiler • Eclipse MAT

Jernej Virag / PSPDFKit

Androd Studio monitors

Jernej Virag / PSPDFKit

Androd Studio CPU profiling

Jernej Virag / PSPDFKit

Androd Studio CPU profiling

✓ sub-16ms drawing✘ slow call !

Jernej Virag / PSPDFKit

TraceView

Jernej Virag / PSPDFKit

TraceView

Start CPU profile

Can also start use Debug.startMethodTracing(“filename”);

Debug.stopMethodTracing();

Jernej Virag / PSPDFKit

TraceViewMain thread

Jernej Virag / PSPDFKit

TraceView

Screen redraws with main thread idle between them

Screen redraws delayed due to other code on main thread

Jernej Virag / PSPDFKit

TraceView

Jernej Virag / PSPDFKit

Systrace

Jernej Virag / PSPDFKit

Systrace

Jernej Virag / PSPDFKit

Systrace

Slow onTouchEvent processing.

Jernej Virag / PSPDFKit

Systrace

First draw of complex view - creation of display list.

Jernej Virag / PSPDFKit

Systrace

Slow layout and ImageView loading image.

Custom blocks can be added with: Trace.beginSection(“name”);

Trace.endSection();

Jernej Virag / PSPDFKit

GPU profiling

Jernej Virag / PSPDFKit

Memory leak hunting

Jernej Virag / PSPDFKit

Memory leak hunting All objects in memory by class

Instances of selected class

Reference tree to GC root for selected object

Jernej Virag / PSPDFKit

Memory leak hunting

Jernej Virag / PSPDFKit

Memory leak hunting Eclipse MAT

https://eclipse.org/mat/

Jernej Virag / PSPDFKit

Memory leak hunting - MAT

Jernej Virag / PSPDFKit

Memory leak hunting - MAT

Jernej Virag / PSPDFKit

Memory leak hunting - MAT

Jernej Virag / PSPDFKit

Memory leak hunting - MAT

Jernej Virag / PSPDFKit

Memory leak hunting - MAT

Jernej Virag / PSPDFKit

#PERFMATTERShttp://blog.udinic.com/2015/09/15/speed-up-your-app

https://plus.google.com/communities/116342551728637785407

Jernej Virag / PSPDFKit

?Jernej Virag / [email protected] / @jernejv