Difference between revisions of "ThreadScope Tour"

From HaskellWiki
Jump to navigation Jump to search
(→‎Basic skills: remove extraneous p tags from li)
Line 28: Line 28:
   
 
<ol start="7" style="list-style-type: decimal;">
 
<ol start="7" style="list-style-type: decimal;">
<li><p>[[ThreadScope_Tour/SparkOverview|Spark overview]]</p>
+
<li>[[ThreadScope_Tour/SparkOverview|Spark overview]]
 
<ul>
 
<ul>
 
<li>[[ThreadScope_Tour/RTS|GHC RTS flags]]: a subset of flags relevant to ThreadScope</li>
 
<li>[[ThreadScope_Tour/RTS|GHC RTS flags]]: a subset of flags relevant to ThreadScope</li>
 
<li>[[:Image:spark-lifecycle.png|Spark lifecycle]]: Lifecycle of a spark</li></ul>
 
<li>[[:Image:spark-lifecycle.png|Spark lifecycle]]: Lifecycle of a spark</li></ul>
 
</li>
 
</li>
<li><p>[[ThreadScope_Tour/Spark|Spark rates]]: study spark creation/conversion</p></li>
+
<li>[[ThreadScope_Tour/Spark|Spark rates]]: study spark creation/conversion</li>
<li><p>[[ThreadScope_Tour/Spark2|Spark rates 2]]: spark debugging continued</p></li>
+
<li>[[ThreadScope_Tour/Spark2|Spark rates 2]]: spark debugging continued</li>
 
</ol>
 
</ol>
   

Revision as of 16:36, 7 December 2011


A guided tour of ThreadScope

In this tutorial, we'll be working through concrete examples on using ThreadScope to debug the performance of parallel programs.

We aim to keep each module in the tutorial self-contained, so you can either follow the progression suggested or jump to just the sections we need.

Note that you will need:

  • ThreadScope 0.2.1 or higher
  • GHC 7.4 or higher. You could try earlier versions, but more advanced features such as spark events will not available

Getting Started

  1. Installation: install ThreadScope and run a sample trace
  2. Hello world: Run ThreadScope on a small test program

Basic skills

  1. Initial statistics: collect some simple statistics
  2. Profile: examine the profile for a real program
  3. Profile 2: examine the profile for an improved program
  4. Zoom: zooming and bookmarking

Digging into a program with spark events

  1. Spark overview
  2. Spark rates: study spark creation/conversion
  3. Spark rates 2: spark debugging continued

Reference

Planned

  1. Trace: custom events
  2. Consolidate: tease out the sequential parts of code