Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Finally an answer which made most sense.
You mean an answer that talks about swapping in iOS? Where the poster mixes up Mac OS with iOS.
Where he philosophizes about imaginary swapping with the amazing speeds of the glorious NAND flash that they put in those iPhones.
That makes most sense to you?
Oh, boy ... :rolleyes: :D


----------

And of course you agree with him? :p

I am not surprised any more that the iPhone section of this forum has such a horrible reputation.
I have a hard time not to write anything that violates forum rules here, because lots of funny comments with monkeys and sticks come to mind :D
 
You mean an answer that talks about swapping in iOS? Where the poster mixes up Mac OS with iOS.
Where he philosophizes about imaginary swapping with the amazing speeds of the glorious NAND flash that they put in those iPhones.
That makes most sense to you?
Oh, boy ... :rolleyes: :D


----------

And of course you agree with him? :p

I am not surprised any more that the iPhone section of this forum has such a horrible reputation.
I have a hard time not to write anything that violates forum rules here, because lots of funny comments with monkeys and sticks come to mind :D

I'll rephrase, and admit to incorrectly using the term page faults.
However, you most certainly *can* write to disk when low on memory (even though you should tear down view hierarchies, any data persisted in memory that can be cached to disk should be done so that your app isn't terminated by the OS).
Have you ever implemented a UITableViewController with asynchronous image loading? If yes, you probably wrote the images to disk once you started to run low on memory (or if/when those images contained in specific rows were far enough offscreen that they didn't need to be in memory).
Have you scrolled through the wallpapers on the iPhone 6 Plus? The UITableView stutters and lags. And that's because the images are a) large and b) have to be written to/read from disk while scrolling because of *a lack of RAM*. Those write/read operations, although asynchronous, can still be taxing enough on the CPU to cause a drop in frame rate.
Feel free to call me various names for misusing the term page faulting. But if you want to start making 'monkey and sticks' comments, I'll gladly challenge you to a programming contest to illustrate my point.
 
We aren't talking about horrific lag every time we do something with the phone. Just every now and again there'll be a stutter when scrolling, a slight delay in reaction when pressing the screen, and occasionally a complete failure to recognise a screen press. Some will not notice these things, or even consider them a problem. To others they're unacceptable when older iPhones don't suffer the fault.

This exactly!
 
Feel free to call me various names for misusing the term page faulting. But if you want to start making 'monkey and sticks' comments, I'll gladly challenge you to a programming contest to illustrate my point.
I just read your post and wanted to quickly add that I wasn't calling you names and my reply wasn't directed towards you directly and meant more as a jest. Your answer now is well thought through and intriguing. I'll reply more about the RAM discussion later. :)
 
You mean an answer that talks about swapping in iOS? Where the poster mixes up Mac OS with iOS.
Where he philosophizes about imaginary swapping with the amazing speeds of the glorious NAND flash that they put in those iPhones.
That makes most sense to you?
Oh, boy ... :rolleyes: :D
And of course you agree with him? :p:D


Yes, I completely agree with his post.
 
This is the incorrect answer in a nutshell.
Of course lack of memory will cause lag. Why do you think computers have memory? Why do you think specific computers/devices require more memory? Programs are loaded into memory. When there's not enough memory, you'll have to write to disk. Read/write from/to disk is significantly slower than read/write from/to memory. Same goes for the GPU (rendering onscreen vs offscreen, buffer allocation).
These are all example of page faults. Large numbers of page faults cause lag (processing lag, which can/will result in visual lag).
However, memory isn't the *only* reason lag can/will occur. Processing speed is the other obvious culprit.

Ios doesn't write to disk mate.
 
I think the whole discussion about lag is utterly ridiculous. On a technical point of view lag doesn't exist.
Just in forums like this people are debating about that.
What you are experiencing are frame rate drops in animations, mostly, and there are many reasons behind that.
 
I think the whole discussion about lag is utterly ridiculous. On a technical point of view lag doesn't exist.
Just in forums like this people are debating about that.
What you are experiencing are frame rate drops in animations, mostly, and there are many reasons behind that.

Here's my take on the frame drops.

Everything is actually displayed at 2208x1242, and it's not easy for the GPU to downsample it and render everything at 1920x1080.

It's just like the slight frame drops experienced on 13" rMBPs when using resolutions that aren't best for retina.
 
I'll rephrase, and admit to incorrectly using the term page faults.
However, you most certainly *can* write to disk when low on memory (even though you should tear down view hierarchies, any data persisted in memory that can be cached to disk should be done so that your app isn't terminated by the OS).
Have you ever implemented a UITableViewController with asynchronous image loading? If yes, you probably wrote the images to disk once you started to run low on memory (or if/when those images contained in specific rows were far enough offscreen that they didn't need to be in memory).
Have you scrolled through the wallpapers on the iPhone 6 Plus? The UITableView stutters and lags. And that's because the images are a) large and b) have to be written to/read from disk while scrolling because of *a lack of RAM*. Those write/read operations, although asynchronous, can still be taxing enough on the CPU to cause a drop in frame rate.
Feel free to call me various names for misusing the term page faulting. But if you want to start making 'monkey and sticks' comments, I'll gladly challenge you to a programming contest to illustrate my point.
I would loose any programming contest with you, since I am not a programmer anymore. (Last program I wrote was in 1994 ;) )

I found your post extremely interesting and I respect your extended knowledge.
My understanding has always been that iOS never uses page-outs and page-ins:
Although OS X supports a backing store, iOS does not. In iPhone applications, read-only data that is already on the disk (such as code pages) is simply removed from memory and reloaded from disk as needed. Writable data is never removed from memory by the operating system. Instead, if the amount of free memory drops below a certain threshold, the system asks the running applications to free up memory voluntarily to make room for new data. Applications that fail to free up enough memory are terminated.
https://developer.apple.com/library...ry.html#//apple_ref/doc/uid/20001880-BCICIHAB)

What you are saying is that apps do access and write data from and on the storage, but basically not for swapping sake. I suppose you are talking about the same thing that for example Finder does in Mac OS. If you look at images from a folder they are not automatically move into the memory but rather read from disk. This basically means that the bottleneck is the disk/NAND speed, not RAM. Of course you could try to counteract this by throwing RAM at the problem. Or are you suggesting that there should be enough memory available to always load the entire image and video library in it?
 
Last edited:
Here's my take on the frame drops.

Everything is actually displayed at 2208x1242, and it's not easy for the GPU to downsample it and render everything at 1920x1080.

It's just like the slight frame drops experienced on 13" rMBPs when using resolutions that aren't best for retina.

It makes sense.
 
Here's my take on the frame drops.

Everything is actually displayed at 2208x1242, and it's not easy for the GPU to downsample it and render everything at 1920x1080.

It's just like the slight frame drops experienced on 13" rMBPs when using resolutions that aren't best for retina.

This. It's not even a matter of debate why the 6+ stutters more than the 6.
 
Are you being serious?

I'm serious! I haven't returned the thing since the beautiful big screen makes up for it, but my purely subjective feeling is that the 6+ on iOS 8 doesn't feel as snappy as the 5 did on iOS 6. And it definitely seems to be running out of memory, or at least had little lags or pauses if I've got too many apps or web pages open.
I think much of the perceived slowness is just the way iOS 7 and 8 are designed since it's MUCH improved after jail breaking and installing the NoSlowAmimations tweak.
 
I would loose any programming contest with you, since I am not a programmer anymore. (Last program I wrote was in 1994 ;) )

I found your post extremely interesting and I respect your extended knowledge.
My understanding has always been that iOS never uses page-outs and page-ins:

https://developer.apple.com/library...ry.html#//apple_ref/doc/uid/20001880-BCICIHAB)

What you are saying is that apps do access and write data from and on the storage, but basically not for swapping sake. I suppose you are talking about the same thing that for example Finder does in Mac OS. If you look at images from a folder they are not automatically move into the memory but rather read from disk. This basically means that the bottleneck is the disk/NAND speed, not RAM. Of course you could try to counteract this by throwing RAM at the problem. Or are you suggesting that there should be enough memory available to always load the entire image and video library in it?

Exactly! There's a ton of open source projects on Github for image caching (specifically for the example I gave regarding UITableViewControllers). If you have a long list of images, or a list of large images, the app will run out of memory pretty quickly. So you absolutely need to write images to disk when they're off screen and read them back either when they're almost on screen or when they are on screen (you'll see this in the form of a fade in/alpha effect usually).
The only thing you get from iOS is a memory warning (there are three levels of memory warnings, but you don't get the levels in iOS in the low memory warning method as a parameter... only as text in debug mode to console, which is frustrating) at which point you're supposed to flush caches from memory, remove any views from view hierarchies that aren't visible, etc.
I thought that the stuttering/lag on iPhone 6 Plus was *all* GPU related. And I do think most of it is given the downscaling that's going on. But after taking a look at the choose wallpaper UITableViewController, which should not be stuttering at all (Apple's table views almost always scroll at 60fps), it appears that there's some interrupts going on that are memory related (i.e. swapping between RAM and Disk with very large image sizes, although you'd assume you're viewing thumbnails of the wallpapers).
Just some speculation on my part. I've written (and crashed) enough apps that had to deal with strict memory constraints and it's definitely one of the pain points of programming for iOS.
 
I've written (and crashed) enough apps that had to deal with strict memory constraints and it's definitely one of the pain points of programming for iOS.
That is exactly why :apple: is being stingy with RAM!
They are trying to force devs to work within those constraints.
:apple: sees the grand scheme of things. If they stick more memory in their devices, devs would of course utilize it, instead of working around it. This would make new apps sluggish or incompatible with older iOS devices. And that is why iOS devices keep their value and functionality, while android ones become obsolete in no time.

If you give programmers specs, they will use them without thinking about the greater implications. Specs will go up, old machines become slow and users complain. Just look at MS Word. Requires 2gb of RAM for a ****ing writing app that used to run with 4mb!
 
I'm serious! I haven't returned the thing since the beautiful big screen makes up for it, but my purely subjective feeling is that the 6+ on iOS 8 doesn't feel as snappy as the 5 did on iOS 6. And it definitely seems to be running out of memory, or at least had little lags or pauses if I've got too many apps or web pages open.
I think much of the perceived slowness is just the way iOS 7 and 8 are designed since it's MUCH improved after jail breaking and installing the NoSlowAmimations tweak.
Stop speaking about how cool iOS 6 was. That's just not true. IOS 6 was old and it lack a lot of features. At the time a lot of users on this forum were complaining about it.
People tends to forget.
iOS 8 is a better os in every aspect. And for that reason it needs more resources.
 
If you give programmers specs, they will use them without thinking about the greater implications. Specs will go up, old machines become slow and users complain. Just look at MS Word. Requires 2gb of RAM for a ****ing writing app that used to run with 4mb!

This.

The iPhone could have 1, 2, 4 or even 8GB of RAM - and it will still have the same problem. Heck, look at android if you don't believe me. Put an android phone with 3GB of RAM next to an iPhone with 1GB and the performance would be practically the same.
 
Stop speaking about how cool iOS 6 was. That's just not true. IOS 6 was old and it lack a lot of features. At the time a lot of users on this forum were complaining about it.
People tends to forget.
iOS 8 is a better os in every aspect. And for that reason it needs more resources.

I know.

We complain that in the SJ era, features were well short of Android, now they aren't.

----------

This.

The iPhone could have 1, 2, 4 or even 8GB of RAM - and it will still have the same problem. Heck, look at android if you don't believe me. Put an android phone with 3GB of RAM next to an iPhone with 1GB and the performance would be practically the same.

A mate has a Note 3. We have a really cool weather app in NZ, really cool background images, looks great. On my Plus it looks the same great, on his Note 3 its grainy. I haven't compared speed, but this is one poor experience that takes away the experience of a larger screen. BTW he is a bit of an Android fan, but he thinks my Plus is awesome. He's actually temporarily trying an S4, Ill ask why when I go back to work tomorrow as he did love his Note

----------

My 6+ lags horribly when playing the game One More Line.

Does every game lag?
 
That is exactly why :apple: is being stingy with RAM!
They are trying to force devs to work within those constraints.
:apple: sees the grand scheme of things. If they stick more memory in their devices, devs would of course utilize it, instead of working around it. This would make new apps sluggish or incompatible with older iOS devices. And that is why iOS devices keep their value and functionality, while android ones become obsolete in no time.

If you give programmers specs, they will use them without thinking about the greater implications. Specs will go up, old machines become slow and users complain. Just look at MS Word. Requires 2gb of RAM for a ****ing writing app that used to run with 4mb!
That's what I'm saying.
Using 1 Gb on the iPhone 6 and the iPad Mini 3, Apple helped iPhone 5S and iPad Air to survive longer.
The " Samsung's solution" (just throw in another gigabyte, a couple others cores and 300 MHz more) would be easier for lazy developers, but not really for customers.
 
That is exactly why :apple: is being stingy with RAM!
They are trying to force devs to work within those constraints.
:apple: sees the grand scheme of things. If they stick more memory in their devices, devs would of course utilize it, instead of working around it. This would make new apps sluggish or incompatible with older iOS devices. And that is why iOS devices keep their value and functionality, while android ones become obsolete in no time.

If you give programmers specs, they will use them without thinking about the greater implications. Specs will go up, old machines become slow and users complain. Just look at MS Word. Requires 2gb of RAM for a ****ing writing app that used to run with 4mb!

Well, more memory would be nice! The iPhone 6 Plus resolution is so high that assets are now 3x the size and therefore take up more memory (even the launch/splash image can consume what would previously be considered an absurd amount of memory). So in that sense, the newer phones really need more memory. Also, iOS consistently consumes more memory with each major update (8.0 is a memory hog). I don't think it would be unreasonable to dedicate 1GB of RAM to applications (meaning you could potentially ship with a 2GB device, with 1GB being dedicated to the OS, various services, etc and the other 1GB being reserved for application space).

----------

That's what I'm saying.
Using 1 Gb on the iPhone 6 and the iPad Mini 3, Apple helped iPhone 5S and iPad Air to survive longer.
The " Samsung's solution" (just throw in another gigabyte, a couple others cores and 300 MHz more) would be easier for lazy developers, but not really for customers.

The reason Android devices require more memory is because there's a VM running on top of Linux. And since that VM is a Java VM (although it's a variant created by Google), you absolutely need more memory for Garbage Collection (objects are marked as alive, ready to be collected, collected, and dead). Collected objects can remain in memory until the VM frees those objects at which point they're marked as dead (and therefore that memory space is now available).
And I wouldn't call Android developers lazy. Programming for Android is tough, even with a lot of memory.
 
Yes. The iphone 6 plus feels like an Android. But that's ok it's still awesome.

It doesn't bother me the little bugs here and there. Like at all. I think people overreact to Apple products.
 
Yes. The iphone 6 plus feels like an Android. But that's ok it's still awesome.

It doesn't bother me the little bugs here and there. Like at all. I think people overreact to Apple products.

I agree that it's an overreaction, especially on my part. I've said many times that I've never experienced lag on. A launch product, and I've owned every iphone minus the 5c. In many cases we have had multiples in the household since the 4. It's a bit jarring to see lag, or frame rate drops, or whatever the semantics nazis want to call them, on a brand new $850 device.

The only thig even more annoying is being told that what I am seeing isn't real lol. And that's happened a few times in these forums.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.