On Thu, Jan 22, 2015 at 09:45:04PM +0530, arwa arif wrote: [...] > I checked the runtime of the codes with and without asm, it turns out that > there is not much difference. The difference is coming out to be in > milliseconds. > > 26.014s with asm and > 26.129 without asm. > > So, should I remove the asm part? >
If you want to compare the speed of the ASM itself, you need to compare with START_TIMER and STOP_TIMER macros. But before you do that, I'd like to raise an issue (which might be kind of off topic, sorry about that). In 2009, this was committed: 973859f5230e77beea7bb59dc081870689d6d191 It disables the tree-vectorize optimizations (we compile FFmpeg at -O3 where it's enabled by default, but we explicitly disables it). In this particular case, it seems that GCC is able to vectorize the C version using SSE* code, which means it's actually potentially faster¹ than the home written MMX version we have² I'd suggest we try to revert that commit, and next time we write or port optimizations we make a fair comparison. That is, with code generated by a modern compiler without such option. If the old MMX code is actually making the code slower, we should not waste our time with it. Benchmarks welcome. [1] http://pastie.org/pastes/9852329/text (-O3) [2] http://pastie.org/pastes/9852328/text (-O3 -fno-tree-vectorize / current) -- Clément B.
pgp8e9FOxf5WX.pgp
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel