[FFmpeg-devel] [PATCH 2/3] avcodec/gdv: Optimize and factorize scaling loops

Michael Niedermayer michael at niedermayer.cc
Sat Jan 12 17:46:07 EET 2019


On Sat, Jan 12, 2019 at 04:07:42PM +0100, Carl Eugen Hoyos wrote:
> 2019-01-04 20:22 GMT+01:00, Michael Niedermayer <michael at niedermayer.cc>:
> 
> > +static void scaledown(uint8_t *dst, const uint8_t *src, int w)
> > +{
> > +    int x;
> > +    for (x = 0; x < w - 7; x+=8) {
> > +        dst[x + 0] = src[2*x + 0];
> > +        dst[x + 1] = src[2*x + 2];
> > +        dst[x + 2] = src[2*x + 4];
> > +        dst[x + 3] = src[2*x + 6];
> > +        dst[x + 4] = src[2*x + 8];
> > +        dst[x + 5] = src[2*x +10];
> > +        dst[x + 6] = src[2*x +12];
> > +        dst[x + 7] = src[2*x +14];
> 
> Could you add to the commit message the information
> which compiler is able to optimize this?
> (Assuming this is a reason for the speedup)

if what you ask for is "which compiler turns this into SIMD"
i do not know, and i suspect mine does not from the limited
increase in performance
I think the speedup is primarly from simply unrolling the trivial loop

is there something you want me to change in the commit message still ?


> 
> Sorry for the late comment, Carl Eugen
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Dictatorship: All citizens are under surveillance, all their steps and
actions recorded, for the politicians to enforce control.
Democracy: All politicians are under surveillance, all their steps and
actions recorded, for the citizens to enforce control.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20190112/09cd6365/attachment.sig>


More information about the ffmpeg-devel mailing list