The timeline control in JustTrace .NET performance and memory profiler offers a powerful way to view snapshots tailored to the view you wish to see of your application’s execution lifecycle. JustTrace collects information for performance and memory usage, and the timeline’s usage differs depending on the profiler used.

Performance Snapshots

After collecting performance data, click on Timeline to select the period to view.

JustTrace timeline image

JustTrace will show a dockable window containing the timeline control along with information on CPU usage and the time in which the application ran.

JustTrace timeline image

This makes it easy to find a period to analyze the performance data. You may choose the total execution time, or perhaps you are more interested in a particular event along the timeline. Simply highlight the area by selecting it with the left mouse button.

JustTrace timeline

Do you notice the gray dot in the middle? Click and hold it to move the selection.

JustTrace timeline

 A handy feature for large execution times is zoom. Simply use the sliders on the bottom of the timeline control to zoom in and out. Notice how the selected period remains darkened in the total view used for zooming.

JustTrace timeline

Finally, click the Show snapshot button to display the performance data collected in this period.

Comparison Mode

Click the Comparison Mode button to open a second timeline in the dockable window. You can then select another period to compare with the first.

JustTrace timeline

Click Compare when you are finished to show the comparison between the two periods.

Memory Snapshots

Unlike the performance profiler, the memory profiler does not record events continuously. Instead, click the Get Snapshot button when you reach points you would like to view. After you have finished collecting snapshots, click the timeline control to view them.

JustTrace timeline

With memory snapshots, JustTrace 2 in 1 .NET profiler displays the amount of memory used and the time in which the application executed.
JustTrace timeline

The arrows indicate when JustTrace collected snapshot data due to either the Get Snapshot or Kill & Get actions. Selecting the arrow highlights it, and JustTrace will display the snapshot information for the indicate time when you click Show snapshot.

The zoom feature works the same as it does in performance snapshots.

Comparison Mode

Comparison mode for memory snapshots is analogous to the same mode for performance snapshots. The primary difference is the selection of snapshot indicators rather than selecting time ranges.

JustTrace timeline

Ménage à Snapshots

JustTrace stores snapshots, and you can access them through the Open Snapshots option on the main screen. Select as many as you may want to compare of the same type, then click the Open Snapshots button.

JustTrace timeline

This brings you to a new session screen. Click the timeline control. You may notice that the combo box is now active. Use the combo box to select the snapshot data for viewing. This is far more powerful in Comparison Mode, since you can select time ranges from different sessions.

JustTrace timeline

Conclusion

Having both narrow and wide data makes it easier to find causes for performance and memory issues. The snapshot timeline in JustTrace is a powerful asset in selecting what you need. Let us know what you think of it in the JustTrace Feedback Portal!

JustTrace banner
About the Author

Chris Eargle

is a Microsoft C# MVP with over a decade of experience designing and developing enterprise applications, and he runs the local .NET User Group: the Columbia Enterprise Developers Guild. He is a frequent guest of conferences and community events promoting best practices and new technologies. Chris is a native Carolinian; his family settled the Dutch Form region of South Carolina in 1752. He currently resides in Columbia with his wife, Binyue, his dog, Laika, and his three cats: Meeko, Tigger, and Sookie. Amazingly, they all get along... except for Meeko, who is by no means meek.

Comments

Comments are disabled in preview mode.