Windows Phone 7 performance - emulator vs physical device

by Valentin Stoychev | Comments 7

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!

,
Team Leader,
Windows Phone Team

 

Posted in: windows-phone

7 Comments

Pedro Lamas
I just wish I had a (R) Core(TM) 2 Quad CPU Q9400 @ 2.66Gz, 64Bit Windows 7, 8GB RAM machine... ;)
Kiril
Great article...thanks!
Michael
would be cool if the emulator could some how mimic the hardware limitation (allow you to customise it too). This way we could get a better idea of how it should perform on a real device.
Bernd Degen
I have performed the same test with a HTC HD7. Unfortunately my laptop does not quite correspond to the specifications. It is an AMD Turion 64 X2 2.30GHz. ;))

But the time shift between emulator and phone is about the same on your test.


/HTC HD 7  (1GHz Qualcomm QSD8250 with 16GB)

Emulator* Device**
App1 756ms 964ms
App2 1109ms 1606ms
App3 1157ms 2003ms
Valentin Stoychev
Hi Bernd - thanks for sharing your results! It is really strange that the HTC is slower than the LG - much slower I would say! I'm expecting delivery of HTC HD7 for my personal phone and once it is here - I'll test aswell :)
Bernd Degen
Hi Valentin,
Today I have tested with the desktop PC to exclude lay it on the weak laptop. The emulator is much faster on the Intel I7, but the phone remains slow: - / /

Emulator* Device**
App1 322ms 990ms
App2 478ms 1581ms
App3 684ms 1975ms

The poor performance of the HTC 7 could be related tot the older modified Hardware of a HD2, but the other phones were completely new design for WP7.

The LG phone was also the development phone at Microsoft. While a coding-camp weekend @Microsoft  I work with the original, Handmade samples from LG. Maybe the LG Hardware is more optimized for WP7 than the HTC phones.
Veb
I think it's just a case of memory: faster flash (Samsung, LG), slower microSD (htc)

Comments

  1.    
      
      
       
  2. (optional, emails won't be shown on public pages)
  3. (optional)
Read more articles by Valentin Stoychev - or - read latest articles in Developer Tools