Everyone seems to be talking about iOS and how it handles it’s own particular brand of multitasking right now, and things have gotten rather heated.

With many high-profile developers and commentators reiterating that iOS handles multitasking fine just by itself, and some Apple Geniuses seemingly adamant that running apps should be closed manually in order to free up memory, one developer has been particularly outspoken. Fraser Speirs has already written a lengthy blog post on the subject, but now he has released an even longer video explaining just how iOS handles memory usage when multitasking.

The upshot? It turns out that iOS is actually pretty darned clever…

Through the 16-minute video, Speirs shows apps running on an iPad and in various different states, ranging from active to inactive and everywhere in-between.

Firstly, we have to congratulate Fraser for putting together a very comprehensive video, and one which we hope will finally put the whole issue of memory usage in iOS to bed. There is something very compelling about watching memory usage on an iPad fluctuate depending on what apps are being run, and what state the OS is putting them into. You might need to be a bit of a geek to really appreciate the magic, but hey, we’re all geeks here, right?

We highly recommend you set aside the time to sit and watch this thing right through to the end, it might just help you live a little easier.

  • Anonymous

    At least this video will put to bed the argument that killing an app from the switcher does nothing, that clearly isn’t the case as far as memory being used.

    • Kok Hean

      It frees RAM.

      • Anonymous

        Which is memory so what is your point?

      • lol

      • Kok Hean

        I wasn’t thinking right when I typed that comment :p

  • Anonymous

    An excellent video that so closely mirrors what I said in my comment on the previous post, my post could have been written by Fraser! 🙂

    A couple of extra points – he didn’t mention what happens if there is “just” too little RAM left for an app to open, I’d love to see the process list to see which app it kills; highest RAM usage/ longest in idle state/ least used app?

    Also, look at the % CPU usage of Springboard towards the end where it mass-kills apps, it goes from ~5% up to 16% at parts. For those that argue killing apps saves battery, that jump in CPU usage is what is killing the battery, and if you manually force it when the OS doesn’t decide it necessary, *you’re* the reason you’re battery drains faster.

  • Daniel

    I always just close an app manually when I’m done with it. My iPod (4th Generation) is a lot faster with only one or two apps open verses never closing them and letting iOS’s garbage collection do it’s job.

    • i also have a ipod touch 4g and since this video i feel more comfortable just leaving most apps “running” in the background because at least they are not using cpu and graining battery, and if i launch a large memory hogging app or game it will just kill everything unnecessary to smoothly run my large app/game

  • Does anyone notice that when it goes LOW on FREE RAM the program stutters? Look at 10:29 in the video.

    This is the reason I want a lot of free RAM and the reason IOS needed 1gb RAM! Apple just skimped on us for more profit margins.

    Killing apps from the task switcher DOES have its advantages!

    • Graham J

      When iOS kills a background app there is some processing to be done which can cause brief stuttering. It lasts for less time than it would take you to kill the background process manually however.

  • Anonymous

    Can’t view on iPad 🙁

  • Anyone who is jailbroken and able to view free memory in menubar knows very well that killing apps frees memory !! It might not make a huge effect on processor/battery but it will make active apps faster or more responsive : FACT

    • Jailbroken or not, used memory does not make things slow and definitely doesn’t affect battery drain. If you have 1gb of ram and are using 85% of it, it will not run slower than if you were only using 45% of it. Also, just because memory is being used, doesn’t mean its actually doing anything either. Seeing the other comments here, no one really understood what the video was showing.

    • Graham J

      Memory use does not eat battery or change the speed of apps. As long as the foreground app has enough memory it doesn’t matter what the rest of the memory is being used for. If the foreground app needs more memory it will kill off background apps to get it. Killing apps manually is just wasting time doing something the system will do anyway if necessary.

  • This question still eats away at me: What do you do when your phone becomes sluggish?

    • Ok. Apples app/task management sux! I will have XBMC open close it and it eats about 50 MB of memory. It seems like it will stay open until i kill it in the task switcher. Apps will become sluggish but when i kill my task switcher apps, i gain a bunch of memory and my iPad is much more snappier. Plus i can see the MB in the taskbar because I am Jaiblroken.

      • My apps don’t become sluggish, Springboard does. Along with Notifiation Center. Once an app opens and memory is allocated, they run fine.

      • Graham J

        I guess you didn’t watch the video. Yes, apps can remain in memory after you hit home but that doesn’t rob other apps of that memory – if they needed it the background app would be killed automatically. All you’re doing by closing apps manually is doing something the system would do anyway if it was necessary.

      • I guess you didn’t read my question. I didn’t ask if apps remain in memory after closing did I?

      • Graham J

        I read your question but I chose not to answer it. As you can see my reply is in reference to vantheman420’s comment.

      • Graham J

        I read your question but I chose not to answer it. As you can see my reply is in reference to vantheman420’s comment.

  • ….And this is why I love my iphone and hated my android 🙂

  • I’ll continue to use remove background and shake and bake baby.

  • I made a video some time ago:

    http://m.youtube.com/index?client=mv-google&desktop_uri=%2F%3Fgl%3DES%26hl%3Des&gl=ES&hl=es&rdm=4ozmbjtq4#/watch?v=uqbK5-KoJ80

    I think the problem comes cause the system loves to work with too less RAM, and when you use it for a while you are running all the time with 10-20 MB, turning the system sluggish.

    I’m using Springtomize to run the iOS without Multitasking. This way, I always open any app with 110 MB remaining; and the system is not in a continue fight, closing apps, when I’m using another one.

  • Graham J

    Great video! I has hoping to see something about apps that use background services (Apple’s daemon-like system) though, like music playing, VoIP, GPS etc. Will it kill those if foreground memory is necessary? Does it manage their CPU usage?

  • Great question.
    Hope to see an answer soon.

    Talking from my experience, the OS won’t kill the app; but, the app (VoIP, GPS, …etc) will crash or become more sluggish when there is less memory for it. As that’s what has been happening to me.

    • Graham J

      That makes sense, presumably you’d want those processes to continue no matter what. I just wonder how they run – as a separate daemon process, a separate thread or something? Seems like keeping the whole app in memory would be a waste if you only need a small task. Or maybe most of the app’s memory is cleared, leaving only enough for the task itself… Maybe I should just do some reading on this 🙂

  • I used to use multicleaner to kill all apps at once in my Ipod Touch 4g. Now, I use Zephyr 1.0.2-1 with remove background (as multicleaner is not compitable alongside). Just the double tap on my springboard clock is very fast to kill all apps. So, I am used to kill apps and save memory even if not necessary. But, If I am intending to multitask (say use safari, music etc) then I stop myself from double tapping the clock. Thats all…. 😀

  • In a nutshell: killing memory expensive apps when you do no longer need them speeds up the launch of a new application, because the iOS doesn’t have to kill suspended apps and can instantly load the new one. Btw: you can try this out by opening up a bunch of medium sized apps and then opening a big one: the big app will take a very slight bit longer to open as it would if the memory had already been freed.