Performance tips for Windows Store apps using XAML

Encore une fois je voulais aller à une session « Evolution of .NET » mais elle est full. Donc retour à XAML 😉

La session commence par quelques concepts sur l’architecture de XAML

Architecture de XAML :

– XAML ne s’appuie pas sur du code managé mais sur du code natif. (notamment DirectX)

– La structure de la plateforme XAML est constituée de couches :

  • Graphics engine
  • Core and Framework (controls)

– XAML est multi-threadé (UIThread, CompositorThread, WorkerThread)

  • Typiquement le Thread UI interagie avec l’IHM et le compositorThread effectue le rendu.

Ensuite le déroulement détaillé du démarrage de l’application est décrit.

-> Optimisation du démarrage : diminuer la taille du XAML réferencé dans APP.Xaml et dans MainPage.Xaml (le parsing est fait sur le thread UI)

-> Démo : Comment diagnostiquer avec les outils XPerf / wpa

La démo montre comment mesurer le temps de parsing / le nombre d’éléments créés

On aborde ensuite le sujet des dependant animations et pourquoi elle impactent les performances. De même les best practices sur les animations sont abordées.

Là sur utilisation du GPU par les animations est également abordée.

La session continue avec les problèmes de panning  (sur les gridView par exemple) qui peuvent être dues à la surcharge soit du thread UI soit du compositor Thread (parfois des deux) et la démo porte sur le profiling :

  • Utilisation des thread / Gpu

Puis en fin de session différents sujets sont abordés :

  • Mixer XAML et DirectX
  • Utilisation du MediaElement
  • L’utilisation de la mémoire

Une session à voir impérativement !

Roch

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s