[FFmpeg-devel] the future of fastmemcpy.h

Alex Beregszaszi alex
Sat May 26 20:30:17 CEST 2007


Hi,

> > > Also in long term we could try asking fastmemcpy authors for LGPL
> > > licensing. Big part of it was written by Michael anyway (agpcopy).
> > 
> > you have my agreement for LGPL-ing the parts of fastmemcpy i wrote
> > but IIRC part of the fastmemcpy code came from the linux kernel though
> > maybe i remember that wrong its a long time ago ...
> 
> The file consists largely of two functions, memcpy_pic() and
> mem2agpcpy().  The first was added by Arpi in r5505, the second by you
> in r4682.  Arpi, did you write that function yourself or where did it
> come from?  And if it's completely your code, do you agree to LGPL it?

>From initial checkin: http://svn.mplayerhq.hu/mplayer/trunk/libvo/fastmemcpy.h?revision=359&view=markup

 This part of code was taken by from Linux-2.4.3 and slightly modified
for MMX2 instruction set. I have done it since linux uses page aligned
blocks but mplayer uses weakly ordered data and original sources can not
speedup their. Only using prefetch and movntq together have effect! 
If you have questions please contact with me: Nick Kurshev: nickols_k at mail.ru.

Changes in revisions:
369, 371 oneliners (arpi)
377 P3 fix, asm changes (arpi)
410 SSE support (nick)
478 3dnow support (from kernel 2.4.2) (pontscho)
479, 514 minor changes (pontscho)
568 sse fix (arpi)
582 new sse code (atmos)
645 optimized sse for athlon (atmos)
686 minor change (arpi)
699 creating aclib.c (nick)
801 minor change (pontscho)
1132 minor change (alex)
4682,4709 agpcopy (michael)
5505 memcpy_picture() (arpi)
12651 include change (diego)
12664 reversing the above (diego)
13788 reversing the above (diego)
15070 negative stride fix in memcpy_picture() (henry)
17096 cosmetic in memcpy_picture (rathann)
22018 warning fix (gpoirier)
22021 inttypes.h (diego)

Based on this review, what should happen with the optimized picture copy
routines?

--
Alex Beregszaszi






More information about the ffmpeg-devel mailing list