WSL2-Linux-Kernel/drivers/media/platform
Kirill Smelkov d40fbf8d52 [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>
2012-12-21 18:25:57 -02:00
..
blackfin [media] v4l: Convert drivers to use monotonic timestamps 2012-12-21 10:56:43 -02:00
davinci [media] davinci: vpbe: remove unused variable in vpbe_initialize() 2012-12-21 14:23:09 -02:00
exynos-gsc [media] exynos-gsc: modify number of output/capture buffers 2012-12-21 10:26:44 -02:00
marvell-ccic
omap [media] v4l: Convert drivers to use monotonic timestamps 2012-12-21 10:56:43 -02:00
omap3isp [media] v4l: Tell user space we're using monotonic timestamps 2012-12-21 11:20:51 -02:00
s3c-camif [media] V4L: Add driver for S3C24XX/S3C64XX SoC series camera interface 2012-11-28 09:43:34 -02:00
s5p-fimc [media] s5p-fimc: Improved pipeline try format routine 2012-12-21 13:58:31 -02:00
s5p-g2d [media] s5p-g2d: fix compiler warning 2012-10-05 21:27:58 -03:00
s5p-jpeg [media] s5p-jpeg: use clk_prepare_enable and clk_disable_unprepare 2012-10-05 21:27:57 -03:00
s5p-mfc Linux 3.7-rc8 2012-12-04 10:46:21 -02:00
s5p-tv [media] v4l: s5p-tv: mixer: support for dmabuf exporting 2012-11-25 17:21:51 -02:00
soc_camera [media] v4l: Convert drivers to use monotonic timestamps 2012-12-21 10:56:43 -02:00
Kconfig [media] media: add a VEU MEM2MEM format conversion and scaling driver 2012-12-20 14:23:10 -02:00
Makefile [media] media: add a VEU MEM2MEM format conversion and scaling driver 2012-12-20 14:23:10 -02:00
arv.c
coda.c [media] media: coda: Fix H.264 header alignment - v2 2012-12-21 16:56:31 -02:00
coda.h [media] media: coda: add horizontal / vertical flipping support 2012-09-26 16:55:22 -03:00
fsl-viu.c [media] v4l: Convert drivers to use monotonic timestamps 2012-12-21 10:56:43 -02:00
indycam.c
indycam.h
m2m-deinterlace.c [media] media: m2m-deinterlace: Do not set debugging flag to true 2012-12-21 18:25:07 -02:00
mem2mem_testdev.c [media] v4l: mem2mem_testdev: add support for dmabuf importing 2012-11-25 17:19:45 -02:00
mx2_emmaprp.c [media] [3.6.0-,3/5] media/mx2_emmaprp: use module_platform_driver macro 2012-10-27 11:35:11 -02:00
omap24xxcam-dma.c
omap24xxcam.c [media] v4l: Convert drivers to use monotonic timestamps 2012-12-21 10:56:43 -02:00
omap24xxcam.h
sh_veu.c [media] sh_veu.c: fix two compilation warnings 2012-12-20 14:55:12 -02:00
sh_vou.c [media] v4l: Convert drivers to use monotonic timestamps 2012-12-21 10:56:43 -02:00
timblogiw.c [media] v4l: Convert drivers to use monotonic timestamps 2012-12-21 10:56:43 -02:00
via-camera.c
via-camera.h
vino.c [media] v4l: Tell user space we're using monotonic timestamps 2012-12-21 11:20:51 -02:00
vino.h
vivi.c [media] vivi: Optimize precalculate_line() 2012-12-21 18:25:57 -02:00