Introducing the PowerPC SIMD unit
An anonymous reader writes "AltiVec? Velocity Engine? VMX? If you've only been casually following PowerPC development, you might be confused by the various guises of this vector processing SIMD technology. This article covers the basics on what AltiVec is, what it does -- and how it stacks up against its competition."
I'd like to know if Mac OS X uses the Altivec instructions to their full potential. For example, the article mentions that a heavily loaded server can benefit greatly from Altivec if the TCP checksum algorithm uses it. Does OS X TCP stack do this?
Anyway, what we need is not an autovec compiler, but instead a library with most CPU hungry algorithms well implemented with SIMD extensions.
What about an open library, cross-platform, multimedia oriented, along the line of SUN's mediaLib ? Would SUN allow the re-use of their API ?
I'm looking for such a library, with GPL/LGPL compatible license. The API has to be in C, to maximise audience. For many projects, C++ is not an option.
Primary use will be DSP work in GNU Radio project, but multimedia extensions could prove useful anywhere in GUI's to audio/video app, etc.
I would take any pointers to such an already existing API/project, or be ready to start a new one, if other people interested in.
See also this previous story for cheap recylced comments.
Love salty crackers? catchy electronica? Try !
I don't know of anyone who makes an open standards based system using the the PowerPC architecture. IBM did release a reference design for a PPC based motherboard, but as far as I know no one every produced it.
Unless and until I can go down to Fry's and buy a motherboard based off of this chip and put it into a standard case, it really doesn't matter if the CPU is better or not. It is the system as a whole that matters, not the relative performance of one of its components. I'm not going to paint myself into a corner with a proprietary system from anyone, let alone Apple.
Lee
Muslim community leaders warn of backlash from tomorrow morning's terrorist attack.
So, the G4 and the G5.
What you're really talking about here is that with a greater variety of chip models, it's harder to do all-out optimization.
Never mind that there are fewer G4s and G5s deployed combined than any one class of Intel or AMD chips which requires different SIMD optimizations.
When your market is 20 times bigger, you can afford to optimize for Athlon XP, Athlon64, Opteron, and Pentium 4, and you're still putting in only a fifth of the relative development/installed-based effort. If you like, you can still go and optimize for all of the older and niche models without being in a worse situation than PowerPC developers.
If the Athlon line wasn't x86 compatible, I suppose they'd be praising the consistency of 3D-Now. Lack of x86 compatibility is not an advantage! x86 is the defacto standard. Following standards always costs a certain amount of design freedom and elegance, but the advantages are considerable.
You really can't take someone too seriously who preaches the advantages of uniformity within a completely non-standard-compliant line of chips, while denigrating the popular standard for the relatively minor incompatibilities between its various implementations. As if small incompatibilities are bad and big ones are good!
It's a bunch of hooha. Ignore it. Altivec has added new instructions; MMX and SSE have added new instructions and registers over time. Clearly the intel-driven stuff has changed more than Altivec. Of course, it's been a couple years longer, too. The Pentium MMX (P55C) came around in 1997, and the G4 in 1999. That's not an excuse really, but useful information anyway. The benefit of altivec since it has changed less is that you don't need to make changes to the old code to make it run faster on newer processors with more powerful SIMD engines. With the intel stuff, if you want the most out of the processor you have had to optimize for MMX, then SSE, then SSE2... Now, if you wrote SSE2 code and tried to execute it on Athlon XP, it wouldn't work at all, maybe that's what they mean :)
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"