Category Archives: Documentation

Exporting Arbitrary Data from xperf ETL files

The 8.1 and above versions of xperf/WPA/WPT comes with a tool called wpaexporter. This tool works as promised and lets you export arbitrary summary tables to .csv files, thus allowing for automated analysis of xperf traces. Advertisements

Posted in Documentation, Performance, xperf | Tagged , , , | 9 Comments

The Lost Xperf Documentation–Disk Usage

As I’ve lamented previously, the documentation for xperf (Windows Performance Toolkit) is a bit light. The names of the columns in the summary tables can be exquisitely subtle, and I have never found any documentation for them. But, I’ve talked … Continue reading

Posted in Documentation, Performance, xperf | Tagged , | 20 Comments

The Lost Xperf Documentation–CPU Usage (Precise)

As I’ve mentioned previously, the documentation for xperf (Windows Performance Toolkit, also known as ETW) is pretty weak. In this post I’m going to attempt to explain the meaning of the extremely subtle and non-obvious columns in the CPU Usage … Continue reading

Posted in Documentation, Performance, Programming, xperf | Tagged , , , | 33 Comments

The Lost Xperf Documentation–CPU sampling

Xperf (Windows Performance Toolkit, also known as ETW) is a powerful tool for investigating performance issues, however it is a challenging tool to use. Some of this difficulty comes from intrinsic complexity – in order to fully investigate thread scheduling … Continue reading

Posted in Documentation, Performance, Programming, xperf | Tagged , , , | 22 Comments

Dangerous Documentation Part 2–Printing Strings

The printf family of functions encompasses a vast range of possibilities. Printing to a file or to memory, with or without locale specified, ‘n’ variants, ‘v’ variants, ‘c’ variants, ‘_s’ variants, wide-character variants – it’s an exponential explosion of complexity. … Continue reading

Posted in Code Reliability, Documentation, Programming, Visual Studio | 5 Comments

Dangerous Documentation Part 1–Copying Strings

The standard C runtime library (CRT for short) contains a lot of dangerous functions. Functions such as strcpy can easily lead to buffer overruns and security exploits. Functions such as strncpy can easily end up not null-terminating the destination buffer … Continue reading

Posted in Code Reliability, Documentation, Programming, Visual Studio | 8 Comments