[FFmpeg-devel] [PATCH] iirfilter: Rework FILTER_O2() to improve performance.
Justin Ruggles
justin.ruggles
Mon Jan 31 17:32:37 CET 2011
Store coefficient pointers locally.
Store state locally, then save at end.
Split up arithmetic.
---
libavcodec/iirfilter.c | 27 +++++++++++++++++++--------
1 files changed, 19 insertions(+), 8 deletions(-)
I was able to gcc to do what I wanted, but it's not pretty.
Also, if a simplified version of ff_iir_filter_flt() is added that
doesn't read/save the state and always has sstep/dstep == 1, it can
gain about another 3% speedup. I'll save that for later though
since it would be unnecessarily complicating something that's not
even used yet.
Athlon64
current: 217731
patched: 195939
simple: 189951
Atom
current: 569708
patched: 542916
simple: 524855
Cheers,
Justin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-iirfilter-Rework-FILTER_O2-to-improve-performance.patch
Type: text/x-patch
Size: 2912 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20110131/b3d8bfd4/attachment.bin>
More information about the ffmpeg-devel
mailing list