palais descongrèsParis7, 8 et 9février 2012
En direct du Centre dEscaladedu Support Microsoft :Comment dépanner desproblèmes de performance ?(LAN403)Philippe Dieulafa...
Agenda  Fuites mémoire mode User  Fuites mémoire mode Kernel  Performance disque  Performance lors du boot
Outils et Technologie  Windows Performance Toolkit (WPT 4.7)    Disponible dans le Windows SDK 7.1  Event Tracing for Win...
Heap Leak• Permet de tracer les fuites mémoire des applications  mode User utilisant le Heap Manager     Démarrage du trac...
Pool Leak • Permet de tracer les fuites mémoire des pools du   kernel de Windows      Démarrage du tracing       xperf -on...
Performance disques                          iSCSI                                  4 x 1.5 TB en RAID 0 Windows Server 20...
Performance disques                           IoMon.exe        User        Kernel                             ntfs.sys    ...
Performance disques • Activation des traces      Démarrage du tracing       xperf -on DISK_IO      Arrêt du Tracing       ...
Phase de Boot etPerformance
Aperçu du processus dedémarrage  Pourquoi le processus de démarrage est si  complexe?        Interaction de nombreux compo...
ReadyBoot Prefetcher          OS         Kernel               Session         Winlogon         Explorer        ‘Post Boot’...
BIOS « Boot Phase »   BIOS  Externe au code de l’OS  Délai induit par la détection d’un CD ou  l’initialisation Boot PXE  ...
OS Loader (Pre-Session Init BootPhase)            OS                                Xperf vue   BIOS          Loader  Déma...
Kernel Init (Pre-Session Init BootPhase)                                        Xperf vue             OS         Kernel   ...
Session Init Boot Phase                              Xperf vue            OS         Kernel          Session   BIOS       ...
Winlogon Init Boot Phase                                              Xperf vue            OS         Kernel          Sess...
Explorer Init Boot Phase                                              Xperf vue            OS         Kernel          Sess...
Post Boot Phase                                        Xperf vue           OS         Kernel          Session         Winl...
Post Boot Phase   Exemple : Post Boot ressources utilisation                                                              ...
DEMOModifiez le titre de l’annonce
Créer une trace au démmarage Exemple     xbootmgr -trace boot -traceflags base+latency+dispatcher+Drivers -stackwalk     p...
Demo Boot Phases  xperf -help processing    Affiche les options pour extraire les données d’un fichier ETL         xperf -...
Symbols or not Symbols?  Sans Symbols       Avec Symbols
DEMO Exemple de problème de signature
Liens Windows Performance Analysis Developper Center  http://msdn.microsoft.com/en-us/performance/cc709422 Windows On/Off ...
Pour aller plus loin                                               Prochaines sessions des Dev Camps  Chaque semaine, les ...
Prochain SlideShare
Chargement dans…5
×

En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?

805 vues

Publié le

Vous avez des problèmes de performance disques, , Problème de lenteur au boot/logon de Windows, vous avez des problèmes de consommation CPU anormalement élevés, des fuites mémoire etc.... Nous allons vous montrer comment le « Windows Performance Toolkit » va très vite vous devenir indispensable. Le « Windows Performance Toolkit » et le moteur « Event Tracing for Windows » sont probablement ce qui a transformé le plus Windows ces 6 dernières années.

Publié dans : Technologie
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?

  1. 1. palais descongrèsParis7, 8 et 9février 2012
  2. 2. En direct du Centre dEscaladedu Support Microsoft :Comment dépanner desproblèmes de performance ?(LAN403)Philippe Dieulafait Hervé ChapalainIngénieurs d’EscaladeMicrosoft
  3. 3. Agenda Fuites mémoire mode User Fuites mémoire mode Kernel Performance disque Performance lors du boot
  4. 4. Outils et Technologie Windows Performance Toolkit (WPT 4.7)  Disponible dans le Windows SDK 7.1 Event Tracing for Windows (ETW)  Voir les nombreux articles dans MSDN
  5. 5. Heap Leak• Permet de tracer les fuites mémoire des applications mode User utilisant le Heap Manager Démarrage du tracing xperf -on Base -start HeapLeak -stackwalk HeapAlloc+HeapRealloc -heap -Pids <PID> Arrêt du Tracing xperf -stop HeapLeak -stop -d heap.etl
  6. 6. Pool Leak • Permet de tracer les fuites mémoire des pools du kernel de Windows Démarrage du tracing xperf -on Base+POOL -stackwalk PoolAlloc+PoolAllocSession+PoolFree+PoolFreeSession – minbuffers 1000 -BufferSize 1024 -MaxBuffers 1024 - MaxFile 1024 -FileMode Circular Arrêt du Tracing xperf -d pool.etl
  7. 7. Performance disques iSCSI 4 x 1.5 TB en RAID 0 Windows Server 2008 R2
  8. 8. Performance disques IoMon.exe User Kernel ntfs.sys Stack File System volsnap.sys Stack Volume Logical Disk Counters volmgr.sys Physical Disk Counters partmgr.sys + Stack Disk ETW DISK_IO disk.sys ETW Storport storport.sys Port Driver + miniport msiscsi.sys
  9. 9. Performance disques • Activation des traces Démarrage du tracing xperf -on DISK_IO Arrêt du Tracing xperf -d diskio.etl
  10. 10. Phase de Boot etPerformance
  11. 11. Aperçu du processus dedémarrage Pourquoi le processus de démarrage est si complexe? Interaction de nombreux composants Inbox et 3rd partie OS BIOS OS Initialization Loader ( pas à l’échelle) OS Kernel Session Winlogon Explorer ‘Post Boot’ BIOS Loader Initialization Initialization Initialization Initialization Activity Launch various Numerous Read Enumerate Initialize Initialize the shell, services, application & drivers, devices, initialize & sessions, load process & run auto orchestrate services read parts start drivers (PnP) win32k run tasks session logon consuming CPU of registry subsystem, Initializ e, graphics, launch &disk resources SCM
  12. 12. ReadyBoot Prefetcher OS Kernel Session Winlogon Explorer ‘Post Boot’ BIOS Loader Initialization Initialization Initialization Initialization Activity ReadyBoot prefetcher OS Components OS Components OS Components Applications I/O File System OS, apps, & In-RAM services reads ReadyBoot ReadyBoot (cache hits) Cache Driver IO Stack Volume Manager Prefetching reads OS, apps, & services reads Hard Drive (cache misses)
  13. 13. BIOS « Boot Phase » BIOS Externe au code de l’OS Délai induit par la détection d’un CD ou l’initialisation Boot PXE Pas reporté directement par Xperf
  14. 14. OS Loader (Pre-Session Init BootPhase) OS Xperf vue BIOS Loader Démarre quand le BIOS passe le contrôle au Loader (Winload) Se termine lorsque le contrôle est passé au noyau (Kernel) Problème de performance: Drivers non signé avec un certificat valide Durée quelques secondes (dépendra du nombre de drivers tiers installés)
  15. 15. Kernel Init (Pre-Session Init BootPhase) Xperf vue OS Kernel BIOS Loader Initialization Contient le Noyau (kernel de base) et l’initialisation PnP ‘’Boot PnP Sub-Phase‘’ ‘’Foreground System PnP Sub-Phase‘’ Problème de performance: Drivers initialisation / Énumération des Devices … Drivers défectueux, algorithmes mal optimisés Drivers non signé avec un certificat valide
  16. 16. Session Init Boot Phase Xperf vue OS Kernel Session BIOS Loader Initialization Initialization Activités telles que Autochk et initialisation de la Vidéo Action concernant les mises à jours ‘’retardé’’ System PnP Sub-Phase ‘’continue‘’ (Backgroud) Commun à cette phase: le délai de l’initialisation de la Vidéo Problème de performances supplémentaire si les actions PnP en ‘’Background‘’ prennent du temps
  17. 17. Winlogon Init Boot Phase Xperf vue OS Kernel Session Winlogon BIOS Loader Initialization Initialization Initialization Initialisation du SCM (Services.exe) Initialisation de la plupart des Services Écran ‘’Bienvenue‘’ Écran de Logon Initialisation du Desktop Problème de performance: Mappage connexion réseau GPO du Domain Services qui démarrent (Démarrage se poursuivant dans les phases suivantes) Une charge I/O et CPU importantes peuvent augmenter la durée de cette phase
  18. 18. Explorer Init Boot Phase Xperf vue OS Kernel Session Winlogon Explorer BIOS Loader Initialization Initialization Initialization Initialization Le temps pour L’Explorer de charger ces paramètres et les initialiser Principalement consacré passé à initialiser l’interface utilisateur Phase habituellement rapide prenant quelques secondes
  19. 19. Post Boot Phase Xperf vue OS Kernel Session Winlogon Explorer BIOS Post Boot Loader Initialization Initialization Initialization Initialization Le ‘’Background processing’’ continue ici Services poursuivant leur démarrage Activité du Prefetching ( si le Boot ‘’footprint‘’ est large) Activité Antivirus Démarrage des applications Raccourcis dans le Tray, indicateur de statuts OEM, IM software, applications de démarrage utilisateur customisées, etc Typiquement on peut voir 20 à 40(voire plus) processus 3rd partis qui démarrent Forte consommation des ressources CPU et Disque ce qui peut provoquer un goulet d’étranglement (Bottleneck) L’impact avec l’utilisateur peut être important avec un sentiment de lenteur générale Phase considérée terminée lorsque le Système est raisonnablement Idle (accumulation d’un total de 10s d’Idle time
  20. 20. Post Boot Phase Exemple : Post Boot ressources utilisation CPU Utilization CPU Utilization Disk Utilization Disk Utilization Clean-install Boot Real User Boot
  21. 21. DEMOModifiez le titre de l’annonce
  22. 22. Créer une trace au démmarage Exemple xbootmgr -trace boot -traceflags base+latency+dispatcher+Drivers -stackwalk profile+cswitch+readythread -notraceflagsinfilename -postbootdelay 90 <Path> Sur un OS X64 ajouter le paramètre suivant: HKLMSystemCurrentControlSetControlSession ManagerMemory Management DisablePagingExecutive REG_DWORD Value: 1 Redémarrer l’ordinateur Une fois la trace terminée pensée à changer la valeur de DisablePagingExecutive à 0 ou a supprimer cette entrée crée
  23. 23. Demo Boot Phases xperf -help processing Affiche les options pour extraire les données d’un fichier ETL xperf -i tracename.etl -o summary.xml -a boot Créer un résumé de la trace dans un fichier XML XperfView
  24. 24. Symbols or not Symbols? Sans Symbols Avec Symbols
  25. 25. DEMO Exemple de problème de signature
  26. 26. Liens Windows Performance Analysis Developper Center http://msdn.microsoft.com/en-us/performance/cc709422 Windows On/Off Transition Performance Analysis http://msdn.microsoft.com/fr-fr/windows/hardware/gg463386 Windows On/Off Transitions Solutions Guide http://msdn.microsoft.com/en-us/windows/hardware/gg463230
  27. 27. Pour aller plus loin Prochaines sessions des Dev Camps Chaque semaine, les 10 Live Open Data - Développer des applications riches avec le février DevCamps 2012 16 Meeting protocole Open Data ALM, Azure, Windows Phone, HTML5, OpenData février Live Meeting Azure series - Développer des applications sociales sur la plateforme Windows Azure 2012 http://msdn.microsoft.com/fr-fr/devcamp 17 Live Comprendre le canvas avec Galactic et la librairie février Meeting three.js 2012 Téléchargement, ressources 21 février Live La production automatisée de code avec CodeFluent Meeting Entities et toolkits : RdV sur MSDN 2012 2 mars Live Comprendre et mettre en oeuvre le toolkit Azure pour http://msdn.microsoft.com/fr-fr/ 2012 Meeting Windows Phone 7, iOS et Android 6 mars Live Nuget et ALM 2012 Meeting Les offres à connaître 9 mars 2012 Live Meeting Kinect - Bien gérer la vie de son capteur 90 jours d’essai gratuit de Windows 13 mars 2012 Live Meeting Sharepoint series - Automatisation des tests Azure 14 mars Live TFS Health Check - vérifier la bonne santé de votre www.windowsazure.fr 2012 Meeting plateforme de développement 15 mars Live Azure series - Développer pour les téléphones, les 2012 Meeting tablettes et le cloud avec Visual Studio 2010 Jusqu’à 35% de réduction sur Visual 16 mars Live Applications METRO design - Désossage en règle dun Studio Pro, avec l’abonnement MSDN 2012 Meeting template METRO javascript 20 mars Live Retour dexpérience LightSwitch, Optimisation de www.visualstudio.fr 2012 Meeting laccès aux données, Intégration Silverlight 23 mars Live OAuth - la clé de lutilisation des réseaux sociaux dans 2012 Meeting votre application

×