Part I - App loading time
There are a lot of speculations about how different is the execution speed of a Silverlight application when it runs in the WindowsPhone7 emulator and when it runs on the device. Now that we have the RTM devices, we can measure the actual difference!
I've prepared 3 very simple WP7 applications:
App1 (download). Application that just loads an empty phone application page.
App2 (download). Application that loads a phone application page that contains a Pivot control with 2 items, and
App3 (download). Application that loads a phone application page that contains a Panorama control with 2 items.
I'm measuring the Application initial load time - in this case this is the time between creation of the application (calling the App constructor) and when the home page has raised its Loaded event. The stats are very interesting. Here they are:
| ||Emulator* ||Device** |
|App1 ||350ms ||690ms |
|App2 ||539ms ||981ms |
|App3 ||776ms ||1612ms |
* Emulator running on a standard development machine - Intel(R) Core(TM) 2 Quad CPU Q9400 @ 2.66Gz, 64Bit Windows 7, 8GB RAM
** Device - LG Optimus 7 - 1GHz Qualcomm QSD8650
As you can see there is a huge difference in the execution speed. There are two things worth mentioning here:
1. Always test on the device - when you create something that works fine on the emulator this do not mean that it will work fine on the device. And if you notice this at a later stage - you may need to re-architecture your application again - just to make sure it will work fine on the device too. Most of the time spent in the development of the controls, here in Telerik, is to tweak them to "fly" on the device. Do not underestimate this - always plan 30-40% more time - just to tweak your application on the actual device.
2. Panorama control is heavy - 1.6+ seconds for almost empty Panorama is a huge initial loading time! You have two options here - don't use the Panorama control if it is not needed, or leave very simple content in it in order to keep the initial load time low. Remember - the Panorama control is rendering the content of all its items at once, it is not virtualized like the Pivot control - thus the 600+ms difference.
I hope that helps! If you still have not downloaded the Telerik Controls for Windows Phone 7 - go download them now and minimize the time you spend tweaking your app on the device!
Let us know your feedback or any feature requests!