The Performance Implications of Multitasking

I noticed that many users were frustrated that the split screen multitasking in iOS 9 was only being brought to the iPad Air 2 and future iPads. If you’re an iPad Mini 3 owner then I think you’re rightfully upset, as your tablet launched at the same time as the Air 2. Users who aren’t aware of things like how much RAM an iOS device has may see this as artificial segmentation. Unfortunately, it’s really a result of the fact that every iOS device before the iPad Air 2 had only 1GB of RAM at most. The iPad Air 2 has 2GB of RAM, and this is crucial to enabling multitasking. But with iOS already running into RAM limitations just running a single intensive app on 1GB devices, it’s very reasonable to question whether or not even 2GB is enough to be running two applications. There’s also the question of whether or not the CPU is up to the task. To try to answer these questions about CPU and memory usage I’ve constructed a couple of use cases which attempt to saturate these components of the system.

Since Apple’s default apps are so lightweight, it’s difficult to set up an actual CPU test for multitasking right now. During this test I had Photos in a 50/50 split with Safari, along with a video playing using picture-in-picture. Since nothing was going on in Safari the CPU usage was very low. Decoding video occurs on its own fixed function blocks as well, so there’s very little CPU usage there. If you decide to try and play Hi10P or HEVC files in another application then you might see CPU usage rise very high during video decoding, but that’s a very limited set of users.

I found that editing in the Photos app seemed to be the most intensive task that you can do with Apple’s default apps, and even it only uses 50-60% of a single core on A8X. Backboardd is also using an additional 24% of a core as it handles information coming from various device sensors and input. As far as Apple’s apps go, A8X is more than fast enough to handle running two applications at once.

Once you consider some more intensive third party apps things get a bit more stressful for the system. While I can’t test this with a split view due to the fact that no third party apps support it yet, you can see above that Adobe’s Photoshop Express application can use an entire CPU core and 65% of another simply by applying photos to filters and rendering the changes in real time. If you were to run two apps of this intensity you would still likely not saturate A8X’s CPU capabilities as you would need to be interacting with both apps at the same time, but it does highlight the possibility that if one application is doing any sort of intensive work on its own it could end up having a negative impact on the performance of the other active application. However, I think for 99% of use cases there’s nothing to worry about as far as CPU performance goes when multitasking on the iPad Air 2.

My test of RAM naturally involved Safari. Safari is an app that quite frankly does not work incredibly well on any iPad except for the Air 2. The reason I say this is because there’s a very rapid eviction of tabs due to the limited amount of memory on those devices. I can recall situations on iOS 7 where an iPad Mini Retina was unable to keep three heavy tabs in memory at the same time. In my test case I have Safari with 6 tabs open. These tabs are all pages from a certain technology website which has particularly heavy pages. With all six pages loaded into memory, I then open the Apple Maps app and enter a split screen view, and I then proceed to bring the map to a 3D city view which requires the caching of various models and textures in memory. Below you can see my observed memory usage.

As you can see, the Safari process and all its tabs ends up using a whopping 728.12MB of RAM. A 3D view of New York City in Maps uses another 322.73MB on top of that, for a total of 1.05GB. On top of that you’ll have something between 100 and 200MB used for general background processes and the iOS system. This makes it pretty clear why Apple has limited multitasking to only the iPad Air 2, as a use case with only two default apps can already use over 1GB before you even consider what the system needs. One could argue that Safari could evict tabs to free up memory, but there are other applications that can’t jettison memory that easily, and even then evicting tabs from memory creates a poor user experience. That brings us to the next question: is even 2GB of RAM enough?

Since most of Apple’s included applications are fairly lightweight, it’s safe to say that you won’t come close to using 2GB of memory even when multitasking unless you open a very large number of Safari tabs. However, many third party applications can be very complex. You could be handling very large images, or drawing complicated 3D scenes. Naturally, these applications will require more memory to keep all of the assets that they’re working with accessible.

The above image shows you the memory usage when the foreground app on a device is Paper by FiftyThree. This is my favorite mobile drawing application, and it’s what one would call a very simple 2D drawing app. You’re not working with extremely high res bitmaps, or RAW image files, or 3D models. Despite that, I was able to see memory usage peak as high as 376MB. In a theoretical case where one had paper in split screen view with Safari, your total RAM usage for the entire system would be somewhere between 1.1 and 1.2GB. This is still well below the total amount of memory the iPad Air 2 has, but a web browser and a simple 2D drawing app in split screen is hardly the most RAM intensive situation I can imagine. If you were to have two applications with a memory footprint as large as or even larger than my Safari example then you could end up running into the 2GB memory wall. This isn’t even considering the memory impact of picture-in-picture windows, or spikes in memory caused by loading in new assets due to the user resizing the split between two apps or interacting with the applications themselves. Even if you can manage two active apps and the system processes with 2GB of RAM, you may end up having to evict every other background application to do so.

The question now is what the solution to this potential issue is. The most obvious is to start shipping devices with more RAM. Apple has traditionally been very conservative with the amount of memory they include in both their mobile devices and even their computers, but in the mobile world it’s becoming a more pressing issue as applications become far more advanced to make use of the enormous increases in mobile processing power, while the amount of memory they can use hasn’t increased nearly as much. Outside of more physical memory, developers can optimize their applications to manage and use RAM as effectively as possible. There’s only so much that a developer can do to minimize memory usage, and beyond that there’s really only one more solution, and it’s not something that I ever expected to see in mobile in the same way it was implemented in PCs. That solution is memory mapped data, which you may also know as swapping to disk or paging.

iOS has actually supported memory mapped data for a number of years, but in iOS 9 Apple is making it more well known to developers and recommending that it be used to manage the memory use of applications rather than its traditional purpose of streaming large files or groups of files that couldn't all fit into memory at once. Apple’s recommendation is that it be used for unchanging read only data, such as images. While this is a “solution”, it introduces the possibility of the user encountering page faults, which is an error/exception that occurs when the system is trying to access memory that is mapped into virtual memory but not actually loaded into RAM. This is something that, for the most part, has never existed on mobile devices. The reason for this is that even with NAND based storage solutions that are several orders of magnitude faster than spinning disk storage, your system memory and cache are significantly faster. Quite frankly, this situation is embarrassing when one considers how much users pay for iPhones and iPads.

I think in most cases, the 2GB of RAM in the iPad Air 2 will be enough to handle two foreground applications. That being said, with 2GB of RAM it’s still possible that you could get dangerously close to having an active app evicted from memory if they're very RAM heavy, such as applications that work with complicated 3D models. Multitasking may also require many background applications to be killed. Even with tricks like compressed memory and high levels of memory optimization, the fact of the matter is that the amount of RAM shipping in iOS devices has needed an increase for a while now, and in the case of the iPad I think it needed to go beyond 2GB. Not only could there be issues in the future with the iPad Air 2, but Apple has been forced to block the split screen feature from every other existing iPad, which is ridiculous when you consider that the best iPad Mini you could go and buy before last week is on the list incompatible devices. Paging is not really an acceptable solution, as the latency of NAND is somewhere around 10x higher than DRAM, and 25x higher than L3 cache.

As for CPU usage, I think A8X is more than fast enough to handle 99% of use cases. If you have an app rendering a video and are also editing photos at the same time you may run into issues, but beyond those edge cases you can expect very fluid performance in both active applications. I'm interested in seeing how the iPad Mini 4 handles multitasking with its dual core Apple A8 SoC.

What would have been optimal for RAM would be if Apple had moved to 2GB with A7 to offset the additional memory usage of 64bit applications, and moved to 4GB in the next generation iPads (Air 2, future devices) to accommodate multitasking. An accidental leak from Adobe implies that the iPad Pro actually will come with 4GB of RAM which is great, but it's possible that the user experience may suffer in heavy use cases with multitasking occurring on existing iPads. Alternatively developers will be limited in the functionality and experiences they can provide in order to function within the limited amount of memory they have to work with, which wouldn't be a good situation either.

Multitasking On The iPad Under the Hood: UI Navigation, Input, App Thinning
Comments Locked

227 Comments

View All Comments

  • centhar - Thursday, September 17, 2015 - link

    It's called a "toy" because all that "power" it has is relegated the iPad to just being a consumption device. The OS is not developed enough to make it a serious creation tool.
  • ws3 - Friday, September 18, 2015 - link

    "The OS is not developed enough to make it a serious creation tool."
    That is not true at all. There is no OS-dependent reason why an equivalent pretty much any desktop software could not run on a high end iPad like the iPad Pro. Desktop applications themselves do not rely on the user having full access to the file system. Of course user interaction would have to be redone to compensate for the lack of a mouse, but the power and OS services required to get the work done are there.
  • centhar - Friday, September 18, 2015 - link

    One issue here, the lack of a file system. It makes organization, copying, managing, importing and exporting of data impossible in iOS. Which is needed for apps to function for the user like their desktop bretheren.
  • ws3 - Saturday, September 19, 2015 - link

    There is a file system, of course. But it is not exposed to the user.

    Apple's idea is that manual organization of the file system is an obsolete concept for most users. iOS apps allow you to import and export files without having direct file system access. Of course, due to the lack of direct file system access, the user has much less control over exactly how his files are organized, and must rely upon app-internal organization and cloud services to manage files.

    The claim being made by Apple haters is that full user access to the file system is absolutely necessary. The claim being made by Apple is that full user access to the file system is more complexity than most users need or are able to handle, and that in the long run it will be seen as no more necessary than the manual layout of data in main memory -- something that was seen as critically important in the early days of computing, but which now, of course, is completely irrelevant to everyone except people writing operating systems.

    It remains to be seen who is correct. I suspect Apple is, but we'll have to wait a while to find out.
  • osxandwindows - Sunday, September 20, 2015 - link

    How about file managers for iOS, I use them all the time
  • Sc0rp - Wednesday, September 30, 2015 - link

    Why is it that people were creating stuff on primitive operating systems back in the 90's with far less power available than the iPad, yet for some reason you think that the iPad's os isn't developed enough and it can't be used for productivity. This is someone that used to use Mac OS7/8/9 back in the day and did a lot of producing on those systems, which were limited to cooperative multitasking.
  • osxandwindows - Wednesday, September 16, 2015 - link

    Well I don't have to buy a new device every 3 years
  • wylie102 - Monday, September 21, 2015 - link

    "The Apple people are stupid sheep who can't think for themselves, and I hate to break it to you, but Apple consumers are a very small market compared to the overall PC and tablet market."

    A sheep is someone who follows the crowd, yet you state in your next sentence that the crowd is overwhelmingly using windows.

    So which is it? You can't have it both ways.
  • robinthakur - Thursday, October 1, 2015 - link

    I use a MS Surface Pro 3 and own an iPad Air 2 and I think the gap has narrowed in terms of what the ipad can't do (especially with a keyboard like the optional surface pro 3 keyboard) now that MS Office Web Apps run on them which is 90% of what the majority of working people need it to do. Now, obviously the Surface can do far more as a full blown Windows machine, and the software for it generally exists already. I as a power user and developer enjoy having that much control of full Windows and I need it. However it also has the historic disadvantages of running full windows which made people stop using it i.e. overheating, updates, security problems etc and complexity. For the average user who has been using an iPad in meetings for the last 5 years, Surface as an option really wasn't good enough as it was underpowered, battery poor, too small and too expensive. They have now changed to work with iPad and are used to working around some of the limitations and adapting their workflows.

    The reality is that the majority of users can get by with an iPad running a modern iOS with the appropriate apps unless they are doing something specialised like Visio, Photoshop or Maya or whatever. Speaking to the influencers and people with the power in business to change this through my job, the general consensus is that while they do like the Surface 3, and can see why having mobile Windows devices operating with a Windows enterprise stack makes things like SharePoint, and other enterprise MS software a much easier proposition, the reality is that MS has also made all it's software far more iPad friendly because the frightening alternative was people moving away from using software that didn't work on the iPad completely. We have zero choice on making software compatible with iPad because that's what people are using, period, and this can't change overnight. Apple has not properly targeted the corporate market other than maiking the devices basically compatible with things like VPN, Active Sync etc. because they haven't had any competition, but it wouldn't surprise me if they started taking it a bit more seriously.

    I think MS don't help themselves by changing their minds and approach constantly on things like RT, Windows Apps and others. Businesses are only now starting to gain confidence that they are serious about the Surface program, and who is to say they won't decide to can it next year if the iPad Pro is a success and they want to focus on software and farm it out to Dell/Hp etc?

    So nobody doubts that the Surface Pro 3 is a more capable device because it just is, but is it an appropriate device in an App centric world where most enterprise software can be delivered through a thin, light, cool-running iPad with Mobile Safari as a tier 1 browser via Office 365?
  • lilmoe - Wednesday, September 16, 2015 - link

    "most Apple users would never dream of changing ecosystems"

    Opinions.... Most have no brand loyalty whatsoever, and will move to the newer "best thing" as claimed by their peers in a heartbeat.

    iPads are great consumption devices, even I was suckered into buying one because my dad wanted one (his friend told him it was the best....."rolling eyes"). They are successful in part because of the devices themselves (and the brand), but that's not the major reason why. The more important reason is the *lack* of proper/legitimate competition in the iPad's target market.

    Tablets running mobile OSs are NOT a necessity in peoples lives. They're more like a novelty some of us buy for "convenience", and are easily replaced by phablets for most consumers. Those who want one, and are willing to pay, will find the iPad very appealing for its performance, smoothness, and selection of media consumption and companion apps. It's a proven product in that respect, and those who're paying the premium don't want to deal with "other issues".

    Android has had lots of trouble getting its performance and framerate game together. Google, and it's utter failure to deliver is at fault. Samsung is NOT a software company, and no matter how good and feature rich their modifications to Android are, lots of people will still find them "clunky" because these modifications were never native to the OS. Google's recent versions of Android are too little, too late. While stock Android is now fast and smooth, it still doesn't stand a chance against Touchwiz in neither features nor usability. Let me say this straight for those who think Touchwix is bad; the absolute majority of consumers HATE stock Android with a passion (tech blogs and XDA are NOT the majority of consumers, not by a long shot). Let me say one more thing if that wasn't offensive enough for stock Android lovers: While I personally believe Android is the king of smartphones (for now), it is the very reason why the non-iPad tablet market is so bad, confusing, cheap, and has no future.

    Windows RT (now Windows 10 Mobile, without the desktop) was the absolute best mobile OS ever to be installed on an ARM powered tablet IMHO. But it had a mix of management, timing and media conception problems (and sabotage), resulting in the alienation of both users and devs.

    Microsoft are really late to the consumer game, so late it's painful. They shouldn't have settled for firing Sinofsky, and everyone else behind how Windows 8/RT was executed, they should make sure they never find a career in tech.

    The Surface Pro is very successful and popular because its intended audience know exactly how capable it is. These guys don't need extensive advertising.

    True, it's Android (or rather more accurately, Samsung) on smartphones that forced Apple to reconsider lots of their design decisions with their iPhones. But it's Windows that's forcing them to change the face of iOS on their iPads.

    There are 3 major markets for tablets:
    1) consumers (dominated by Apple)
    2) prosumers (spread among Apple and Microsoft, with some Android users here and there)
    3) professionals and content creators (dominated by Microsoft).

    Apple's latest updates to iOS and the iPad are primarily for maintaining the second type. Because the first type couldn't give a rat's behind how a productive a tablet is.

Log in

Don't have an account? Sign up now