What Apple's 64-Bit Architecture Really Means For Your iPhone

What Apple's 64-Bit Architecture Really Means For Your iPhone

Probably the most underrated announcement Apple made on Tuesday was its move to 64-bit architecture for the iPhone 5S. It's an industry first, and one with major repercussions both for your phone and for the future of Apple. Here's why it matters.

A more thorough technical explanation of 64-bit architecture follows below, but in terms of actual, noticeable differences the A7 processor will bring to the iPhone 5S, the list is surprisingly short. It will help speed up the intensive image processing necessitated by those fancy new camera features. It'll enable games with better graphics and larger worlds. And it'll make CPU-intensive operations—like, say, scanning your fingerprint to unlock your phone—happen without any noticeable lag.

That's what's in it for you right now. But 64-bit is part of a longer game Apple, and every other hardware manufacturer, has been playing for some time. Not only does it allow for more RAM in mobile devices (32-bit maxes out at 4GB, which is more than anyone needs now but we'll get there soon enough), it clears a path for Apple to release a MacBook Air, or some sort of laptop-tablet convertible, on a super-efficient mobile processor. Conversely, it clears the path to put OS X on a mobile device. In short: It positions Apple perfectly for the coming convergence of desktop and mobile.

Again, Apple's not the only company doing this; ARM will be bringing 64-bit architecture to its friends at Samsung, Acer, Lenovo, and so on in short order. Any major product shifts resulting from 64-bit also aren't likely to happen any time soon; as always happens, this is just one of several pieces (hello, batteries) that need to come into place for an idealized hybrid device to come to fruition.

So we're a long way off from seeing the full benefits of 64-bit mobile guts. That's fine. That just means we have plenty of time to get caught up on what it means, exactly, compliments of White Noise contributor dccorona below.

9
Pending approvalOriginal post by dccorona on Whitenoise

64 Bit Architecture: What It Means, and What It Means For You

64 Bit Architecture: What It Means, and What It Means For You

With Apple's big announcement of new iPhones tomorrow, many in the tech community (both here at Gizmodo and, well, just about everywhere else) are abuzz about the new A7 processor...chiefly, the move (the first of any cellphone) to 64-bit processor architecture.

However, many in the community don't know what this means (or are talking about it without really understanding it). That's ok! Processors are outrageously complex, and even those who understand it don't TRULY understand it, unless they're one of the few people who build computer hardware for a living (a group I'm not a part of).

That said, I'm going to try to explain it at a base level for those of you who are curious about what 64-bit MEANS...and what it means for you. I'm by no means an expert, so feel free to sound off in the comments if I've said something that is inaccurate.

I guess to talk about 64-bit, we first need to clear up what a bit IS. Computers operate with a binary number system (humans use decimal). This means that everything a computer deals with is just a string of 1's and 0's, and these digits (1 or 0) are referred to as a BIT. That's where internet speeds and storage sizes come from (all measured in either bits or bytes, a byte being 8 bits...a value that was chosen somewhat arbitrarily a long time ago).

At its simplest, the bit-value of a processor (in recent years, always either 32 or 64-bit) is just the measure of how many bits it uses for its memory addresses. This means that on a 32 bit computer, the address of a location in memory has 32 bits in it, and on a 64-bit computer, they use 64 bits.

So, knowing this, one can calculate the maximum possible amount of memory a processor can interface with by taking 2, and raising it to the power of the number of bits you have. So, what this means is that a 32-bit processor can see (or "address") 2^32 different memory locations. The actual amount of memory possible here also depends on what size chunks the processor addresses...for simplicities sake, lets just pretend our imaginary processor for the sake of this discussion addresses by the bit (usually, it'll deal with bytes or half-bytes).

With that said, we can see that a 64-bit system can address 2^64 different memory locations. If you do the math, you'll see that that is a giant amount of extra memory a 64 bit computer has access to. At the simplest level, this is what 32 vs 64-bit means.

We don't yet know how much memory the new iPhone has, but if it's over 2gb I'll be surprised. Either way, it is almost assuredly not going to have an amount of RAM that only a 64-bit processor can address. So the advantage of the new A7 processor is not going to have anything to do with memory (perhaps it will, circumstantially, result in faster RAM, but that's a different conversation).

To see the real advantage this new architecture represents, you have to look at how a CPU works. CPUs contain small buckets of memory, called registers, that it uses to load data into and operate on. A CPU can't operate directly on data stored in its RAM, it has to "pull it in" in order to work with it. In most cases, a CPU chooses the size of each register based on the size of its memory addresses...that's the absolute smallest they can be, because it needs to be able to load up those values. Making the registers larger than that can unnecessarily complicate things. So, a 32-bit CPU has 32-bit registers, while a 64-bit CPU has 64-bit registers.

What this means is that the largest possible number a CPU can operate on in a single operation is bound by its register size, which is linked to its "bit rating" (for lack of a better word). A calculation on large values (be it a gigantic integer, or a very precise floating point number) has to be broken into 2 or more operations on a 32-bit CPU, but the same calculation can be done in a single operation on a 64-bit CPU. 128bit values would take 4 operations on a 32-bit, vs 2 on a 64-bit, etc. (It's not quite that cut and dry...there's all of the "move" operations and the logic operations required to split up and put back together these large values, so it's not as simple as 1 vs 2, 2 vs 4, etc., but the analogy serves its purpose).

So, this is where the "twice as fast" saying about 64-bit vs 32-bit comes into play. That saying isn't entirely true, but the idea is that some operations can be made UP TO twice as fast.

So, what does this mean in your everyday life? Certain operations aren't going to be made any faster at all...applications that deal with just integer and character operations/comparisons, etc. won't be made any faster (a word processor app, for example). You won't be seeing a vast improvement in the performance of your notes app due to the new architecture, for example. However, things that are graphics intensive and require a lot of operations on pixel and color data, physics calculations, etc. will benefit greatly...these are large numbers being operated on, and there's a lot of them, so you can see where the larger registers can come into play.

There's a lot of talk about how hard/easy it's going to be for developers to implement this, and whether or not they'll leave behind older phones in order to only support 64-bit CPUs, and I'm of the opinion that that won't be an issue, but that remains to be seen. I think the point of this post is really to talk about what it REALLY means, and to help people understand what it's going to improve, and what isn't really going to change much.

9 Reply