-
Recent Posts
Categories
- AltDevBlogADay
- Bugs
- Chromium
- Code analysis
- Code Reliability
- Commuting
- Computers and Internet
- Debugging
- Documentation
- Drinks
- Environment
- Floating Point
- Fractals
- Fun
- Gaming
- Investigative Reporting
- Linux
- Math
- memory
- Performance
- Programming
- Quadratic
- Rants
- Security
- Symbols
- Travel
- uiforetw
- Uncategorized
- Unicycling
- Visual Studio
- WLPG
- Xbox 360
- xperf
Follow me on Twitter
My TweetsMeta
Category Archives: Documentation
Windows Performance Analyzer, From Store or SDK
ETW is the best way to analyze performance on Windows, and Windows Performance Analyzer (WPA) has been the preferred tool for analyzing ETW traces for ten years now, generally obtained either by running UIforETW or by getting it from the … Continue reading
Heap Snapshots–Tracing All Heap Allocations
I’ve recently started using heap snapshots on Windows to track heap allocations. I was able to use heap snapshots to record call stacks for all outstanding allocations in Chrome’s browser process over a full two weeks, letting me account for … Continue reading
Posted in Documentation, Performance, Programming, uiforetw, xperf
Tagged heap snapshots, memory
23 Comments
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.
Posted in Documentation, Performance, xperf
Tagged documentation, wpa, wpaexporter, xperf
16 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
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 CPU scheduling, documentation, summary tables, xperf
32 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 CPU sampling, documentation, summary tables, xperf
24 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