JustTrace makes profiling your application easy. Just follow these four steps and you will soon be on your way to identifying and removing memory leaks and performance issues. Keep in mind, profiling is best done regularly so you can detect unusual behavior early and avoid problems before they manifest. Follow these four steps to profile your applications with JustTrace: Assess, Acquire, Analyze, and Act.
Step 1: Assess
Determine what kind of issue you have. Is your application’s memory continuously growing while running? You have a memory leak. Do some parts of your application take too long to run? You have a performance issue.
Identifying your issue will help you take the correct approach when profiling your application with JustTrace, and it will guide you in looking for the cause of the problem.
Step 2: Acquire
Now that an assessment has been made, the next step is to acquire data to find potential issues or confirm the application runs as expected.
Step 2a: Download JustTrace
First, you are going to need a tool. If you have not already downloaded JustTrace, I suggest you do so now. You can try JustTrace free for 30 days. Best of all, it can help you find and fix both performance and memory management issues.
Step 2b: Install JustTrace
This step is standard. Install JustTrace as you would any piece of software. By default, it will install the integration components to both Visual Studio 2010 and 2012 if they are installed. The standalone tool works with any .NET application from version 2.0 to 4.5.
Step 2c: Run JustTrace Standalone
You can access JustTrace directly through shortcut placed on your desktop. If it is not there, or you removed it, press Start and type JustTrace to find the program in your Programs list.
Step 2d: Select Profiler Type
Depending on the issue you identified in step 1, you will need to select Improve Performance or Fix Memory Problems.
Step 2e: Select Application
JustTrace works with a variety of application types. Whether you are profiling for performance or for memory, these options are the same. You can have it attach to a local executable, a running application, Silverlight applications, ASP.NET applications hosted in either IIS or Visual Studio Development Server, and even Windows Services.
Step 2f: Run the Application with Profiling
You will need to choose options based upon your application type. For example, a standalone application requires the path to the executable, and web applications need the web address. After selecting this, click run at the bottom-right of the screen.
Step 2g: Get Snapshot
If you are running a performance profile, go through the application to record all of its method calls and timings. End the program or click Kill Profilee when you are done. You will notice the CPU Graph updated while you were running. Click this graph and select the period you will analyze in the Timeline window. Then, click Show snapshot.
If you are running the memory profiler, you will need to collect a snapshot while running the application. If you are finished profiling, click Kill & Get.
Step 3 Analyze
Part 1: Performance
Your performance snapshot contains several panels of useful information to help you find issues. If you are unsure where to start, look at Hot Spots for potential issues. If you are interested in a particular method, use Method List.
From either of these views, you have the option to view the method’s calls, its callers, or its source code.
Part 2: Memory
The default view for a memory snapshot is the Snapshot Summary. This view shows you important information such as objects in various stages of garbage collection, objects suspected of memory leaks, and objects consume the largest amount of memory.
Other views provide information that is more detailed. Here is a look at the Largest Memory Retainers.
You may be interested in objects keeping one of these larger objects alive. Click the Root Paths button to see a visualization of the object graph.
Notice that a new view is available on the Control panel. JustTrace makes it easy to navigate between various representations of your application’s objects to discover the cause of your memory management issues.
Step 4 Act
With your analyses in hand, it is time to make changes to your application to improve its performance or memory management. Make your changes and profile again to see if your issue has been resolved.
Conclusion
Finding and correcting performance and memory issues can be daunting. Telerik JustTrace makes it easy. Following the steps outlined, you can begin profiling your application with JustTrace to make your applications more performant and stable.
About the author
Chris Eargle
Chris is a technical evangelist for JustTrace and a C# MVP. Having seen too many leaky applications, he decided it was time to stop reacting and start profiling upfront. The result: more time for happy hour.