Xperf Viewer

In the previous Xperf article (part 1), we learned how Xperf is installed and used to collect event trace logs (ETLs). These trace logs contain data that characterizes the problem. The ETL data can be analyzed on the problem system or it can be copied to another workstation where WPT is installed.

The following Xperf command will analyze the data and then use Xperfview.exe to generate graphs and tables:

Xperf tracedata.etl

As the Xperf tool parses the ETL log file, it performs 2 passes at analyzing the data. Once the data is analyzed, Xperf displays a viewer that you can use to study the various graphs. Of particular concern for a storage bottleneck, you would want to focus on the Disk Utilization and the Disk Utilization by Process graphs. In figure 1 below, you can see the Disk I/O graph displays the various I/O counts for read and write operations. Xperf also shows an expandable frame on the left-hand side allowing you to quickly switch between the different graphs.

Each graph will reveal more detailed information as you hover the mouse cursor over a particular spot on the graph. In figure 2 below, you can see how the scan32.exe process is exposed in the following Disk Utilization by Process graph when the mouse is positioned over the red line.

You can quickly zoom in on a particular area of the graph to get more granularity on the performance counters or events. To do so, simply left-click and drag over the portion of the graph you are interested in, and then right-click to select “Zoom To Selection” as seen in figure 3 below. This will create a new graph that is focused on the region of time you selected. To unzoom the graph, just right-click anywhere on the graph and choose Unzoom.