[vorbis-dev] Optimisations

Segher Boessenkool segher at wanadoo.nl
Thu Nov 16 14:39:33 PST 2000



David Riley wrote:
> 
> Jason Hecker wrote:
> >
> > I guess, but they would be the easiest to implement first.  Apart from the
> > x86 vector stuff, what other CPUs that OggVorbis runs on have SIMD
> > operations that would need hand coding?
> >
> PowerPC's from the G4 line and up (that is, future processors) have
> Altivec, a very nice SIMD set.  It's a lot like Intel's SSE (i.e.

Don't assume all future, or even "G4 and up", processors will have it.
Some will, some won't.

> 128-bit registers) but with a lot of differences (it has 32 vector

It's not just different, it's plain simple _better_! A lot :-)

> registers).  It hasn't been used very widely yet, and it's really kind
> of a shame that so few people have taken advantage of it.  I know
> Unsanity Echo does... But aside from that, the PPC Linux crowd seems to
> take better advantage of it than the Mac crowd.

Quicktime uses it. And the Metrowerks compiler (which is used for, like,
95% of all Mac software) can generate code for it. (By itself, no cheesy
semi-assembly stuff).

> Anyway, Altivec support would be great to get in here.  I don't have a
> G4 (I wish I could build my Macs out of pieces like I build my Linux
> boxes), but if anyone does, that's a real biggie to look at.

You can put a G4 in your iMac, if you like. Or dig around at linuxppc.org/com
and find where you can buy big ppc pci boards with Open Firmware support.
Just add not-too-weird hardware and off you go.

Mmmh, off-topic again.

Anyway, I think Jason Hecker && me decided to first make the C
algorithms more
suitable for SIMD work. That's right, jason? This will be an automatic
gain on
lots-of-registers machines as well, and make insn scheduling on x86 easier.

Some of this work (for decode side) is already commited, except some encode
stuff reasonably soon (will need a massive cleanup, did too much experimenting,
I'm afraid).

Ciao,

Segher

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the Vorbis-dev mailing list