Managing Profile Data Files

Through the functions of the Manage Profile Data dialog, you're able to profile your executables across a series of test cases, store the results of the each run, and view the results for whichever run or combination of runs you're interested in.

This eliminates some of the complexity of dealing with the various profiling tools. For multiple (or incremental) runs, the tcov, gcov, gprof and MSVC profiler data collectors behave differently. With gprof and profiler, the data files are reset each time you run the executable. Therefore, at any point, gmon.out and executable.pdt contain just the profile data for your latest run. With gcov and tcov, the .gcda and .d files are not reset. As you make multiple runs of your executable, the results accumulate.

One of the Manage Profile Data functions enables you to reinitialize all of the tcov data files before executing a test case. This causes the gcov and tcov data files to reflect just the results for the subsequent test runs. In this way, you can track and analyze the coverage associated with the individual test cases. Another function in the dialog saves the current contents of profile data or results files.

Using these functions, you can run a series of test cases, reinitializing tcov data before each run and recording the results after each run. Then, you can use the Manage Profile Data dialog to specify which results you want to view. You're able to view the results for any of the stored runs, either individually or in combination.

There are a number of ways that you might use these capabilities. If you wanted to analyze the impact that particular software changes have on the performance of your code, you could compare the results of the same test case on different versions of the software. Alternatively, you might analyze the completeness of your testing by looking at the combined coverage across a whole series of test cases. Or you might optimize your testing by determining the incremental coverage achieved by specific test cases.