Saturday, June 11, 2005

IBM caught off guard with the Apple switch

The New York Times has an interesting piece about Apple's switch to Intel, and says that IBM was one of the last to hear about the deal. While it may be technically true that IBM was told of the final decision from Jobs just a few days before the keynote, it's clear that negotiations with both parties had been going on for quite some time. (Now we finally know what Otellini, CEO of Intel, meant when he suggested those interested in security might want to try a Mac.)

While Steve Jobs talked in his keynote about the uninspiring roadmap and performance per Watt worries for PowerPC, the NYT sources suggested the main issue was chip pricing. In other words, they suggest business and economic concerns were the overriding issues, not technical. I don't really see this as being necessarily separate. IBM is no slouch at chip design and chip fabbing, but it's clear that they had not been able to meet Apple's needs with the resources at hand. For IBM to be profitable on this deal, they would have asked for more money to meet Apple's speed and power goals in a relatively short time, but Apple simply balked at that idea. Basically it was likely a combination of both financial and technical concerns.

However, I'm guessing that IBM actually knew something about the Intel talks, but thought like I did, that switching to Intel was simply too crazy to consider at this point, and that Jobs was merely using the Intel talks as a negotiation tool with IBM. IBM probably thought he was bluffing, and overplayed their hand. Mind you, it's not as if IBM had a choice anyway, if they were not going to be profitable under the terms Apple wanted. On the other hand, if IBM had truly been in the dark about the latest round of talks with Intel, perhaps it was because Apple simply didn't care to negotiate any longer with IBM if it felt that no acceptable deal could possibly be reached. If so, that's simply good business. However, like I said, it's likely that IBM knew all along that something was up. We shouldn't forget that IBM bragged that they kept Intel out of the Mac the back in 2003.

Also in the article there is mention that Apple spoke with Sony about Cell, but felt that the chip was inappropriate for Macs. This is not surprising, since Cell isn't built as a chip for general desktop computing. While OS X has likely been tweaked already to run on Cell, its anemic single PPE unit and unsupported SPE units made use of this chip both unfeasible and undesirable. This random forum post claims IBM was also actively pushing Cell at Apple, but Apple just wouldn't bite, and for good reason.

In the meantime, there are definitely still deals in place to ensure some supply of new PowerPC chips for Macs are forthcoming. Jobs told us himself during the keynote. With regards as to what those chips are, Freescale has already said they will be releasing G4 chips for the Mac mini and iBook. Curiously no mention of the PowerBook (or eMac) is made, despite the fact that the G4 7448 would be the perfect drop-in upgrade for the PowerBook. Could a G5 PowerBook still be on the way? Given Jobs' remarks about (the lack of) such a beast, I'm not confident we'll see one. However, I still do expect to see dual-core G5 970MP machines (including possibly the quad) released in the coming year. The Power Macs are the most in need of stable and native software support that the G5 will offer during this transition period, and consequently Apple would probably like to keep them around as long as possible. I would not be surprised to see two more iterations of the G5 Power Macs, including at least one 970MP model.

We may never know what truly happened behind closed doors with Apple and IBM, but as long as Intel can keep up their end of the bargain and Apple can make the transition relatively painless for its customers, that's all that really matters.

Friday, June 10, 2005

Sony: Mac OS X 10.4 Tiger can run on Playstation 3

Ken Kutaragi, President of Sony Computer Entertainment, has been saying that they may preinstall Linux on the optional Playstation 3 hard drive, to allow the PS3 to function more like a general purpose computer instead of just a console. He also says that it could run Windows or Mac OS X.

While technically true I think he may just be trying to generate buzz with the statements about Mac OS X and Windows, without any sanctioned support from either Apple or Microsoft. Apple traditionally has not liked people running its OS on non-Apple machines, and Microsoft most certainly wouldn't bring Windows to the PS3 before it brought it to the Xbox 360. Microsoft never allowed a full-fledged Windows to run on the Xbox, and there is no indication Microsoft will bring it to the Xbox 360 either. However, the comment about Linux is still intriguing. A PS3 running Linux and Linspire (along with the appropriate peripherals) could easily negate the need for a separate computer for many lower end users.

Thursday, June 09, 2005

Apple to push Intel's Extensible Firmware Interface standard?

For quite some time now Intel has been developing its Extensible Firmware Interface as a replacement to the BIOS that has been used on motherboards for just about forever. However, motherboard makers have been slow to adopt the new EFI standard in x86 PCs for whatever reason.

Mac developers at WWDC had expressed concern that the current x86 demo machines sport a standard PC BIOS, and doesn't support basic Mac features like Firewire booting. Current Macs use Open Firmware but Apple has already said that it is abandoning it in its new x86 machines, but hasn't officially said what it will adopt. Perhaps to ease those concerns, Apple appears to be hinting that it will adopt EFI:
We realize there are lots of folks that need to know what is going to be in the ROMs on these new machines, and what partition scheme will be used. Unfortunately, we are not yet in a position to make that information available, but we will communicate it as soon as we reasonably can. Don't assume that what you see in the transition boxes represents what will be present in the final product.

The general consensus I've heard from other developers is:
1) They don't want us to use BIOS
2) If they haven't heard of EFI, they want us to use OF
3) If they have heard of EFI, they want us to use EFI

This is not a statement about what Apple will use, just what I've heard from developers that have an opinion on the subject.
Just like Apple's iMac gave the USB standard the boost it needed, Apple's x86 Macs may turn out to be the kickstart for EFI, too.

Porting pains plague programmers & Put a Pentium in your G5 Power Mac

The issues with Mac OS X PowerPC application porting to the x86 architecture are already starting to cause headaches for many programmers. This Nikon software programmer has this to say:
My Wintel colleague and I have just completed some large SIMD optimizations for a very well known image processing application. I also see the same performance ratio - the AltiVec version is easily more than twice as fast as the SSE2 version (take the fastest G5 you can find and the fastest x86 you can find and the AltiVec-G5 version is easily twice as fast). I've taken pride in being able to handily beat the SSE2 version and in many cases doing so with far less instructions. I don't drink the Kool-aid.

I had a conversation with an engineer from a certain fruit company today and he said that even Intel engineers were having problems getting SSE2/3 versions of some of the Apple Altivec sample code running at anything better than half the speed of the Altivec code, and this on a CPU with twice the clock speed of a G5. Steve can sit in his distortion field all he wants but that doesn't change the fact that Altivec is far superior to SSE2/3.
It's not surprising to see this, as many have said that for some usage Altivec has distinct advantages over the various iterations of Intel's SSE. Don't expect this to change either, as Intel has no known plans to add Altivec-like functionality to its chips, and is not known to build custom chips for its customers either.

Interestingly, this Apple employee states that x86 PCI-X upgrade cards are coming to the G5 Power Macs:
Apple has maintained rights to the PPC architecture. The rights to this technology is incorporated in Apple's "Rosetta" Transitive based solution so that carbonized applications built for the PPC will work on x86 and visa-versa.

Customers with existing PPC G5's will have the option of a PCI-X based add-on card with a native Intel follow-on to the P4 "D" chip and of-course the Transitive/"Rosetta" bundle.
That would represent an interesting option to those apprehensive to buying a PowerPC Power Mac during the transition. Although I've already said that the Power PC Power Macs are probably the best option in terms of compability during this period, such an upgrade card with a G5 Power Mac could provide the best of both worlds to allow native support of both PowerPC and x86 application binaries. This would be especially useful for current developers, since it would allow development and testing of x86 ports on current G5 hardware and would negate the need for the developer to pay for Apple's x86 developer kit. One wonders however if these cards will really appear, and if so, when and for how much.

[Update June 17, 2005]

This man may not be an Apple employee after all (despite speaking as such and being on the Apple Computer SETI team). No record of his working at Apple has been found so far, according to one poster online. That would mean there is no such x86 add-in card (which would make sense if a low end x86 Mac came out within the next 9 months, since the card wouldn't be any cheaper than an x86 Mac mini anyway).

Pentium M Yonah pricing from the DigiTimes

The DigiTimes reports on possible Intel Yonah pricing at its launch in the first quarter of 2006:

X50 dual-core 2.16 GHz: US$637
X40 dual-core 2.00 GHz: US$423
X30 dual-core 1.83 GHz: US$294
X20 dual-core 1.66 GHz: US$241
Single-core 1.66 GHz: US$209

It's heartening to see (again) the specs of these chips, as they are likely to be used in future Mac laptops. The dual-core Yonah, with its 2 MB L2 cache and 667 MHz bus, should be competitive overall with a dual-core G5 970MP at a similar ballpark clockspeed. In other words, a Pentium M Yonah 17" PowerBook in 2006 could be as fast as one of the slower dual G5 Power Macs of today in many tasks (Rosetta translation notwithstanding). Impressive.

The single-core 1.66 GHz should also be quite a nice chip, likely sporting 1 MB L2 cache. It's significantly faster than the fastest current PowerBook G4 CPU, but is aimed at the budget market, perfect for the iBook. If Apple does release an iBook with this Celeron M Yonah 1.66 GHz, I may just update my current PowerBook Titanium 1.0 GHz to an iBook instead of a dual-core PowerBook.

Wednesday, June 08, 2005

"Enjoy Uncertainty"

"Enjoy Uncertainty" - This marketing slogan for the iPod shuffle might best summarize what Steve Jobs has asked us to do during the coming Mac x86 transition period. We are now watching the demise of PowerPC in general purpose computing, and it makes a lot of people very nervous. However, I am confident to say I am not one of those people. I see this as a huge win for Apple, a huge win for Intel, and ultimately a huge win for us Mac users. This is not the OS 9 --> OS X transition that Apple had during its period of crisis. Apple is now strong financially, its OS is second to none, its hardware is as cool as ever, and it has the iPod.

Because of their uncertainty, many people have flat out stated that they will not buy new PowerPC hardware, and will wait it out until x86 Mac hardware shows up before they buy. For mid to high end desktops, that seems foolish, since Apple's current iMac G5 and Power Mac G5 are excellent machines. They are well designed, and fast, and moreover, they will not be hit with compatibility issues that the initial x86 Mac hardware may face initially. Sure, there's Rosetta to translate PPC binaries to x86, but Rosetta doesn't understand Altivec, and there is a definite speed hit with software running under Rosetta. Translation and emulation are never fast:

Steve Jobs' P4 3.6 launching Photoshop CS2: 25 seconds
Eug's iMac G5 2.0 launching Photoshop CS2: 20 seconds (first launch)
Eug's iMac G5 2.0 launching Photoshop CS2: 8 seconds (second launch)

Even Steve isn't all that enamoured with Rosetta performance judging by his keynote. "Fast (enough)" indeed. Current Macs right now understand PowerPC code natively (obviously) and will continue to do so throughout the transition. Software will continue to be supported on PPC hardware for quite some time to come with universal binaries, and I'd expect so for at least 5 years. (Tiger is still supported on the lowly G3 Pismo PowerBook, for example.) At the end of 5 years, most would want to upgrade the hardware anyway.

What about low end desktops and laptops? Here I can understand the wish to wait. Apple's current G4 offerings are adequate, but nothing more. The G4 is relatively low power, but it is also relatively low performance, especially when one is talking about floating point code. Many would argue that performance-wise, the PowerBook has nothing "Power" about it. It's an excellent machine overall, just not from the point-of-view of CPU speed.

In fact, I think this is one of the main reasons for Apple's decision to switch. Steve Jobs spent a lot of time on stage talking about performance per watt. This is a huge consideration. We couldn't get our G5 PowerBook, but Intel has Pentium M Dothan right now, and Pentium M Yonah coming in 2006. I had postulated previously that we could get a warm-running laptop G5 at up to about 1.8 GHz, but Dothan is already at 2.1 GHz and uses less power, for at least similar performance to a comparatively clocked G5. Yonah will be even faster, since it's a 65 nm cool running dual-core chip. Furthermore, its little brother Celeron M will also be comparatively fast. Think G5 level performance in an iBook with Celeron M, and dual-core G5 level performance in a PowerBook with Pentium M, all possibly in a year from now. Yes, I am succumbing somewhat to Steve's Reality Distortion Field, but even if we were to be stuck with Pentium M Dothan, that would still be a major performance per watt improvement, and improvement in overall speed.

This also illustrates why Apple chose to ignore AMD. Many have stated that Apple has made a mistake because it chose Intel's desktop chips over the arguably superior Opteron line from AMD. Opterons ARE excellent chips, but the key here is that Intel's Xeons will be in the same ballpark (if not better) at the time Apple adopts them, and Apple already has fast IBM G5 chips for the time being. (I wouldn't even be surprised if Apple did finally release that famed 970MP dual-core G5 this year, as an interim chip before the x86 transition, as a last hurrah.) So yes, AMD's desktop chips are great, but that's about it. Notebook sales are now finally starting to outstrip desktop sales, and Apple just couldn't afford to deal with another chip vendor who couldn't provide on the mobile front. They've suffered through that with Motorola/Freescale, and they've suffered through that with IBM, too.

We also shouldn't forget Intel's excellent autovectorizing compilers, which are being ported to Mac OS X. ICC/IFC often offers markedly superior performance to GCC 4.0 performance. IBM's compilers were good but the autovectorizing compilers never materialized, and AMD simply has nothing significant to offer. All of this business of MMX/SSE/SSE2/SS3 autovectorization may be a slap in the face to those Apple fans who have spent their careers learning how to hand tweak Altivec code, but business is business. Altivec is in certain ways superior, but Apple was the only real proponent of Altivec for quite some time. Despite Apple's vocal support, Altivec just never had the support it should have, and finally they just threw in the towel. If you can't beat 'em, join 'em. It's a mild shame that tweaked SSE3 code sometimes may not be quite as good as tweaked Altivec code, but Intel's autovectorizating compilers will go a long way to help the average non-Altivec jockey to get reasonable performance from his or her code. And those who don't need all that extra performance will continue to use the free GCC.

It's refreshing to finally be in a situation where CPU benchmarketing is less important, and Apple's true soul, its hardware, OS, and software designs, are the main differentiating factors. Apple did the unthinkable, but sometimes it just pays to Think Different.

Monday, June 06, 2005

Steve Jobs has confirmed the switch to Intel

Steve Jobs has now officially confirmed the switch to Intel. They are in for the long term, and he states that they will start in 2006 with Intel based machines, with most Macs on Intel by 2007. Xcode 2 will be able to compile fat binaries capable of running on both PPC and x86 machines, and Mathematica was just compiled this way last week.

For applications which cannot be recompiled this way, Apple will leverage "Rosetta" which will translate PPC binaries on the fly to function on x86 machines.

I am truly shocked.

[Update 2005-06-06]

Both Adobe and Microsoft have committed to creating universal x86 and PPC Mac OS X binaries for their apps. Steve Jobs also demonstrated Adobe Photoshop CS2 running under Rosetta with no modification whatsoever. And Wolfram Research states it took only 2 hours of work, including modifying just 20 lines of code, to port Mathematica 5 to Mac OS X x86.

Here is Apple's press release:
Apple to Use Intel Microprocessors Beginning in 2006

WWDC 2005, SAN FRANCISCO—June 6, 2005—At its Worldwide Developer Conference today, Apple® announced plans to deliver models of its Macintosh® computers using Intel® microprocessors by this time next year, and to transition all of its Macs to using Intel microprocessors by the end of 2007. Apple previewed a version of its critically acclaimed operating system, Mac OS® X Tiger, running on an Intel-based Mac® to the over 3,800 developers attending CEO Steve Jobs’ keynote address. Apple also announced the availability of a Developer Transition Kit, consisting of an Intel-based Mac development system along with preview versions of Apple’s software, which will allow developers to prepare versions of their applications which will run on both PowerPC and Intel-based Macs.

“Our goal is to provide our customers with the best personal computers in the world, and looking ahead Intel has the strongest processor roadmap by far,” said Steve Jobs, Apple’s CEO. “It’s been ten years since our transition to the PowerPC, and we think Intel’s technology will help us create the best personal computers for the next ten years.”

“We are thrilled to have the world’s most innovative personal computer company as a customer,” said Paul Otellini, president and CEO of Intel. “Apple helped found the PC industry and throughout the years has been known for fresh ideas and new approaches. We look forward to providing advanced chip technologies, and to collaborating on new initiatives, to help Apple continue to deliver innovative products for years to come.”

“We plan to create future versions of Microsoft Office for the Mac that support both PowerPC and Intel processors,” said Roz Ho, general manager of Microsoft’s Macintosh Business Unit. “We have a strong relationship with Apple and will work closely with them to continue our long tradition of making great applications for a great platform.”

“We think this is a really smart move on Apple’s part and plan to create future versions of our Creative Suite for Macintosh that support both PowerPC and Intel processors,” said Bruce Chizen, CEO of Adobe.

The Developer Transition Kit is available starting today for $999 to all Apple Developer Connection Select and Premier members. Further information for Apple Developer Connection members is available at Intel plans to provide industry leading development tools support for Apple later this year, including the Intel C/C++ Compiler for Apple, Intel Fortran Compiler for Apple, Intel Math Kernel Libraries for Apple and Intel Integrated Performance Primitives for Apple.
What's this world coming to? Microsoft is on PowerPC with the Xbox 360, and Apple is on x86 with Macs. Whatever the case, I look forward to a new PowerBook Pentium M, in 2006.

Sunday, June 05, 2005

USC game hardware course material to include IBM PowerPC 970MP

The Univesity of Southern California School of Engineering will be offering a new course, Game Hardware Architectures, which includes classes on IBM's dual core PowerPC 970MP.

The inclusion of the 970MP in the course is interesting, since no game console uses it. However, its single core predecessor, the PowerPC 970, is used in Power Mac G5 development boxes for Microsoft's Xbox 360. Furthermore, all three next generation consoles are PowerPC based*, so it makes sense to study other PowerPC chips for comparative purposes. Also, practically, it will be a lot easier to get 970MP machines (ie. Power Macs) for labs (assuming 970MP machines are released soon by Apple or IBM) than it will be to get development machines with the same CPUs as the consoles.

* - Confirmed for the Sony PlayStation 3 and Microsoft Xbox 360, and presumed for the Nintendo Revolution (since IBM will be making the chip).