Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Microsoft Silverlight Performance on Windows Phone

Microsoft Silverlight Performance on Windows Phone

Presented at TechEd Middle East 2011


Daron Yondem

March 08, 2011


  1. 8 – 10 March 2011 | Dubai, UAE

  2. 2 Level 300 sessions cover advanced material and assume an

    in-depth understanding of features in a real-world environment, and strong coding skills. These sessions provide you with a detailed technical overview and real-life experiences of a subset of product or technology features, covering architecture, performance, migration, deployment, and development.
  3. 8 – 10 March 2011 | Dubai, UAE Daron Yondem

    Chief Architect | DEVELOAD Software Microsof Regional Director Silverlight MVP Microsoft Silverlight Performance on Windows Phone SESSION CODE: WPH303
  4. It’s made for performance!

  5. Threading

  6. UI THREAD Inputs Touch Layout Networking User Code PerFrame Callbacks

  7. Render Thread (Composition Thread) Double Animations Render Transforms Perspective Transforms

    Rectangular Clips Opacity
  8. Worker Threads User Code User Code User Code User Code

    User Code
  9. EMULATOR! Love OR Hate?

  10. EMULATOR! Uses GPU on PC More CPU than Device Requires

  11. USE THE DEVICE!!!!


  13. Application.Current.Host.Settings. EnableFrameRateCounter = true; Fillrate

  14. Application.Current.Host.Settings.EnableRedrawRegions = true;

  15. Application.Current.Host.Settings.EnableCacheVisualization = true;

  16. Performance Strategy Minimize UI Thread Work Leverage Off-Thread Use the

    GPU Less is more!
  17. CacheMode = BitmapCache PerFrameCallback

  18. Visibility OR Opacity? De

  19. JPEG or PNG? Faster Decoding Opacity

  20. XAML or Pictures?

  21. App Start-Up Delay Loading the Unneeded! Include applicationsplashscreen.jpg Use a

    splash screen
  22. DON’T! Non-rectangular clips Large textures ( > 2K pixels either

    way) Not simple animations (e.g. ColorAnimation) Opacity mask
  23. It’s made for performance!

  24. Tips & Tricks Loading Large Images? HttpWebRequest instead of WebClient

    PerformanceProgressBar Minimize the Code in Constructors and Loaded Events Split across DLLs
  25. 25 Related Content • Web Developers Community Chat Next!, 3.30pm,

    Yellow Theater 2
  26. 8 – 10 March 2011 | Dubai, UAE Complete an

    evaluation on CommZone and enter to win an HP!
  27. Daron Yondem daron@yondem.com http://daron.yondem.com THANKS! 8 – 10 March 2011

    | Dubai, UAE All samples on my blog! Full Source Code!
  28. © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows

    Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.