This topic describes approaches you can use to find out what functions were executed during the application run.
Using Function Trace Profiler
To know what methods were executed during your application execution, use the Function Trace profiler:
-
Run the Function Trace profiler and get results.
-
In the Explorer panel, select the Routines category.
-
Examine the Report panel that lists all routines called during the application execution.
-
Select the desired routine in the Report panel and view the call stack for the selected routine in the Details panel.
The Function Trace profiler also traces and reports the actual sequence of function calls for a thread. To view this information, select the Call Trace category in the Explorer panel and examine the sequence of function calls and call characteristics shown in the Report and Details panels.
Using Performance Profiler
Another way to know what functions were executed during the application run is to use the Performance profiler:
-
Run the Performance profiler and get results.
-
If the Show non-hit routines button is not pressed on the Profiler toolbar (default), then among all of the routines included in the profiling, the Report panel displays only those that were executed during the run (Hit Count > 0).
-
If the Show non-hit routines button is pressed, the Report panel will display all functions that were executed (that is, JIT-compiled). Note that it will even show those functions that were not included in profiling tasks. However, no information on these functions will be available in the panels.
Quick Analysis of Unmanaged Applications
The fastest (but the least accurate) way to know what functions were executed during the application run is to use the Sampling profiler:
-
Run the Sampling profiler and get the results.
-
In the Explorer panel, select the Routines category.
-
Examine the Report panel.
During the profiling, the Sampling profiler takes samples at regular time intervals to determine which routines are being executed in the application. The Report panel lists routines that took at least one sample during the profiling.
-
To get more detailed and accurate information, continue analyzing the application with the Performance or Function Trace profiler as described above.
The Sampling profiler can overlook some “quick” routines that start and complete their run during the intervals between two samples.
You can use the Sampling profiler to explore only unmanaged applications. |
You can also use the Coverage profiler to learn what routines were executed. See Check What Methods Were Executed.
See Also
Function Calls Tracing
Best Practices and How to Tutorials
Check What Methods Were Executed
Function Trace Profiler
Performance Profiler
Sampling Profiler
Coverage Profiler