

# Exploring visualization data
<a name="working-with-visualizations-exploring"></a>

CodeGuru Profiler makes it easy to explore visualization data. You can pause over frames to see information about methods, zoom in on a frame to see more context, and inspect a frame to see the data in an inspect visualization.

**Topics**
+ [Choosing my code in visualizations](working-with-visualizations-choosing-my-code.md)
+ [Pausing over a frame](working-with-visualizations-pause.md)
+ [Zooming in on a frame](working-with-visualizations-zoom.md)
+ [Resetting zoom in a visualization](working-with-visualizations-reset.md)
+ [Inspecting a frame](working-with-visualizations-inspect.md)
+ [Understanding the dollar estimate of the CPU cost for frames](working-with-visualizations-additional-info.md)

# Choosing my code in visualizations
<a name="working-with-visualizations-choosing-my-code"></a>

CodeGuru Profiler differentiates your code in the overview visualization, so you can quickly identify the methods you are working on. 

The blue portion of the flame graph highlights your code. The green portion of the graph highlights other code that your application uses, such as libraries and frameworks.

![\[Image: Stack traces in overview 1.\]](http://docs.aws.amazon.com/codeguru/latest/profiler-ug/images/mycode.png)


You can change the coloring by manually selecting which package name you want CodeGuru Profiler to identify as your code.

**To view your code**

1. Choose **Actions**.

1. Choose **Select my code**.

1. Search for the profile namespace that you want to view. The namespaces are sorted based on how much of the overall profiling data they represent.

# Pausing over a frame
<a name="working-with-visualizations-pause"></a>

One of the easiest ways to begin exploring visualization data is by pausing over the visualization. When you pause over a frame, all frames with the same function name are highlighted. This makes it easy to see where and how often the function is called. 

You can also see details about the function. CodeGuru Profiler displays the name of the function, how much time it has run on the CPU in that stack frame, and the sample time spent in the selected thread states. 

# Zooming in on a frame
<a name="working-with-visualizations-zoom"></a>

Clicking a frame zooms in on the function. The frame becomes the new "base" of the visualization. The visualization shows callees of the selected function. Only the functions in the call chain leading to the call of the selected function are displayed. 

You can zoom in on any visible frame.

To zoom back out, choose **ALL**. In a hotspots visualization, **ALL** is located at the top of the visualization. In an overview visualization, it's at the bottom. 

# Resetting zoom in a visualization
<a name="working-with-visualizations-reset"></a>

You can zoom in to stack frames to view details. To return to the top-most view, you can reset the zoom. 

**To reset the visualization**
+ On the **Profiling group detail** page, choose **Actions**, and then choose **Reset zoom**. 

# Inspecting a frame
<a name="working-with-visualizations-inspect"></a>

You can inspect frames that appear in many places in a visualization. This can happen when your application code has a common set of shared functions. 

For example, if you have code that compresses data, you might call it from dozens of functions. If you inspect the compress function, you can see the parent (callers) and children (callee) functions at a glance. 

**To inspect a frame**

1. On the **Profiling group detail** page, pause over the frame you want to inspect on the visualization. 

1. Open the context (right-click) menu, and then choose **Inspect frame**. 

# Understanding the dollar estimate of the CPU cost for frames
<a name="working-with-visualizations-additional-info"></a>

Amazon CodeGuru Profiler provides an estimated dollar value for the active CPU cost of a frame. The value is an estimation that can help you understand where your optimization efforts will be most valuable. 

To view a frame's dollar estimate, pause over the frame. When you pause over other frames, you see a dollar value estimation that's based on that frame's portion of the total CPU time.

**Note**  
This estimated value does not represent your monthly bill. 

The estimated dollar value shown on the **ALL** frame represents the yearly cost of the compute fleet seen during profiling. This is based on the on-demand AWS compute pricing in the AWS Region of your profiling group. 

To view information about your compute fleet, choose **Actions**, then choose **Additional proﬁling data information**.