Difference between revisions of "ThreadScope Tour/Zoom"

From HaskellWiki
Jump to navigation Jump to search
m
(remove bookmarking and focus on the GC stuff)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
== Objectives ==
+
== Objective ==
   
* Use zooming to reveal more detailed performance issues
+
Use zooming to reveal more detailed performance issues
* Save your place with the bookmark feature and zoom back out
 
   
 
== Steps ==
 
== Steps ==
Line 18: Line 17:
   
 
<p>Notice how different the profile looks close up. What do you see? At closer inspection what looks like a moderate amount of activity is actually intense bursts using both cores, with pauses in between.</p></li>
 
<p>Notice how different the profile looks close up. What do you see? At closer inspection what looks like a moderate amount of activity is actually intense bursts using both cores, with pauses in between.</p></li>
  +
<li><p>While you're zoomed in, observe the link between activity and garbage collection.</p>
<li><p>Save a point in the zoomed-in profile as a bookmark. To do so, click in the graph to move the blue cursor to a spot of your choice.</p>
 
[[Image:ThreadScope-sudoku3-cursor.png|Click!]]
+
[[Image:ThreadScope-sudoku2-gc.png|Activity ceased during garbage collection]]
  +
<p>Understanding your program's performance may require looking at different resolutions, zoomed out to get the overall feel, and sometimes zoomed in to notice finer patterns like these tiny bursts of work with interleaved garbage collection.</p>
 
 
</li>
<p>Then switch to bookmarks tab. Press the plus button to create the bookmark and click in the labels field to name it.</p>
 
  +
</ol>
[[Image:ThreadScope-bookmark.png|The bookmark tab]]
 
 
[[Image:ThreadScope-bookmarks-label.png|Adding a label]]
 
 
<li>'''TODO''' zoom out again, use bookmarks to help refocus
 
</li></ol>
 
   
 
== Hints ==
 
== Hints ==

Latest revision as of 19:48, 9 December 2011

Objective

Use zooming to reveal more detailed performance issues

Steps

  1. Open the sudoku3 ThreadScope profile created earlier

    threadscope ./sudoku3.eventlog
  2. Notice the initial lack of activity at the very beginning of program execution

    Ramping up

    What's going on there?

  3. Use the zoom in button to explore that space a bit more

    Hint: you can also press +/- on the keyboard

    Zooming in

    Notice how different the profile looks close up. What do you see? At closer inspection what looks like a moderate amount of activity is actually intense bursts using both cores, with pauses in between.

  4. While you're zoomed in, observe the link between activity and garbage collection.

    Activity ceased during garbage collection

    Understanding your program's performance may require looking at different resolutions, zoomed out to get the overall feel, and sometimes zoomed in to notice finer patterns like these tiny bursts of work with interleaved garbage collection.

Hints

  • You can also press +/- on the keyboard to zoom in and out