Slashdot Mirror


Linux Gains AltiVec Support

Anonymous Coward writes: "Terra Soft today [Note: Thursday] announced development support for AltiVec (a.k.a. "Velocity Engine"), saying that Black Lab Linux running on a PowerPC G4 may offer up to a '150-300% increase [in performance], with some Linux applications running in excess of 10 times (1,000%) their normal performance.' The AltiVec-enabled Black Lab Linux offers the GCC compiler with support for the AltiVec C and C++ extensions, as well as Linux-kernel run-time support for AltiVec enabled applications."

2 of 179 comments (clear)

  1. Woohoo! by Chris+Johnson · · Score: 5
    Sweet :) and I for one am not surprised. 'Altivec' aka 'Velocity Engine' is a bunch of _general_ _purpose_ big-ass registers which are not shared with FP registers or hobbled unreasonably. PPC is already incredibly register-rich (what is it, 32 int and 32 FP and now 32 128-bit altivec registers? That can work like 192 32-bit registers (yes you can treat them like divided address spaces- multiple values) versus Intel which gets what, 8? 16? 32? and shares its vector processing with FP registers.

    Please, if anyone can flame my data and correct it I beg of you to do so ;) but I'm not a bit surprised that G4s are doing this. Altivec lends itself to big data operations, not just vector processing. Memory moves are faster 128 bits at a time, and so on. Screen blitting, likewise. I wouldn't be a bit surprised if someone is working on an optimized X that uses G4 altivec acceleration- that would seem to be a no-brainer.

  2. links to the patches by rillian · · Score: 5

    I had a lot of trouble trying to actually find this code. It may be in the yellowdog cvs but the server seems to be down, as is the ftp server.

    They do say to go to altivec.org to download the gcc and binutils. It's in the tools section behind a "you must sign up for our email forum" form. The packages there include a new binutils, gcc, gdb, and libc to support the altivec extensions.

    Here are the direct links, for the curious: