You’re reading Hivelogic, a website about discovering quality, living more efficiently, and leading a simpler, more mindful life. This site was established in 2000 by Dan Benjamin, a writer, software developer, broadcaster, and usability geek (read more).


iPhone’s CPU: Still Irrelevant

Gruber links to an Italian newspaper article which reveals that the iPhone is using the Marvell CPU (and not Intel, etc.).

What Gruber says in his Linked List about the article is actually more interesting to me than the article itself, and not just because I don’t speak Italian. He writes:

Now the question is: Why is Apple being so secretive about this?

I don’t think Apple is being secretive about the CPU that the iPhone is using, per se … I think there’s just no story there. The CPU the iPhone uses doesn’t (or, at least from Apple’s standpoint) shouldn’t matter.

Of course, maybe I’m just being naive. Maybe Intel feels silly for selling its ARM division to Marvell and asked Apple not to make a big thing out of the iPhone’s CPU (as Gruber seems to be suggesting). But I think Apple is actually making a statement here.

The way I see it, Apple’s new motto might as well be “Thanks to OS X, the CPU is irrelevant.” So Apple makes the switch from PowerPC to Intel, and the resulting Macs are faster, cooler, and quieter, but from the user-interface standpoint, OS X works, looks, and feels just the same as it used to on the previous processors.

And now the iPhone uses yet another CPU, and we should still expect OS X to feel like OS X. Apple seems to be pushing the idea that the CPU shouldn’t matter to the user of an Apple product. And I think that’s why Apple isn’t talking about the iPhone’s CPU.

It’s almost as if Steve Jobs is saying (about all Apple products, not just the iPhone), “Trust me, it will be fast, it will work the way you expect. Don’t worry about it.”

Whether or not this is true remains to be seen, but it’s obvious that this is the direction they’re headed. Apple has been both lauded and criticized because of their CPU choices in the past, and it wouldn’t surprise me if they want to put it all behind them.


Tim Moore

27 January 2008 at 1:49 pm

I bet you’re right, and I think there’s another practical reason to avoid documenting the processor: it gives them the ability to change it more easily in the future. Considering that they’re about to open up an SDK, there’s a risk that programmers might try to squeeze out a little more performance by writing parts of their application in assembly.

The PPC to Intel switch was already more painful than it had to be—through no fault of Apple’s—due to third-party developers making assumptions that no longer held true. By keeping the internal implementation undocumented, perhaps they intend to send a message to developers that they should stick to what *is* documented when writing their apps.

Ankur

27 January 2008 at 3:04 pm

“Thanks to OS X, the CPU is irrelevant.”

Wasn’t ‘OS X’ (NeXT / OPENSTEP) platform-independent before Apple got hold of it?

pauldwaite

28 January 2008 at 2:59 am

> I think there’s just no story there

Right. The only time in history CPUs have been of any interest to anyone except computer enthusiasts was when Intel made that little “Intel Inside” jingle. And even then, most normal folk who decided that having Intel inside was a good thing probably couldn’t tell you what CPU stood for.

Computers have gone beyond the enthusiast market. They’re mainstream. Apple’s brilliant at communicating precisely what most people care about, and it ain’t CPUs.

> it gives them the ability to change it more easily in the future

Good point.

Andy

29 January 2008 at 10:21 pm

I’m inclined to agree with this, but I don’t think it matches the evidence.  Apple *does* talk about the CPUs they use.  On the Mac.  Just not on the iPhone or iPod.  Maybe you’re on to something, though, in that Apple may not consider the specific processor an important selling point for the iPhone/iPod.  It’s just a component, and they don’t talk about where they get any of their components…

WJ

30 January 2008 at 12:14 pm

Yes. NeXTSTEP/OpenStep was indeed a universal OS and Application framework that could run on Motorola’s 68030 and 68040 CPUs in the NeXT Cube computers, Intel x86, Sun-SPARC and HP PA-RISC if I remember correctly and of course later on Mac’s PowerPC. The compiled apps ran on Sun Solaris, Windows (Yellow Box under Windows 95/NT/XP).

Jesse Tayler

30 January 2008 at 3:52 pm

yes, the iPhone runs OSX, meaning it came from NeXTSTEP and the method of creating code at Apple, which was inherited from NeXT, has been processor independent since NeXT moved to Intel processors many years ago.

The interesting thing about the iPhone is that it shares the exact same code, the very same Object Frameworks, such as Core Audio, or Code Video and Core Animation which have been hardened on the desktop OS are now ported to the new processor for use in the iPhone. As these frameworks mature for use in either system, advantages are shared between the iPhone and Mac desktop/laptop computers.

Then you realize that AppleTV also runs OSX, and those same codes and frameworks are also used in AppleTV. If Apple were to release a web browser for AppleTV, they would have the same Safari frameworks (called WebKit) running on three systems, Macs, iPhones and AppleTVs

Interesting comparison in approach between Apple and Microsoft, who does not rely heavily on object oriented code and maintains several versions of Windows at once, each with its own code, bugs and features.

Jesse Tayler

30 January 2008 at 3:56 pm

just for historical note, NeXTSTEP also ran on the lesser known or used DEC Alpha, also known as the Alpha AXP, as well as those thoughtfully mentioned by WJ!

Tim

31 January 2008 at 6:28 pm

@Jesse:  NeXTSTEP also ran on the lesser known or used DEC Alpha

When did that happen?  Do you have a reference for that?  I have a ton of NeXT stuff (and also an Alpha) and I’ve never heard of NeXTSTEP running on Alpha.  The only architectures supported by a shipped product that I’m aware of were:

NeXT/m68k (Mach)
Sun/sparc (Mach/Solaris)
HP/PA-RISC (Mach?/HPUX)
PC/x86 (Mach/NT)

And then of course the unshipped NRW:  http://www.nextcomputers.org/forums/viewtopic.php?p=7751&sid=d4796a90a4ff2741a82f7efd75c4421b

Bob Peterson

04 February 2008 at 4:20 am

“Apple’s brilliant at communicating precisely what most people care about, and it ain’t CPUs.”

But then their recent iWord update was pretty insultingly skimpy.  Software information is of wider interest than CPU information.  I like the two tier approach they have used in other updates: a brief explanation in Software Update, and a link to a change history or release notes.

As a former compiler developer, we targeted the optimizer at the best-performing system.  It was hard to make one binary that performed well on all CPUs in the family.  So we preferred the most expensive system because those people were paying for top performance.  Apple must have some way to communicate CPU information to compiler developers.