How much RAM will the iPhone have?
When Steve Jobs showed off the iPhone with its Core Animations, Safari web browsing, and OS X operating system, my first thought was “Wow. I wonder how much RAM that thing is going to have?”.
My Dual G5 PowerMac has 1.5 GB of RAM installed. As I write this, I have 3 applications open on my computer, Text Edit, Safari, and Activity Monitor. Safari has one web page open (the Apple home page, fittingly enough). A quick look at the Activity Monitor shows that Safari is using 140.30 MB of REAL MEMORY, and an astounding 717.90 MB of VIRTUAL MEMORY. Text Edit is using 12.50 MB and 169.10 MB respectively. The Finder? 5.0 MB and 318.16 MB.
Those numbers imply that just opening a page in Safari on OS X (and not actually DOING anything) takes about 145 MB of RAM, and a whopping 1 GB of Virtual memory. Current iPods ship with about 64MB of DRAM + 128kB of SRAM (or IRAM). So what does that tell us about the iPhone? Well, one of three things. Either, 1) the iPhone has a ton of RAM in it, or 2) Apple did a TON of optimization with the version of OS X and Safari bundled in the phone, or 3) You better buy the 8 GB version, because there is going to be a LOT of Virtual Memory swapping going on.
Of course, the iPhone does so much more than surf the web. So, let’s open iTunes, Mail, and address book. iTunes (playing a song in “coverflow” mode, uses 40.44 MB of RAM and 258. 68 MB of Virtual Memory. Mail and Address Book come in at 20.59 MB/237.64 MB and 9.47 MB/171.39 MB respectively. Let’s add that to our previous total, using the calculator widget (something the iPhone supports, and which uses up another 7.43/163.43MB) and we come to 223.23 MB of actual RAM, and 1.83 GB of Virtual Memory.
That’s quite a lot of memory, and we haven’t even made a phone call yet!
Now, I am not trying to say anything at all negative about the iPhone (if anything, I am upset the calculator widget needs 168 MB of Virtual Memory on my Mac!). Quite the opposite, in fact. Apple obviously figured out SOME solution to the RAM issue, as Steve’s demo was glitch-free, and the iPhone wowed us all (most of us) with its “Like Butter” performance. I am just wondering aloud how Apple managed to take OS X, remove the bloat, and streamline the apps well enough that they run well, respond quickly, and maintain OS X’s eye candy we all know and love.
My real fear is that those 8 GB we will be paying $600 for (that’s $75 a Gig, according to my calculator widget) will somehow be used as swap space, thus limiting the amount of songs and video the device can actually hold. Apple is a bit stingy on the iPhone’s tech specs page, and makes no mention of actual song and video capacities the way they do on the “real” iPod pages. They only list battery life. Is this a sign that “All your Gigs are belong to us?”
After a reboot, and then opening Safari, I get it at 65MB real memory. One more tab, I am at 100 MB RAM and 300 MB virtual. that s INSANE!!!
While your numbers are probably correct, it shows a fundamental misconception about how OSX manages memory.
I will sum it up in laymans terms – but there are tons of highly technical resources on the net.
Virtual Memory means nothing. In fact, almost EVERYTHING that OSX ever has in memory will show up in “Virtual Memory”. That is how the numbers get so high.
OSX, even when almost completely idle with no applications open, will try to consume all available memory. Because simply, unused memory is wasted memory.
But rest assured that all of that “Virtual Memory” is available to other applications. OSX simply holds on to stuff and if it needs it again it will pull it out of memory instead of reading from the disk – as it would be faster. But the memory is not actualy HELD by anything… Even though it shows up as consumed…
The real numbers are the “real” memory (or Wired or whatever you want to call it). That is the memory that is actually in use by the program and not available for others. But even then, OSX will move stuff around behind the scenes.
It is pretty common to look at memory consumption in Activity Monitor or top – and panic.
But no need for panic. Because if your memory is not being used than you paid a lot of money for no reason… Better to see it used. The more important numbers to look at are the numbers relating to SWAPPING.
High swapping numbers indicate you are regularly running out of RAM and have to swap things to and from disk. For instance, using top at the command line should show that your “pageins” should be significantly higher than your “pageouts” and the numbers in parentheses should be 0. If you have pageouts that are close to the number of pageins then you are probably running low on memory for your normal usage patterns. If you have numbers in the parins – then you are being hit RIGHT NOW with memory issues.
It is all in how you interpret the numbers. 🙂
still, 220 MB of real memory is pretty high for the phone.
but it must be super streamlined,and probably only 2 apps are ever open at a time.
There is no multi-tasking or parallel computing in iOS.
The non-active app just go to bakcground and release most of the memory (mostly views)!
So you can’t just add up the singel memory footprints.
Even though I’m developing iOS-Apps, I don’t like MacOSX or iOS.
It’s a closed system.
Everybody is complaining about Microsoft, but Apple is much worse.
I hate the policy of them.
They are many times more greedy than the microsoft people!
It’s a nightmare for developers.
I’ll bet the phone has 512M, or at least 256M. And I am sure that the applications are highly “optimized” for the phone…
But hey, I could be wrong… Most windows mobile devices look to have about 128M right now…
I have 2GB in my MacBook Pro. I had Camino, Eclipse, Adium, Vienna, Mail, and iTunes open. I opened a 120MB xml file in TextMate and TextMate consumed 1.5GB of REAL memory (xml takes TONS of memory to serialize) and all my other applications kept working just like normal. Although if I switched to and from TextMate enough and swapping to disk started it would slow down a bit…
But the point is that I consumed about 2.5GB of memory with only 2GB ofphysical memory and things kept running just fine.
🙂
For $600 %#@*ing dollars it should come with 8 GB or storage AND 8 GB or RAM.
And I want one sooooo bad.
Nothing convince me it’s real OS X on this iPhone.
Probably some iPod software redevelopped 🙂
another factor to consider is that the resolution of the iphone’s display is only 320 X 480, which is 5 times less than the lowest resolution you would likely use in a modern OS X setup.
When I ssh to my iphone (8Gb) and run the ‘top’ command I get the following :
PhysMem: 18.6M wired, 24.3M active, 20.3M inactive, 63.3M used, 37.2M free
Which would mean that there are a bit more than 160M.
Default apps are optimized to run well with this amount of RAM. They always run one at a time with sometimes the music on the background… but playing music doesn’t need a lot of memory.
Remember playing your mp3s, editing your pictures or watching your mpegs on your old 233MHz with 64M RAM… ?
Question for you Lab Rat. This post of yours is a bit dated, but since you do such a great job at identiyfing memory allocation, I’m wondering if you can do the same for the iPhone Visual Voice Mail? I know Rats like challenges, especially ones that let them play with cool toys. Thanks eh?
The iPhone fucking sucks. Any cellphone with Windows Mobile has superior specs and functionality in every single way, even down to screen PPI.
But of course if it doesn’t have a half-eaten apple logo on it, you Apple-drones won’t consider them.
Iphone (and itouch) allow only one program to run at a time. No programs run in the background, which greatly reduces the amount of memory needed.
I love my iPhone as a toy not a phone LOL