en direct du centre d’escalade du support microsoft : comment dépanner des problèmes de...
DESCRIPTION
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.TRANSCRIPT
![Page 1: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/1.jpg)
palais des
congrès
Paris
7, 8 et 9
février 2012
![Page 2: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/2.jpg)
Philippe Dieulafait \ Hervé ChapalainIngénieurs d’EscaladeMicrosoft
En direct du Centre d'Escalade
du Support Microsoft :
Comment dépanner des
problèmes de performance ?
(LAN403)
![Page 3: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/3.jpg)
Fuites mémoire mode User
Fuites mémoire mode Kernel
Performance disque
Performance lors du boot
Agenda
![Page 4: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/4.jpg)
Windows Performance Toolkit (WPT 4.7)
Disponible dans le Windows SDK 7.1
Event Tracing for Windows (ETW)
Voir les nombreux articles dans MSDN
Outils et Technologie
![Page 5: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/5.jpg)
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 -stackwalkHeapAlloc+HeapRealloc -heap -Pids <PID>
Arrêt du Tracing
xperf -stop HeapLeak -stop -d heap.etl
![Page 6: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/6.jpg)
Pool Leak
• Permet de tracer les fuites mémoire des pools du kernel de Windows
Démarrage du tracing
xperf -on Base+POOL -stackwalkPoolAlloc+PoolAllocSession+PoolFree+PoolFreeSession –minbuffers 1000 -BufferSize 1024 -MaxBuffers 1024 -MaxFile 1024 -FileMode Circular
Arrêt du Tracing
xperf -d pool.etl
![Page 7: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/7.jpg)
Performance disques
Windows Server 2008 R24 x 1.5 TB en RAID 0
iSCSI
![Page 8: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/8.jpg)
Performance disques
IoMon.exeUser
Kernel
ntfs.sys
volsnap.sys
volmgr.sys
partmgr.sys
disk.sys
Stack File System
Stack Volume
Stack Disk
storport.sys
msiscsi.sysPort Driver + miniport
Logical Disk Counters
Physical Disk Counters+ETW DISK_IO
ETW Storport
![Page 9: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/9.jpg)
Performance disques
• Activation des traces
Démarrage du tracing
xperf -on DISK_IO
Arrêt du Tracing
xperf -d diskio.etl
![Page 10: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/10.jpg)
Phase de Boot et
Performance
![Page 11: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/11.jpg)
Pourquoi le processus de démarrage est si
complexe?
Interaction de nombreux composants Inbox et 3rd
partie
Aperçu du processus de
démarrage
BIOSOS
LoaderOS Initialization
BIOSOS
LoaderKernel
InitializationSession
InitializationWinlogon
InitializationExplorer
Initialization‘Post Boot’
Activity
Numerous application & services consuming CPU &disk resources
Initialize the shell, process & run auto run tasks
Launch various services, orchestrate session logon
Initialize sessions, load win32k subsystem, Initialize, graphics, launch SCM
Enumerate devices, initialize & start drivers (PnP)
Read drivers,read parts of registry
( pas à l’échelle)
![Page 12: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/12.jpg)
ReadyBoot Prefetcher
‘Post Boot’Activity
BIOSOS
LoaderKernel
InitializationSession
InitializationWinlogon
InitializationExplorer
Initialization
ReadyBoot prefetcher
In-RAMReadyBoot
Cache
Hard Drive
OS Components
File System
I/O
Volume Manager
Prefetching reads
OS, apps, & services reads
(cache hits)
ApplicationsOS Components
OS Components
ReadyBoot Driver
IO Stack
OS, apps, & services reads(cache misses)
![Page 13: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/13.jpg)
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
BIOS « Boot Phase »
BIOS
![Page 14: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/14.jpg)
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)
OS Loader (Pre-Session Init Boot
Phase) BIOS
OS Loader
Xperf vue
![Page 15: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/15.jpg)
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
Kernel Init (Pre-Session Init Boot
Phase)BIOS
OS Loader
KernelInitialization
Xperf vue
![Page 16: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/16.jpg)
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
Session Init Boot Phase
BIOSOS
LoaderKernel
InitializationSession
Initialization
Xperf vue
![Page 17: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/17.jpg)
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
Winlogon Init Boot Phase
BIOSOS
LoaderKernel
InitializationSession
InitializationWinlogon
Initialization
Xperf vue
![Page 18: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/18.jpg)
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
Explorer Init Boot Phase
BIOSOS
LoaderKernel
InitializationSession
InitializationWinlogon
InitializationExplorer
Initialization
Xperf vue
![Page 19: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/19.jpg)
Le ‘’Background processing’’ continue iciServices 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 CPU et Disque)
Post Boot Phase
BIOSOS
LoaderKernel
InitializationSession
InitializationWinlogon
InitializationExplorer
InitializationPost Boot
Xperf vue
![Page 20: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/20.jpg)
Post Boot PhaseD
isk Utilizatio
nD
isk
Uti
lizat
ion
CP
U U
tilization
CP
U U
tiliz
atio
n
Clean-install Boot Real User Boot
Exemple : Post Boot ressources utilisation
![Page 21: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/21.jpg)
Modifiez le titre de l’annonce
DEMO
![Page 22: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/22.jpg)
Exemplexbootmgr -trace boot -traceflags base+latency+dispatcher+Drivers -stackwalk
profile+cswitch+readythread -notraceflagsinfilename -postbootdelay 90 <Path>
Sur un OS X64 ajouter le paramètre suivant:
HKLM\System\CurrentControlSet\Control\Session Manager\Memory
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
Créer une trace au démmarage
![Page 23: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/23.jpg)
xperf -help processingAffiche 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
Demo Boot Phases
![Page 24: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/24.jpg)
Sans Symbols
Symbols or not Symbols?
Avec Symbols
![Page 25: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/25.jpg)
Exemple de problème de signature
DEMO
![Page 26: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/26.jpg)
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
Liens
![Page 27: En direct du Centre d’Escalade du Support Microsoft : Comment dépanner des problèmes de performance ?](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559c802a1a28ab49608b4626/html5/thumbnails/27.jpg)
Chaque semaine, les
DevCampsALM, Azure, Windows Phone, HTML5, OpenDatahttp://msdn.microsoft.com/fr-fr/devcamp
Téléchargement, ressources
et toolkits : RdV sur MSDNhttp://msdn.microsoft.com/fr-fr/
Les offres à connaître90 jours d’essai gratuit de Windows
Azure
www.windowsazure.fr
Jusqu’à 35% de réduction sur Visual
Studio Pro, avec l’abonnement MSDN
www.visualstudio.fr
Pour aller plus loin
10
février
2012
Live
Meeting
Open Data - Développer des applications riches avec le
protocole Open Data
16
février
2012
Live
Meeting
Azure series - Développer des applications sociales sur
la plateforme Windows Azure
17
février
2012
Live
Meeting
Comprendre le canvas avec Galactic et la librairie
three.js
21
février
2012
Live
Meeting
La production automatisée de code avec CodeFluent
Entities
2 mars
2012
Live
Meeting
Comprendre et mettre en oeuvre le toolkit Azure pour
Windows Phone 7, iOS et Android
6 mars
2012
Live
MeetingNuget et ALM
9 mars
2012
Live
MeetingKinect - Bien gérer la vie de son capteur
13 mars
2012
Live
MeetingSharepoint series - Automatisation des tests
14 mars
2012
Live
Meeting
TFS Health Check - vérifier la bonne santé de votre
plateforme de développement
15 mars
2012
Live
Meeting
Azure series - Développer pour les téléphones, les
tablettes et le cloud avec Visual Studio 2010
16 mars
2012
Live
Meeting
Applications METRO design - Désossage en règle d'un
template METRO javascript
20 mars
2012
Live
Meeting
Retour d'expérience LightSwitch, Optimisation de
l'accès aux données, Intégration Silverlight
23 mars
2012
Live
Meeting
OAuth - la clé de l'utilisation des réseaux sociaux dans
votre application
Prochaines sessions des Dev Camps