diff options
author | Kirill Smelkov | 2012-11-02 13:10:33 +0100 |
---|---|---|
committer | Mauro Carvalho Chehab | 2012-12-21 21:25:57 +0100 |
commit | d40fbf8d52ae6c9b7fe9d76eeab624afc3a3f1ea (patch) | |
tree | b227ff245d8911052e1f6dbca65dbb08bdfbba34 /drivers/media/rc/ite-cir.c | |
parent | [media] vivi: Move computations out of vivi_fillbuf linecopy loop (diff) | |
download | kernel-qcow2-linux-d40fbf8d52ae6c9b7fe9d76eeab624afc3a3f1ea.tar.gz kernel-qcow2-linux-d40fbf8d52ae6c9b7fe9d76eeab624afc3a3f1ea.tar.xz kernel-qcow2-linux-d40fbf8d52ae6c9b7fe9d76eeab624afc3a3f1ea.zip |
[media] vivi: Optimize precalculate_line()
precalculate_line() is not very high on profile, but it calls expensive
gen_twopix(), so let's polish it too:
call gen_twopix() only once for every color bar and then distribute
the result.
before:
# cmdline : /home/kirr/local/perf/bin/perf record -g -a sleep 20
#
# Samples: 46K of event 'cycles'
# Event count (approx.): 15574200568
#
# Overhead Command Shared Object
# ........ ............... ....................
#
27.99% rawv libc-2.13.so [.] __memcpy_ssse3
23.29% vivi-* [kernel.kallsyms] [k] memcpy
10.30% Xorg [unknown] [.] 0xa75c98f8
5.34% vivi-* [vivi] [k] gen_text.constprop.6
4.61% rawv [vivi] [k] gen_twopix
2.64% rawv [vivi] [k] precalculate_line
1.37% swapper [kernel.kallsyms] [k] read_hpet
after:
# cmdline : /home/kirr/local/perf/bin/perf record -g -a sleep 20
#
# Samples: 45K of event 'cycles'
# Event count (approx.): 15561769214
#
# Overhead Command Shared Object
# ........ ............... ....................
#
30.73% rawv libc-2.13.so [.] __memcpy_ssse3
26.78% vivi-* [kernel.kallsyms] [k] memcpy
10.68% Xorg [unknown] [.] 0xa73015e9
5.55% vivi-* [vivi] [k] gen_text.constprop.6
1.36% swapper [kernel.kallsyms] [k] read_hpet
0.96% Xorg [kernel.kallsyms] [k] read_hpet
...
0.16% rawv [vivi] [k] precalculate_line
...
0.14% rawv [vivi] [k] gen_twopix
(i.e. gen_twopix and precalculate_line overheads are almost gone)
Signed-off-by: Kirill Smelkov <kirr@mns.spb.ru>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/rc/ite-cir.c')
0 files changed, 0 insertions, 0 deletions