The war between iOS and Android holds strong even to today. Obviously there are valid reasons to fall on either side of the fence, but that doesn’t stop people (including us) from endlessly comparing the two to see which one is better for our needs.
We’ve already explored questions like which mobile operating system is more secure and why iOS apps are generally better than Android apps. But here’s something you may not have noticed: iOS devices often have half the RAM (or less) of Android devices. Why is this?
Comparing RAM on iPhone vs. Android
For this article, we’ll look at some of the latest top-of-the-line Android devices from multiple manufacturers and put them side-by-side against the iPhone 8, iPhone 8 Plus, and iPhone X.
These are all 2017-era Android devices that represent the best of the best currently available for smartphone consumers. As you can see, these RAM specs are hefty and will cost you a pretty penny. Expect to pay anywhere from $650 to $1,000 for these.
To give you an idea of how excessive 8GB of RAM is, keep in mind that most modern laptops don’t even come with that much. Most 2017-era Chromebooks, for example, cap out at 4GB with only a select few models even offering an 8GB build — and even those high-performance 8GB Chromebooks are still cheaper than these Android devices!
To be fair, only the OnePlus 5T comes with 8GB. But my point is this: Android devices wouldn’t come with this much RAM if they didn’t need it, right? And if the latest Android devices are coming equipped with 4-8GB of RAM, then how much RAM do iPhones have?
Wait a minute. What’s going on? Between Apple’s line of 2017-era iPhones, we only see 2GB on the “entry-level” iPhone 8, 3GB on the larger iPhone 8 Plus, and 3GB on the latest-and-greatest iPhone X. Apple’s highest model has less RAM than the weaker Android options!
None of this is new, by the way. The iPhone 7 Plus introduced 3GB of RAM to the iPhone line back in 2016. The iPhone 7, iPhone 6s Plus, and iPhone 6s all operate on 2GB without issue. And the iPhone 6, which can run iOS 11 like the rest of its successors, only has 1GB.
Seriously, what’s going on? How can a 2014-era iPhone 6 passably run the latest version of iOS with only 1GB of RAM whereas Androids need up to 8x that amount?
Why Android Devices Need So Much RAM
From the very beginning, Android was designed to support many different processor types, many different manufacturers, and many different hardware configurations. Normally, software written for one kind of system can’t just run on another; it has to be “ported” over, which often involves rewriting the incompatible bits.
To get around this, Android apps have always run on the Java platform. Java is nifty because of its virtual machine: you can write an app once in Java, and then the virtual machine “translates” that code at runtime to work on whatever system it’s on. Instead of rewriting and recompiling the code yourself, the Java virtual machine handles it for you.
But this comes with a cost.
The Java virtual machine is complex and requires a lot of RAM, not just to manage the actual processes of the virtual machine itself, but also to hold the original Java code for whatever app is being executed plus the translated code that actually gets executed by the system.
On the one hand, the virtual machine in Android has improved over the years and doesn’t require as much RAM as it once did. On the other hand, Android apps are becoming more and more advanced — arguably even bloated — and thus need more RAM to operate. RAM is also needed for background processes, which are common in Android apps.
Lastly, the Android operating system is built around a method called “garbage collection.” Apps are actually encouraged to use as much RAM as they need. Then, every once in a while, Android cleans up the data in RAM that’s no longer being used (“garbage”) and frees it, allowing other apps to use it. This method, while effective, is most optimal when there’s a lot of RAM to play with, otherwise the system spends too much time always collecting garbage.
For these reasons, we recommend at least 4GB of RAM on Android if you care about smooth performance. If you don’t, then 2GB should be the bare minimum.
Why iOS Doesn’t Use as Much RAM as Android
Apple exerts a lot more control over the entire iOS ecosystem. If you want to use iOS, then you only have one option for a phone: the iPhone. If you want to create iOS apps, then you have to use Apple’s tools and do it Apple’s way. Apple rules with a tight fist.
There are many benefits to this, though.
Because Apple knows the exact specifications of every single device that will ever run its operating system, they can make design decisions accordingly. For example, whereas Android needs to support multiple processor types, iOS always runs on ARM-based hardware.
As such, iOS doesn’t need a virtual machine with on-the-fly translation like Android does. All apps are compiled to native code, and that code is executed directly on the hardware. No need for a virtual machine means significantly less RAM used overall.
Furthermore, iOS has a different approach to memory management. Whereas Android memory is handled by the operating system, iOS memory is handled by the apps themselves. Instead of allowing apps to take up as much RAM as they want and freeing it when no longer in use, iOS apps automatically allocate and deallocate memory as needed.
In short, just because iPhones have less RAM doesn’t mean they have worse performance. iOS has a different approach to memory management because it doesn’t rely on a virtual machine like Android does.