Upload
burt
View
50
Download
0
Tags:
Embed Size (px)
DESCRIPTION
.NET Debugging for the Production Environment. Part 5: Debugging High CPU Hangs. Brad Linscott. Premier Field Engineering. Agenda. High CPU hangs Data to collect in production environment Common debugger commands for high cpu hangs Demo. High CPU Hangs. - PowerPoint PPT Presentation
Citation preview
.NET Debugging for the Production EnvironmentPart 5: Debugging High CPU Hangs
Brad LinscottPremier Field Engineering
AgendaHigh CPU hangsData to collect in production environmentCommon debugger commands for high cpu hangsDemo
3
When a single process consumes 90% or more cpuSymptoms may include
Application that is non-responsive/very slow to respondIf it’s a desktop application consuming all the cpu on the box, then multiple apps on the desktop may be visually slow to respond
Quick check – Task Manager, Processes tab
High CPU Hangs
4
If you can do a live debug, then break into the process during the high cpu and debug it. Otherwise…“Ideal” data
Two or more dumps 30 seconds apart during the high cpu hangPerfmon that includes Process & Thread objects– Beware of log file size over long time period
Minimum required dataOne dump during the high cpu hang
Data to Collect for High CPU Hangs
5
!runaway – beware of jumping to conclusionsTo find the offending function(s), use stack & thread commands
Any variant of ‘k’ (kb, kn, kp, k, etc.) for native stacks!psscorX.clrstack for managed stack (X=2, 4)Other thread/stack commands
Sometimes we need help finding the executing line of code in the offending function
u;!u
Common Debugger Commands for High CPU Hangs
Demo: Debugging high cpu hang