How WP7 Handsets With 256MB Of RAM Will Not Lead To Fragmentation
Right after Nokia announced Lumia 610, the first real low end device which comes with 256 MB of RAM only, there was a lot of noise that Windows Phone will eventually become fragmented. Even though Nokia says that Lumia 610 users will enjoy all the features of Windows Phone Mango but it is still not clear as how users will get a smooth experience on a handset with such a low amount of RAM.
We emailed Justin Angel from Nokia asking him asking for a clarification on how Nokia/Microsoft aims on delivering a smooth WP7 performance even on handsets with such low amount of RAM? Below is his reply
The question is really around lower memory, since that’s where the Lumia 610 really does its own thing. The Lumia 610 has lower memory, right? So you’re thinking “Lower memory for the device =? Lower memory for my app =? ZOMG fragmentation”. But that isn’t the case. Due to the device’s lower memory instead of having a 90MB RAM working set, like you do on 512 MB devices, you’ll have a 60 MB working set limit. But, apps developers on 256 MB devices can still use 90 MB of RAM like they do for 512 MB devices with the extra RAM coming from paging RAM memory to ROM memory. There’s always been a 90 MB working set limit as part of the cert guidelines. 512 MB devices sometime were a bit more generous then that, but based on the cert guidelines your app needs to run at under 90 MB.
Most 256 MB development tips and tricks are mostly about “hi, you’ve got more than 90 MB on RAM and that’s not cool, so here’s how to get that under control”. The exception there is custom code execution background tasks. Specifically, instead of them not working some of the time on 512MB, they just don’t ever work on 256 MB. Background tasks aren’t meant to provide apps with core functionality in Mango. There’s a hard limit on 10 background tasks that’ll cause the 11th+ background task to fail, and users can capriciously turn background tasks off.
Realistically, we’ve always had a 90 MB limit on the cert guidelines, the place we can improve on is that not all apps made sure to adhere to it.
When Asked on Processor Speed :
The processor change while interesting for developers, won’t be numerically meaningful in terms of computing power. More than half of first generation Windows phones have a 1GHz CPU. The new Lumia 610 has a 800Mhz CPU. So while the 800MHz CPU makes the device even more price attractive to consumers, it’s impact on app development would be limited to those 200MHz.
— Justin
So with a limit of 60MB RAM per app, and the overall limitation of how 10 background tasks, Microsoft and Nokia will be able to deliver a smooth WP7 experience even on lower-end WP7 handsets.
Also, a new version of Windows Phone SDK was announced that will allow the developers to make sure that their app will work on WP7 handsets with 256MB of RAM or not. If you want more details on how to develop your add on this, refer to the detailed post by Justin on Best practice tips for delivering apps to Windows Phone with 256 MB
