Profiling android picasso loader library

In this review we spend time profiling android picasso loader library using the traceview, memory monitor & GPU render profiling tools.

 

android profiling on picasso library

Running android performance profiling tests on an recyclerview grid gallery using picasso image loading library.

Results

TRACEVIEW

android traceview profile using picasso image library

Using android trace view tool on an android recyclerview grid gallery using picasso image loading library

Here we observe three background threads all running at the same time resulting in much quicker image loading. Also note the lack of significant spaces in the main ui thread which translates into a good performance.

MEMORY MONITOR

android profiling memory monitor picasso library

Running android studio memory monitor on a recyclerview grid gallery using picasso image loading library

Starts at consuming in the region of 16 MB, then after scrolling reaches a max in the region of 50 MB. After triggering a garbage collection (GC) the memory consumed drops down to 34 MB.

GPU RENDER

android profiling GPU render picasso image library

Running android device’s GPU rendering tool on an recyclerview grid gallery using picasso image loading library.

The key point to note here is the green horizontal line which represents 16 ms. Any frames that are higher than the horizontal green line can result in application jitter.

Good results here with minimal frames over the green horizontal line.

Get Application Code

If you would like to run these tests on your own hardware the code is available on github here

https://github.com/mobapptuts/recyclerview_image_gallery.git Tag grid-gallery-picasso

Or else you can run this command

git clone — branch grid-gallery-picasso https://github.com/mobapptuts/recyclerview_image_gallery.git

 

About The Author
-

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>