[FFmpeg-devel] [PATCH 0/4] Exploit compile-time constant

Michael Niedermayer michaelni at gmx.at
Sat Aug 2 14:48:46 CEST 2014


On Mon, Jul 28, 2014 at 05:17:24PM +0000, Christophe Gisquet wrote:
> MAX_PB_SIZE is used or assumed for various buffer strides. In some cases,
> it is used as constant parameter(s) to functions.
> 
> Make use of that knowledge to:
> - not pass the parameter
> - avoid extra GPR usage
> - precompute addresses / offsets
> 

> Premature optimization and overall not that useful.
> Before:
> 46092 decicycles in oma, 1028766 runs, 19810 skips
> 10174 decicycles in chroma, 2065859 runs, 31293 skips
> 
> After:
> 45634 decicycles in luma, 1027414 runs, 21162 skips
> 9932 decicycles in chroma, 2063780 runs, 33372 skips

is this for apply/push or just RFC/WIP ?
you say "Premature optimization and overall not that useful."
i would tend to suggest to apply it as it improves speed ...


> 
> Christophe Gisquet (4):
>   hevc: move MAX_PB_SIZE declaration
>   hevcdsp: remove compilation-time-fixed parameter
>   hevcdsp: remove more instances of compile-time-fixed parameters
>   x86: hevcdsp: use compilation-time-fixed constant

seems to fail with
libavcodec/x86/hevc_mc.asm:1258: error: (add:2) cannot reference symbol `MAX_PB_SIZE' in preprocessor


[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Republics decline into democracies and democracies degenerate into
despotisms. -- Aristotle
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20140802/573366c6/attachment.asc>


More information about the ffmpeg-devel mailing list