Performance and Diagnostics

Platform Health & Diagnostics Tools

Deep Dive Analysis: Why did this dll increase in file size by 50%?

We recently noticed that one of the dlls that we produce had suddenly jumped up in file size. The WinUI Controls library, Microsoft.UI.Xaml.Controls.dll that ships as part of Windows App SDK had ballooned in size in our internal builds. It had suddenly grown from 7 MB to 10.5 MB - approximately a 50% increase in size. What had happened to ...

ETW Trace Processing Fails with Error Code 0x80070032

TL;DR New values in an existing ETW event aren’t supported, and a new version of the Windows Performance Toolkit (WPT) or the Microsoft.Windows.EventTracing.Processing.Toolkit NuGet library is needed to process traces with these events. About this failure We began to receive reports of WPA failing to process traces with this error code in...

Recording Hardware Performance (PMU) Events with Complete Examples

Performance Monitor Unit (PMU) events are used to measure CPU performance and understand workloads CPU characterization. Windows provides a way to collect PMU events through Event Tracing for Windows (ETW). When combined with other ETW events, we can tell a lot more concrete story about the performance. I recently added “Recording Hardware ...

Windows Performance Analyzer – Table & Graph Configurations (Part 1)

In the previous post, we discussed a brief intro into Windows Performance Analyzer (WPA) and its feature set.  WPA can display trace data in a wide array of formats, most of which are pre-configured as presets designed for drilling into specific data points. Here is one for example: WPA's CPU Usage (Sampled) table has a few different ...

Authoring custom profiles – Part 1

This is the first post in a multi-part series about authoring custom profiles for Windows Performance Recorder (WPR.) In a previous post, we have looked at how to start a trace with built-in profiles. The built-in profiles offer wide variety of preset profiles that we can use for different scenarios. There are built-in profiles for CPU ...

Windows Performance Analyzer “WPA” Intro

If you do a search online for WPA, you might find information for protecting your Wi-Fi, but that is a different type of WPA. In the performance & diagnostics space WPA stands for Windows Performance Analyzer, a friendly but intricate UI that allows for developers and analyst to deep dive into performance traces captured on Windows (and...