ThreadScope Tour
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
- Installation: install ThreadScope and run a sample trace
- Hello world: Run ThreadScope on a small test program
Basic skills
Initial statistics: collect some simple statistics
Profile: examine the profile for a real program
Profile 2: examine the profile for an improved program
Zoom: zooming and bookmarking
Digging into a program with spark events
-
- GHC RTS flags: a subset of flags relevant to ThreadScope
- Spark lifecycle: Lifecycle of a spark
Spark rates: study spark creation/conversion
Spark rates 2: spark debugging continued
Spark sizes: spark debugging continued
Reference
- Downloads: examples used in this tutorial
Planned
- Trace: custom events
- Consolidate: tease out the sequential parts of code