dotTrace 2024.3 Help

Compare Snapshots

As your application evolves, you need an ability to see how code changes impact performance. For example:

  • inspect differences in execution time of a function before and after code optimisation

  • find out whether the number of function calls differs greatly in two different call stacks

dotTrace helps you keep track of such changes by comparing profiling snapshots.

To compare two snapshots

  1. Open a snapshot you want to compare in dotTrace Viewer (snapshot A).

  2. In Filters | Comparison, click Open snapshot Add a snapshot to comparison.

  3. In the Open Snapshot window, choose the second snapshot for comparison (snapshot B). You can choose a snapshot from the list of available snapshots or open a snapshot .dtp file from disk (use the Choose from Disk button).

  4. In the Comparison filter, select Comparison.

    Snapshots for comparison
  5. Analyze the data:

    • Each filter in the viewer shows time difference: Delta = A - B

    • Negative values shown in green represent improvement in performance.

    • Positive values shown in red represent deterioration of performance.

    • If a function exists in snapshot A but doesn't exist in B, its whole execution time is shown as a green negative value. If a function doesn't exist in snapshot A but appears in B, its time is shown as a red positive value.

    • If you scope to a particular call tree node in one of the snapshots, do the same in the second snapshot. Otherwise, the resulting comparison data will be hard to interpret.

    • All filters keep working in the comparison mode. For example, if you select a subsystem, Call Tree will show you difference in execution time only for the functions belonging to this particular subsystem.

      Comparison by filter
    • You can swap snapshots A and B using the Swap Swap snapshots button in the Comparison filter.

Last modified: 22 March 2024