Skip to main content

Why do iPhone have lesser RAM than Android phones ?

Why do iPhone have lesser RAM than Android phones ?

Why does the iPhone need so much less RAM than Android devices?

When comparing an iPhone to other Android powered flagship phones, one thing that tends to stand out, is the significant difference in the RAM storage of the devices. As a result, most people conclude that iPhone needs less RAM or that Android apps hog storage space. But does Android really use more RAM than iOS ?
RAM
The first thing we need to establish here, is that we are not talking about storage space. Internal storage space of devices is many a times clubbed together with RAM storage when the specifications are listed. What we are talking about is Random Access Memory (RAM), the memory used by the CPU to hold and execute apps. Below is a comparison between the flagship devices of companies over the past few years.
YeariPhoneSamsungLGOther
2016iPhone 7: 2GB
iPhone 7 Plus: 3GB
S7 & S7 Edge: 4GBG5: 4GB
V20: 4GB
Pixel & Pixel XL: 4GB
2015iPhone 6S: 2GB
iPhone 6S Plus: 2GB
S6 & S6 Edge: 3GB
S6 Edge+: 4GB
G4: 3GB
V10: 4GB
Nexus 5X: 2GB
Nexus 6P: 3GB
2014iPhone 6: 1GB
iPhone 6 Plus: 1GB
S5: 2GBG3: 2GB (16 GB model)
G3: 3GB (32 GB model)
Nexus 6: 3GB
2013iPhone 5S: 1GBS4: 2GBG2: 2GBNexus 5: 2GB

As you can see, iPhone consistently have lower RAM storage than Android devices with the only exception being the Nexus 5X. The popular opinion regarding this, is that iOS can offer the same if not better user experience by using lesser amount of RAM and this is inherently caused due to Android use of Java’s Garbage Collection Mechanism. This view will be reflected as the most popular opinion on the internet. But the more deeper you look into the problem, the more this opinion starts sounding like a myth.
Resident Set Size
To test the theory that apps on Android use more memory than the ones on iOS, we decided to compare memory usage across the devices. Before we share the results, let us share the thinking behind the results. When an app needs to perform a function such as loading an image, it will request for memory. Say the app asks for 1 MB of memory to load the image. At this point of time, the app’s virtual size will increase, but the system will not allocate memory to it just yet. The actual physical RAM allocating will occur when the app starts loading the image by reading it from storage and then writing it onto the RAM. Thus if only half an MB is used, the actual physical memory used by the app will be lesser than its virtual size.
This physical memory used by the app is termed as the Resident Set Size or RSS and is the best indicator of how much physical memory an app will need to run. Researchers have used a number of tools to identify the RSS needed for various apps on both iOS and Android. To test the claim, the same number of apps were installed on an iOS and an Android device and their RSS was determined. In each case the app was actually being used. Below are the results:

As you can see, it is a bit of a mixed bag. The Crossy Road app on Android uses 383MB of memory, while on iOS it uses 308MB. But conversely Temple Run 2 uses 211MB on Android and 364MB on iOS. Overall the trend is that Android apps use slightly more memory, around 6% more than iOS apps. However iOS apps aren’t half the size of Android apps. Its fair to say therefore, that the claim of Android apps being a memory hog doesn’t hold water. The actual reason cause therefore, is something else entirely.
Background and Foreground
The difference in the storage needs stems from the way the two OSes control background processes. Each of them follows a different approach and hence produce different results. iOS handles moving of an app into the background in 3 different ways:
  • An app can request time to complete a task that had begun when it was in the foreground before being pushed into the background.
  • Apps that have begun a download process, can pass on these process to the system and therefore can be suspended or terminated while the download progresses unabated.
  • Apps that need to run in the background to support a specific task can declare their support for one or more background execution modes.
You can test this yourself. If you own an iPhone, open Safari and hit a URL. While the URL is loading, carry out an action on the screen that causes the screen to render a change. You will notice that the page load has been paused while the screen is being rendered. Android however, approaches background apps with a different methodology.
Android keeps all apps alive on the RAM if there is sufficient RAM to support it. For Android, empty RAM is wasted RAM. This reduces battery usage as the apps are only initialized once and then remain alive on the RAM. Unless these apps have a background process, they do not use any battery while being kept alive. If your device runs out of RAM, then the system will kill off lesser used processes to allow its users to run the apps without worrying.
This difference in approach makes a lot of difference. The restrictions that iOS puts on its apps ensures better RAM management while at the same time keeping the user interface chugging along without any noticeable lag. Android on the other hand allows its apps to enjoy a higher degree of freedom thus allowing them to keep working in the background even though its not being used and this lets a user to get back to an app in its running state with any running tasks unhindered.
On the flip side of this approach, while iOS users might find their apps being in a frozen state when they get back to it, they get to enjoy having their device never suffering from a visible lag whereas Android substitutes this by allowing more processing to be done and thus has a higher requirement of RAM.

Comments

Popular posts from this blog

sxhkd volume andbrightness config for dwm on void

xbps-install  sxhkd ------------ mkdir .config/sxhkd cd .config/sxhkd nano/vim sxhkdrc -------------------------------- XF86AudioRaiseVolume         amixer -c 1 -- sset Master 2db+ XF86AudioLowerVolume         amixer -c 1 -- sset Master 2db- XF86AudioMute         amixer -c 1 -- sset Master toggle alt + shift + Escape         pkill -USR1 -x sxhkd XF86MonBrightnessUp          xbacklight -inc 20 XF86MonBrightnessDown          xbacklight -dec 20 ------------------------------------------------------------- amixer -c card_no -- sset Interface volume run alsamixer to find card no and interface names xbps-install -S git git clone https://git.suckless.org/dwm xbps-install -S base-devel libX11-devel libXft-devel libXinerama-devel  vim config.mk # FREETYPEINC = ${X11INC}/freetype2 #comment for non-bsd make clean install   cp config.def.h config.h vim config.h xbps-install -S font-symbola #for emoji on statusbar support     void audio config xbps-i

Hidden Wiki

Welcome to The Hidden Wiki New hidden wiki url 2015 http://zqktlwi4fecvo6ri.onion Add it to bookmarks and spread it!!! Editor's picks Bored? Pick a random page from the article index and replace one of these slots with it. The Matrix - Very nice to read. How to Exit the Matrix - Learn how to Protect yourself and your rights, online and off. Verifying PGP signatures - A short and simple how-to guide. In Praise Of Hawala - Anonymous informal value transfer system. Volunteer Here are five different things that you can help us out with. Plunder other hidden service lists for links and place them here! File the SnapBBSIndex links wherever they go. Set external links to HTTPS where available, good certificate, and same content. Care to start recording onionland's history? Check out Onionland's Museum Perform Dead Services Duties. Introduction Points Ahmia.fi - Clearnet search engine for Tor Hidden Services (allows you

download office 2021 and activate

get office from here  https://tb.rg-adguard.net/public.php open powershell as admin (win+x and a ) type cmd  goto insall dir 1.         cd /d %ProgramFiles(x86)%\Microsoft Office\Office16 2.           cd /d %ProgramFiles%\Microsoft Office\Office16 try 1 or 2 depending on installation  install volume license  for /f %x in ('dir /b ..\root\Licenses16\ProPlus2021VL_KMS*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses16\%x" activate using kms cscript ospp.vbs /setprt:1688 cscript ospp.vbs /unpkey:6F7TH >nul cscript ospp.vbs /inpkey:FXYTK-NJJ8C-GB6DW-3DYQT-6F7TH cscript ospp.vbs /sethst:s8.uk.to cscript ospp.vbs /act Automatic script (windefender may block it) ------------------------------------------------------------------------------------------------------------------- @echo off title Activate Microsoft Office 2021 (ALL versions) for FREE - MSGuides.com&cls&echo =====================================================================================&