Profiling android fresco loader library

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

android profiling fresco image loading library

Running the android performance profiling tools on the fresco image loading library.

Results

TRACEVIEW

android traceview profiling fresco image loading library

Running the android trace view tool on the fresco image loading library

Here we observe four background threads loading the image files with no noticeable pauses in the UI thread.

It was noted that scrolling performance was good compared with the other image loading libraries.

MEMORY MONITOR

android memory monitor profile on fresco image loading library

Running the android memory monitor profiling tool on the fresco image loading library.

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

The max levels of memory consumption are significantly higher than the other image libraries, which would explain the good scrolling perfomance.

GPU RENDER

android GPU rendering on fresco image loading library

Running the android GPU rendering tool on the fresco 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.

At certain times we are seeing significant delays in the rendering of frames in fact the GPU rendering tool has some frames and groups of frames off the scale.

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 fresco

Or else you can run this command

git clone — branch fresco 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>