Usability & iOS 7

The iPad Air remains one of the best consumer tablet experiences around. The OS and Apple’s first party applications are both extremely well suited to the tablet, and there’s a very healthy ecosystem of third party applications to fill in the gaps left by Apple.

Lately Apple has been doing wonders to limit those gaps. Both iLife and iWork suites are now free with the purchase of any new iOS 7 device, including the iPad Air. Previously each of the three iLife apps set you back $5 a piece ($15 total), while the iWork apps were priced at $10 a piece ($30 total). Apple has truly embraced its role as a devices and software company and is using the latter to help sell the former. On the one hand this is an admission that the market is growing more competitive, as tossing in free software is a great differentiator. On the other hand, freeing up iLife/iWork is a vote of confidence in Apple’s ability to continue to demand a premium for its hardware. Neither suite comes preinstalled on the iPad Air, but upon a visit to the App Store users are reminded that they can get all six of the apps for free if they should desire to. I suspect part of the reason that they’re not bundled by default is to avoid eating up space on the devices with less NAND by default.

The core iOS apps are quite approachable and easy to use. Applications like Safari and Mail make great use of the high resolution screen. Obviously the same can be said for things like Photos and iPhoto. The virtual keyboard experience is great on the large display (especially in landscape mode). Honestly, if there was a good Google Hangouts app (the Android version is much better in my experience) for iOS 7 I think I could be very comfortable and productive on the iPad Air.

I find that task switching is far better on the iPad than it is on the iPhone since multitasking gestures are supported. A four finger swipe left/right between applications or up/down to bring up the task switcher is so much quicker for me than a double tap of the physical home button. Similarly a five finger pinch to get back to the home screen from any application is significantly faster. The new iOS 7 multitasking UI feels so much more at home on the iPad’s large display as well.

My only complaint about task switching on the iPad Air is that UI frame rate will regularly drop below 30 fps during some of these transitions. The added GPU performance on the A7 doesn't seem to really impact things compared to the A6X, so I’m fairly convinced at this point that the solution to the problem will have to come in software. It’s quite reminiscent of the Retina MacBook Pro UI frame rate issues under Mountain Lion, although not nearly as bad (and I’m hoping it won’t take a year to get these ones resolved).

The release of iOS 7.0.3 addressed (at least partially) some of my concerns around the OS. As I already mentioned, stability on 64-bit platforms seems somewhat improved - at least compared to the initial release of iOS 7. The other big improvement in my mind is the ability to turn off/reduce the transition animations. The impact to usability on the iPhone 5s is huge, but it’s also pretty significant on the iPad Air. The animations themselves are pretty but I find that they get repetitive after continued use.

Memory Size & The Impact of 64-bit Applications

The iPad Air, like the iPhone 5s, ships with 1GB of LPDDR3 memory. Apple frowns upon dissection of review samples but I think it’s a safe bet that we’re not talking about a PoP (Package-on-Package) configuration but rather discrete, external DRAM here. It’s also probably a safe bet that even the iPad mini with Retina Display will ship with 1GB of memory as well.

Something I didn’t have time to address in my iPhone 5s review was the impact of 64-bit applications on memory usage. I actually ran some tests after the 5s review hit but never got the chance to share the data, so I figured now is as good a time as any to do just that.

Unlike traditional desktop OSes, iOS doesn’t support paging to disk (or in this case, NAND). Application data can either reside in memory or the associated process is terminated and has to be reloaded the next time you request it. It’s a decision likely made to both maintain user experience and limit the number of program/erase cycles on the internal NAND.

The good news is that iOS was architected to run on as little hardware as possible and as a result tends to be quite memory efficient. There are also power implications of going to larger memories. The combination of these two things has kept Apple on the conservative side of increasing memory capacity on many iDevices.

The move to a 64-bit platform however does complicate things a bit. Moving to a larger memory address space increases the size of pointers, which in turn can increase the footprint of 64-bit applications compared to their 32-bit counterparts. So although there’s clearly a performance uplift from app developers recompiling in 64-bit mode (more registers, access to new instructions), there’s also an associated memory footprint penalty. Since the iPad Air and iPhone 5s don’t feature a corresponding increase in memory capacity, I wondered if this might be a problem going forward.

To find out I monitored total platform memory usage in a couple of scenarios. Before measuring I always manually quit all open apps and performed a hard reset on the device. Note that the data below is reporting both clean and dirty memory, so it’s possible that some of the memory space could be recovered in the event that another process needed it. I hoped to minimize the impact by always working on a cleanly reset platform and only testing one app at a time.

I looked at memory usage under the following scenarios:

1) A clean boot with no additional apps open
2) Running Mobile Safari with 4 tabs open (two AnandTech.com tabs, two Apple.com tabs, all showing the same content)
3) Infinity Blade 3 (64-bit enabled) sitting at the very first scene once you start the game
4) iOS Maps in hybrid view with 3D mode enabled, with a WiFi assisted GPS lock on my physical location
5) Google Maps in the same view, under the same conditions. I threw in this one to have a 32-bit app reference point.

In general you’re looking at a 20 - 30% increase in memory footprint when dealing with an all 64-bit environment. At worst, the device’s total memory usage never exceeded 60% of what ships with the platform but these are admittedly fairly light use cases. With more apps open, including some doing work in the background, I do see relatively aggressive eviction of apps from memory. The most visible case is when Safari tabs have to be reloaded upon switching to them. Applications being evicted from memory don’t tend to be a huge problem since the A7 can reload them quickly.

The tricky part is you don’t really need all that much more memory. Unfortunately as with any dual-channel memory architecture, you’re fairly limited in how you can increase memory capacity and still get peak performance. Apple’s only move here would be to go to 2GB, which understandably comes with both power and financial costs. The former is a bigger concern for the iPhone 5s, but on the iPad Air I would’ve expected a transition sooner rather than later.

Although things seem to have improved with iOS 7.0.3, the 64-bit builds of the OS still seem to run into stability issues more frequently than their 32-bit counterparts. I still see low memory errors associated with any crashes. It could just be that the move to 64-bit applications (and associated memory pressure) is putting more stress on iOS’ memory management routines, which in turn exposes some weaknesses. The iPad Air crashed a couple of times on me (3 times total during the past week), but no where near as much as earlier devices running iOS 7.0.1.

Battery Life Final Words
POST A COMMENT

444 Comments

View All Comments

  • over9k - Tuesday, October 29, 2013 - link

    Remember, Mavericks' big focus is RAM management. There's no reason to think iOS 7 also doesn't do some great RAM management. It's just that when talking mobile, that's not the "it" talk. Also, it's important to note that iOS devices have always used lower amounts of memory - they are just very well optimized. Reply
  • tipoo - Tuesday, October 29, 2013 - link

    Mavericks borrowed how iOS already used memory, with background apps being able to be pushed out of memory if need be. iOS7 isn't getting Mavericks memory management, Mavericks is just getting the management iOS already had since its inception. Reply
  • kirsch - Tuesday, October 29, 2013 - link

    I think over9k is referring to memory compression introduced in Mavericks. As far as I know this was never in iOS. Reply
  • tipoo - Tuesday, October 29, 2013 - link

    The compression seems to work on idle apps too though, and iOS would run only one foreground app with most of the memory available to it. I just don't think it will help as much on a mostly single tasking OS. Reply
  • NetMage - Wednesday, October 30, 2013 - link

    Actually it should help more as the recent Apps on iOS are mostly don't to run at all, but are kept in memory to improve swapping speed - these could be easily compressed with no impact on user experience. Reply
  • tipoo - Wednesday, October 30, 2013 - link

    People saying Mavericks like compression will help: Anand measured how much RAM was in use under load. If it was compressing something, it would have been factored into how much was used. This is no holy grail here. Reply
  • darwinosx - Wednesday, October 30, 2013 - link

    You think it needs 2 GB of ram why? It obviously doesn't. This isn't Windows or Android. Reply
  • DarkXale - Wednesday, October 30, 2013 - link

    Because Safari is famous for resetting tabs (lost work), and many iOS apps are notorious for dropping undo states the very second you switch out of them. (Which you have to due to the inability to display more than one app at a time)

    Both cause data loss, which is one of the most serious events that can occur in computer systems.

    Both are due to RAM constraints.
    Reply
  • dugbug - Wednesday, October 30, 2013 - link

    I have not seen that in ios7, they rewrote that behavior significantly. Would it benefit from more ram? sure. Or they could just rewrite it to cache tabs better. Reply
  • tipoo - Wednesday, October 30, 2013 - link

    Because even with 30% less RAM use on 32 bit iOS, Safari boots tabs out like crazy and has to reload a lot of apps from NAND when switching. Reply

Log in

Don't have an account? Sign up now