Welcome to the School of Android 501. Here, we will cover hardware related topics to help readers understand the components that go into smartphones and other mobile tech.
Android phones are riddled with specs. People exclaim various stats like children looking at Pokemon cards, “Check out this phone with a — MP camera!”, “This phone has 4 GB of RAM!”, “The world’s first deca-core smartphone is here!”. But what do all of these specs actually mean?
First topic is the SoC. Specifically, 32-bit architecture versus 64-bit architecture.
Lately, there has been a big push for 64-bit chip-sets in Android devices. There was even an entire portion of 2014 I/O’s keynote dedicated to support for 64-bit devices in Android L (Lollipop).
What do these words mean?
Words and terms are thrown around willy nilly in the tech world, but few actually know what they mean. You probably know what they are for or are referring to, but not many know the meaning behind the words.
A term thrown around a lot with spec lists is the SoC. You will see tech blogs such as ourselves talking about a Snapdragon 810 SoC clocked at 2.2 Ghz, but what does SoC actually mean.
SoC stands for “System on a Chip” which is a sort of all-in-one chip for manufacturers. You have your CPU, central processing unit, graphics card, memory controller and a lot more all in a single chip.
Some SoCs even include the wireless radios like WiFi, GPS and LTE radios in them.
What are bits? Seriously, have you ever thought about that? I haven’t until I started writing up this article for you.
Bits refer to a storage size. The number of bits your processor is determines the size of the data types the processor can handle.
That’s it, that really is all there is to bits. Nothing fancy at all.
What difference does it make?
64-bit is twice as many “bits” as 32-bit, so it is twice as good, right? Well not necessarily. Believe it or not, there are trade offs. 64-bit processors aren’t magic chips that solve world hunger.
One thing that you will always hear is about how a 64-bit processor will allow you to use more than 4 GB of RAM, but that is just a tiny little piece of the puzzle.
A 32-bit processor allows you to use 32-bit integer operations while a 64-bit processor lets you use 64-bit integer operations. 32-bit processors can handle positive integers up to the number 2,147,483,647 while a 64-bit processor can handle up to 9,223,372,036,854,775,807.
What this does is allows you to use over 4 GB of storage. Utilizing a 64-bit processor will allow a single program to access 16 exabytes of data.
Just so you know, a single exabyte equals a billion gigabytes. Once again, a 64-bit processor will give an individual program to use 16 billion GB. 1 TB is a mere 1000 GB. Just for another comparison there. Basically, by today standards, 64-bit processors can utilize unlimited amount of memory.
Apps can actually perform worse with a 64-bit processor as compared to a 32-bit processor. Handling all of those extra pointers could actually slow down your app.
Utilizing 64-bit memory pointers would cause your app to take up more space, RAM and cache which results in worse performance.
What does this mean for you?
Nothing really. The 64-bit processor is more of a “for the future” type deal. Most applications are not even designed to take advantage of the 64-bit processor, they treat them as plain old 32-bit processors.
They are able to do this by utilizing hardware emulation. Currently, the 64-bit processor doesn’t really yield any end user advantages. However, this will change in time.
In the desktop/workstation space, 64-bit CPUs have become standard. This allows more memory to be used at once and more computations to be done at the same time. This allows them to power through rigorous multitasking without giving up performance.
With a 32-bit processor, the computer would be limited to using around 3.5 GB at a time, no matter how much is installed on the computer. The 64-bit processor isn’t limited to 3.5 GB and can use all of the supplied memory.
The end result is significantly improved multitasking. This also helps with gaming. Games are the most hardware-intensive programs you can run on any computer. With the 64-bit CPU, you can handle everything that a game would throw at you with no problems.
As the 64-bit processors become standard in the mobile space, more app developers will design their apps to take advantage of all 64-bits instead of catering to the older 32-bit processors.
In time, apps will start using the advantages of 64-bit to shift through more data at once to give users a smoother and faster experience just like it did for desktops.
In the end of the day, 64-bit SoCs give you smoother and faster apps because they can handle more computations at once and lag less once developers start to take advantage of the 64-bit processors.
Kind of, but 64bit in a ‘mobile’ device is useless. While Android does ‘multitask’ its not the same as desktop multitasking. Only a single app is running at a time on mobile. Secondly games on PC are mostly 32bit still, so they don’t themselves use more than 3.5gb ram. And single applications that use more than 3.5gb are not typical Apps, but more content creation than consumption. Mobile devices are consumption devices and for that reason don’t need 64bit address space. It took the desktop several years to switch to 64bit because the gain just isn’t there except for that 5-10% of people who do heavy work. No one is using mobile that way.
I see what you mean by all that. Yes, mobile devices aren’t used the same as a PC would be, but 64-bit would be great help for a system like Touchwiz. They actually do true multiasking with two applications running at once.
I can see 64-bit address space helping Samsung in managing both apps at once in order to provide a smoother overall experience. Maybe, with the larger screen sizes and the adoption of 64-bit processors, Google will implement Samsung’s multiwindow multitasking into the stock Android experience.
It would most definitely be useful on tablets that are twice the size of a phone.
That all being said, (your comments and mine) 64-bit processors will have a place in the mobile space. It gives Android more room for growth instead of being confined within 3.5 GB of RAM. The potential to grow is there on the hardware side. Now, we just wait for the software to take full advantage of it.
Only if those two running apps are memory bound, touchwiz is slow mainly due to Apps being written in a higher level language and run through a jit. Art is much quicker but the code still isn’t *native*.
64bit makes sense, there is no point staying with the 32bit address space, but I don’t think the end user should ever know/care. It’s pure marketing bs. For the same reason that end users should never know/care when they get a new processor that has an additional instruction set, or has moved from arm v7 to v8. Yes developers need to write applications that can take advantage of that by writing their choice differently, but the end user shouldn’t give a shit.
My article was aimed at educating those who did care about the difference. Most general end users really don’t care, but that wasn’t the idea of my article. My article was written to explain what it means to be 64-bit and why 64-bit is preferred over 32-bit for those advanced users who want to know more about their phone and how it functions.
So, should I steer clear of 32bit processors? Cause I’m planning on getting an LG G3 (Snapdragon 801) which is discounted by about $175 and has a free LG GPAD 7.0. I am really tempted but it’s a 32bit architecture. In late 2015, is it still viable to get one?
There’s another undocumented advantage of the 32bit architecture. People who suffer EHS https://en.m.wikipedia.org/wiki/Electromagnetic_hypersensitivity tend to cope better with sub 2000mhz 32bit mobile devices, over there 64bit counter parts.
Billion gigabytes are petabytes, not exabytes.
Also, 32bits handles up to 4,294,967,295 (from 0), not 2,147,483,647 when it’s unsigned: don’t forget about the sign bit. That’s why it allows 4 GB, not 2 GB as shown by number. The same is with 16 exabytes example.
And don’t write 1000 instead of 1024 if you started to provide such exact numbers.
Friends i have a doubt in future all 32bit processors are useless or not? for using applications in android mobile?
Comments are closed.