Performance and Diagnostics

Platform Health & Diagnostics Tools

Latest posts

SizeBench: a new tool for analyzing Windows binary size
Sep 27, 2021
0
2

SizeBench: a new tool for analyzing Windows binary size

Austin Lamb
Austin Lamb

A new tool called SizeBench has been released to the Microsoft Store, which helps with understanding binary size on Windows. This static analysis tool can break down a binary in many ways, and has heuristic analyses to look for likely sources of waste, and this blog post goes on a tour of what the tool can do.

WPA: Table & Graph Configurations (Part 2)
Jun 28, 2021
0
0

WPA: Table & Graph Configurations (Part 2)

Tristan Gibeau
Tristan Gibeau

In Part 1, we discussed the different types of columns options available in WPA's table views and how those views can be configured. This blog will continue the series by digging into how to configure columns for different graph styles that can show numeric aggregations, time, and hierarchical data: Graphing Overview Before we dive into how to configure the tables and graphs, we should do a quick introduction to the Group & Graph bars in WPA's tables. Any column in the Data Area or Graphing Element Area can be aggregated (see Part 1 - Aggregation). Aggregated columns are graphed wh...

Setting up an autologger with WPR
Jun 25, 2021
2
1

Setting up an autologger with WPR

Sowoon Pyo
Sowoon Pyo

WPR supports configuring an autologger. Setting up the autologger and collecting the autologger trace is as easy as starting/stopping the trace. This article introduces how to start, stop, and cancel the autologger as well as export the autologger registry keys.

Introducing EcoQoS
Apr 21, 2021
1
0

Introducing EcoQoS

Raymond Li
Raymond Li

EcoQoS is a new Quality of Service (QoS) level introduced to Windows that developers can now opt-in to run their work efficiently, leading to better energy efficiency/increased battery life, reduced fan noise and power/thermal throttling.

WPR fails to start, insufficient system resources?
Mar 31, 2021
2
1

WPR fails to start, insufficient system resources?

Sowoon Pyo
Sowoon Pyo

From time to time, I get questions about insufficient system resource error (0x800705aa) when starting the trace using WPR. The error can be frustrating, especially when there is enough memory and storage space left on the system. Some people try to solve the issue by increasing the system resources such as killing some apps and services. It does not help. I agree. It is frustrating to see generic error messages like this which can mean many things. Let us find out what causes this error and how to resolve the situation. Cases where WPR throws ERROR_NO_SYSTEM_RESOURCES error This insufficient system resource er...

Controlling the event session name with the instance name
Jan 27, 2021
3
1

Controlling the event session name with the instance name

Sowoon Pyo
Sowoon Pyo

In this post, I explained what the session name is in ETW and how to set the session name through WPR with the instancename option.

Windows Performance Analyzer – Table & Graph Configurations (Part 1)
Jan 15, 2021
1
0

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

Tristan Gibeau
Tristan Gibeau

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 presets, each reconfigures the view of both table and graph data. This blog post is the first of a multi-part series that goes into detail on how to configure the table and graph views to create your own presets: Column Options Depending on the column's da...

Authoring Custom Profiles – Part 2
Dec 10, 2020
0
2

Authoring Custom Profiles – Part 2

Sowoon Pyo
Sowoon Pyo

In this post, we enhance the simple custom profile for WPR by adding the system tracing session. Because kernel events provide critical information about processes, threads, modules, and more, collecting the system events greatly extends your ability to analyze traces and diagnose issues.

Authoring custom profiles – Part 1
Nov 10, 2020
0
2

Authoring custom profiles – Part 1

Sowoon Pyo
Sowoon Pyo

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 usage, Networking I/O activity, VirtualAlloc usage, Xaml activity, and many more. However, none of the built-in profiles will collect any custom instrumentation you may have added to your code. To record a trace capturing your specific events you will need to author a custom pro...