evas common: NEON version of evas_common_convert_argb_premul.
authorChunEon Park <chuneon.park@samsung.com>
Tue, 7 Apr 2015 14:02:15 +0000 (23:02 +0900)
committerChunEon Park <chuneon.park@samsung.com>
Tue, 7 Apr 2015 14:05:40 +0000 (23:05 +0900)
commit51d60e649cca3411ac26a6a22a02288930c2fd1f
treee0e46b03a9045b9d216452e76e5e5bb0c2870020
parent2bbdc17bea1a08e4972fdf5958b32c070a071803
evas common: NEON version of evas_common_convert_argb_premul.

This patch reduces power consumption by around 18mA in certain scenarios
(music player list scroll, my files sound list scroll), making
evas_common_convert_argb_premul() ~60% faster (6.2msec->2.6msec).

Take music-player application, make 100 copies of the standard
Over the Horizon” song, scroll up and down to see those
downscaled-from-720x720 thumbnails enter and leave the screen.
Every time a list item enters the screen, the image is re-read
(as evas image cache is not large enough to store more than two
pictures of that size), and one call of _common_convert_argb_premul()
occurs, taking ~6.2msec (which is not much compared to ~60msec
spent in libpng->libz (the biggest bottleneck here),
but still noticeable).

A similar power consumption improvement is observed during
scrolling sounds list of the same files in My Files application
(just with idle level ~100mA lower).

We also checked the new code to be correct on random input data.

all tests are performed based on tizen device.

Signed-Off-By: Artem Dergachev <dergachev.a@samsung.com>
src/lib/evas/common/evas_convert_color.c