I’ve deployed CVCollectionCmd. How can I Visualize the Traces I Collected?

Chances are that you deployed CVCollectionCmd on a machine without Visual Studio 11 in order to collect traces for use with the Concurrency Visualizer.  To view the traces in the Concurrency Visualizer, it’s simply a matter of bringing the trace files back to the machine with Visual Studio 11.  However, there are a few things you need to know.

Be sure to Analyze the Collected Trace Before Moving them to Another Machine

After collecting the trace, analyze the trace on the same machine where it was collected.  If you analyze the trace on another machine, some call stacks may not resolve.  Use the Analyze command.

Copy the Files to the Machine with Visual Studio 11

After analysis completes there will be four files associated with the trace:

  1. CVTrace file – This is the main file associated with your trace.  Visual Studio 11 recognizes this file and will open it.
  2. CVData file – This file is generated after analysis and contains the processed data associated with the trace.
  3. kernel.etl – This file contains raw trace data associated with kernel events.
  4. user.etl – This file contains raw trace data associated with user-mode events.

If you collected the trace by launching an exe or attaching to a specific process, you only need to bring files 1 and 2 back to the machine with Visual Studio 11.  If you collected a system-wide trace (by using the Attach command without a process specified), then you need to bring all of the files back to the machine with Visual Studio 11.  This is because with a system-wide trace, you need to perform analysis on each new process you want to examine.  For analysis, you need files 3 and 4.

Open the CVTrace File From Visual Studio 11

Once  you’ve copied the necessary files back to the machine with Visual Studio 11, you merely need to open the CVTrace file.  You can do this using the File->open dialog in Visual Studio 11.  You can also use the Open Trace dialog under the Concurrency Visualizer menu:

image

James Rapp – Parallel Computing Platform