avfilter/vsrc_mandelbrot: change sin to sinf for color computation
authorGanesh Ajjanagadde <gajjanagadde@gmail.com>
Tue, 24 Nov 2015 18:00:54 +0000 (13:00 -0500)
committerGanesh Ajjanagadde <gajjanagadde@gmail.com>
Wed, 25 Nov 2015 01:36:40 +0000 (20:36 -0500)
commit990619968a40ff64f789ba7d004a118351695fa6
tree7b4f43bb6211650d05ce2048f822c7cf0b22acf8
parente9c7493f19a610f44690ef2f2f3737a3c6236fdf
avfilter/vsrc_mandelbrot: change sin to sinf for color computation

lrintf is anyway used, suggesting we only care up to floating precision.
Rurthermore, there is a compat hack in avutil/libm for this function,
and it is used in avcodec/aacps_tablegen.h.

This yields a non-negligible speedup. Sample benchmark:
x86-64, Haswell, GNU/Linux:

old (draw_mandelbrot):
274635709 decicycles in draw_mandelbrot,     256 runs,      0 skips
300287046 decicycles in draw_mandelbrot,     512 runs,      0 skips
371819935 decicycles in draw_mandelbrot,    1024 runs,      0 skips
336663765 decicycles in draw_mandelbrot,    2048 runs,      0 skips
581851016 decicycles in draw_mandelbrot,    4096 runs,      0 skips

new (draw_mandelbrot):
269882717 decicycles in draw_mandelbrot,     256 runs,      0 skips
296359285 decicycles in draw_mandelbrot,     512 runs,      0 skips
370076599 decicycles in draw_mandelbrot,    1024 runs,      0 skips
331478354 decicycles in draw_mandelbrot,    2048 runs,      0 skips
571904318 decicycles in draw_mandelbrot,    4096 runs,      0 skips

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
libavfilter/vsrc_mandelbrot.c