Lynxpro said:
I also wish they could've had a consumer level app that could convert these fat universal binaries to optimized versions depending on the processor inside the owner's own Mac. Hell, they could've bundled that into the .Mac service as an added benefit and a further compelling selling point.
What?
Universal binaries *are* optimized for the processor that's inside your Mac.
A universal binary can still contain code that's optimized for a G4, or a G5, along with the code that's compiled and optimized for Intel.
The universal binary can be thought of as a regular PowerPC binary (just like now) glued onto an Intel binary. Your computer uses the right one depending on what the CPU is.
When you use XCode to build a program for Intel and PPC, it'll set up two folders in the build directory, one for each architecture. As it goes through the project, it'll compile each file (in the normal way) for PPC, then for Intel (or vice-versa), sticking the resulting object files in the appropriate CPU-specific folders. When it has compiled all the files for both CPU architectures, it links each bunch of object files into a CPU specific executable. Then it glues the two CPU-specific executables together as one MachO binary file with two CPU-specific segments.
The only thing new here is that each file is compiled twice, linking is done twice, and the resulting executable has two segments instead of one PowerPC segment.
There's nothing "unoptimized" about a universal binary. It's not like a Java program which is interpreted at runtime into code for your CPU.
Also, note that if a Universal Binary program uses CoreImage, CoreVideo, or Apple's Accelerate framework, then it'll make the best possible use of AltiVec on a G4 or G5, SSE3 on Intel, and multiple processors or cores on either, without the developer having to code specific optimizations.
--
As for Intel licensing AltiVec, that would be nice, but keep in mind it would take a few years for that to appear in Intel silicon, and it'd be in every Intel chip, so Windows would be able to use it too.
I wouldn't be at all surprised if Apple suggests improvements for future Intel instruction sets, but I doubt they'll put AltiVec in as a whole.