After hundreds of performance investigations, some patterns begin to emerge. You could save a lot of time here, or find the root cause more easily there. In this talk, you’ll see what I learned from years of performance work in the field, which processes and tools work, and what I think can still be improved. First, we’ll talk about anti-methods for performance investigations and the USE checklist for finding the performance bottleneck, applied specifically to Windows and .NET applications. Then, we’ll talk about ideal performance investigation tools and which tools can satisfy these needs today, and review the power of Event Tracing for Windows for extracting hard-to-find information out of the system. I will also announce a couple of my own tools that I haven’t talked about before, and that are now open source on GitHub. Finally, we’ll talk about dashboards and visualizations, and some non-obvious mistakes you can make when working with statistics and reports. Along the way, I’ll take you on a tour of a couple of my most challenging performance investigations.
Sasha Goldshtein is the CTO of Sela Group, a Microsoft C# MVP and Azure MRS, a Pluralsight author, and an international consultant and trainer. Sasha is the author of "Introducing Windows 7 for Developers" (Microsoft Press, 2009) and "Pro .NET Performance" (Apress, 2012), a prolific blogger and open source contributor, and the author of numerous training courses including .NET Debugging, .NET Performance, Android Application Development, and Modern C++. His consulting work revolves mainly around distributed architecture, production debugging and performance diagnostics, and mobile application development.