Saving profiling results
Published 28 August 2014
You can save the results of a profiling session in different ways:
Save Session Settings lets you save all the settings of the current profiler session for use in a future profiling session
Save Profiler Results lets you save the results of your profiling session (including the timeline, call tree and all other profiling results views) for future analysis in the ANTS Performance Profiler user interface
- Export lets you export the current profiling results view as an HTML, XML or CSV file
Save Session Settings was called 'Save Project' in previous versions.
Saving session settings
To save the settings you used to profile your application, on the File menu, click Save Session Settings.
Session settings files have the file extension .app8
To load a saved session settings file, on the File menu, click Open Session Settings... The settings screen will be shown, with the settings from your saved session already selected.
ANTS Performance Profiler displays your recent profiling sessions and settings on the startup screen, so you don't need to save the settings every time you want to use reuse the same settings. You may only need to save settings if you regularly run several different profiling sessions.
You can load saved 'projects' from previous versions of ANTS Performance Profiler in the current version.
Saving profiler results
To save the current profiler results, on the File menu, click Save Profiler Results... All profiling results will be saved for the entire time period you profiled, not just the selected region of the timeline.
Profiling results files have the extension .app8results
To load saved results, on the File menu, click Open Profiler Results... The profiling results from your saved session are shown. You can interact with the ANTS Performance Profiler results view as if you had just profiled your application.
You can load saved results from previous versions of ANTS Performance Profiler in the current version.
Opening large results files may take several minutes, during which the UI may appear to freeze. We hope to show progress in a future version of the profiler.
Exporting results to an HTML, XML or CSV file
To export the current profiling results view, on the File menu, click Export, then select the type of file you want to export your results to.
When you export your results, any filters you have applied will not be saved.
If Async mode is enabled in the call tree, results will be saved as if Async mode was disabled. For more information about Async mode, see Async in the call tree.
CSV format is not available for the call tree and call graph view when profiling in the ANTS Performance Profiler user interface. Call tree results can be exported to CSV format when profiling from the command line. For more information about profiling from the command line, see Profiling from the command line (API).
Here's an example of the call tree from profiling a Mandelbrot application that we will use to illustrate the format of XML and CSV results files. This is the call tree results view with CPU time selected (i.e. excluding time elapsed while a thread was blocked)
This is the call tree results view with Wall-clock time selected (i.e. showing total time elapsed, including blocking):
After exporting to an XML file, the Mandelbrot.Form1.DrawMandelbrot()
method looks like this in XML format:
<Method class="Mandelbrot.Form1" name="DrawMandelbrot" PID="7728" has-source="yes"> <HitCount>3</HitCount> <CPU ticks="3893693658" millisecs="1298.0397" percent="28.912" /> <Wallclock ticks="3893772648" millisecs="1298.0660" percent="4.612" /> <WithSelf ticks="168573329" millisecs="56.1907" percent-cpu="0.719" percent-wallclock="0.115" /> </Method>
If the application is profiled from the command line, the call tree can also be exported in CSV format (with headings row). The Mandelbrot.Form1.DrawMandelbrot()
method looks like this in CSV format:
Method type, Class, Method, Hit count, CPU %, CPU milliseconds, CPU ticks, Wallclock %, Wallclock milliseconds, Wallclock ticks, CPU % time with self, Wallclock % time with self, Milliseconds with self, Ticks with self , Mandelbrot.Form1,DrawMandelbrot(), 3, 28.9128149753427, 1298.039706707, 3893693658, 4.6121681679019, 1298.06604003906, 3893772648, 0.71996638783019, 0.115110266291296, 56.1907373464783, 168573329
Spaces have been added between each field to ensure that the lines in this example CSV file wrap.