[Ffmpeg-devel] [PATCH] put_mpeg4_qpel16_h_lowpass altivec, take 2
Guillaume POIRIER
poirierg
Wed Mar 7 14:01:11 CET 2007
Hi,
On 1/24/07, Guillaume POIRIER <poirierg at gmail.com> wrote:
> Hi,
>
> On 11/27/06, Brian Foley <bfoley at compsoc.nuigalway.ie> wrote:
> > On Sun, Nov 26, 2006 at 09:15:26PM +0100, Guillaume POIRIER wrote:
> > > Hi,
> > >
> > > >I suspect Shark and simg4 are probably as good or better for
> > > >profiling anyway.
> > >
> > > Well, one thing that no Apple CHUD tools seem to be able to do is
> > > tracking down access to un-initialized memory, which valgrind does to
> > > the best of my knowledge.
> >
> > Yes, I think Apple's tools are the way to go. I'm just not terribly
> > familiar with using them for optimisation on the single instruction
> > level like this.
> >
> > Valgrind's great for certain kinds of profiling, but it's not much use
> > here. The sort of thing we care about here are pipeline stalls,
> > functional unit utilisation, and of course cache behaviour. Thanks to
> > its translate-everything-into-uops approach, Valgrind can only really
> > give meaningful information about the cache behaviour.
> >
> > Besides, my main development machine is running MacOS, which doesn't
> > have a fully working Valgrind port anyways. The only access I have to
> > Linux/PPC is through emulation using qemu, and that's both slow and not
> > cycle-accurate either.
> >
> > Cheers,
> > Brian.
>
> Brian, did you have some time to work on your patch?
> There hasn't been activity about it here for about 2 months!!!
More than a month passed by, any news?
I'm attaching a version that shouldn't contain the already merged
parts, but doesn't addess any of the problems pointed out on the mail
thread.
If no one plans to work on it, I may find time to do it, but it won't
be too soon.
Guillaume
-------------- next part --------------
Index: libavcodec/ppc/dsputil_ppc.c
===================================================================
--- libavcodec/ppc/dsputil_ppc.c (revision 8282)
+++ libavcodec/ppc/dsputil_ppc.c (working copy)
@@ -35,6 +35,7 @@
void dsputil_h264_init_ppc(DSPContext* c, AVCodecContext *avctx);
+void dsputil_mpeg4_init_altivec(DSPContext* c, AVCodecContext *avctx);
void dsputil_init_altivec(DSPContext* c, AVCodecContext *avctx);
void vc1dsp_init_altivec(DSPContext* c, AVCodecContext *avctx);
void snow_init_altivec(DSPContext* c, AVCodecContext *avctx);
@@ -274,7 +275,12 @@
}
#ifdef HAVE_ALTIVEC
- if(ENABLE_H264_DECODER) dsputil_h264_init_ppc(c, avctx);
+#ifdef ENABLE_H264_DECODER
+ dsputil_h264_init_ppc(c, avctx);
+#endif
+#ifdef ENABLE_MPEG4_DECODER
+ dsputil_mpeg4_init_altivec(c, avctx);
+#endif
if (has_altivec()) {
mm_flags |= MM_ALTIVEC;
Index: libavcodec/Makefile
===================================================================
--- libavcodec/Makefile (revision 8282)
+++ libavcodec/Makefile (working copy)
@@ -379,6 +379,7 @@
sh4/dsputil_align.o \
OBJS-$(TARGET_ALTIVEC) += ppc/dsputil_altivec.o \
+ ppc/mpeg4_altivec.o \
ppc/mpegvideo_altivec.o \
ppc/idct_altivec.o \
ppc/fft_altivec.o \
More information about the ffmpeg-devel
mailing list