HaskellImplementorsWorkshop/2011/Wortmann

From HaskellWiki
< HaskellImplementorsWorkshop‎ | 2011
Revision as of 03:49, 3 August 2011 by Benl23 (talk | contribs) (New page: = Weaving Source Code into ThreadScope = ''Peter Wortmann'' The task of program optimisation is frustratingly hard, with many possible problem sources to consider. Consequently, good pro...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Weaving Source Code into ThreadScope

Peter Wortmann

The task of program optimisation is frustratingly hard, with many possible problem sources to consider. Consequently, good profiling tools are essential for observing program behaviour and helping the programmer to spot the patterns and underlying reasons.

The ThreadScope profiling utility has already proved invaluable in this task. However, so far it has mainly tracked performance characteristics, with little help for relating them back to the program in question. Our aim is to improve this situation by allowing the user to relate the observed behaviour to locations in the application's source code.

We have extended the GHC tool chain accordingly and are now able to give quick and accurate program profiles, complete with source code references. Our talk will give an overview of the new functionality and its implementation. We will talk about:

- The profiling back-end, which allows sampling code pointers according to different performance characteristics,

- How we manage to retain code associations throughout the various code generation stages of GHC,

- And the user interface we have designed to make the generated profiling data accessible to the user.