ghc-events-analyze: Analyze and visualize event logs
ghc-events-analyze is a simple Haskell profiling tool that uses GHC's eventlog system. It helps with some profiling use cases that are not covered by the existing GHC profiling modes or tools. It has two major features:
While ThreadScope shows CPU activity across all your cores, ghc-events-analyze shows CPU activity across all your Haskell threads.
It lets you label periods of time during program execution (by instrumenting your code with special trace calls) and then lets you visualize those time periods or get statistics on them.
It is very useful for profiling code when ghc's normal profiling mode is not available, or when using profiling mode would perturb the code too much. It is also useful when you want time-profiling information with a breakdown over time rather than totals for the whole run.
The blog post Performance profiling with ghc-events-analyze describes the motivation in more detail.
|Versions [RSS] [faq]||0.2.0, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.2.6, 0.2.7, 0.2.8 (info)|
|Dependencies||base (>=4.5 && <4.10), containers (==0.5.*), diagrams-lib (>=1.3 && <1.5), diagrams-svg (>=1.1 && <1.5), filepath (>=1.3 && <1.5), ghc-events (==0.4.*), lens (>=3.10 && <4.16), mtl (>=2.2.1 && <2.3), optparse-applicative (>=0.11 && <0.14), parsec (==3.1.*), SVGFonts (>=1.5 && <1.7), template-haskell, th-lift (>=0.6 && <0.8), transformers (>=0.3 && <0.6) [details]|
|Copyright||2013-2014 Well-Typed LLP|
|Author||Edsko de Vries, Duncan Coutts, Mikolaj Konarski|
|Revised||Revision 1 made by EdskoDeVries at 2017-02-14T07:24:00Z|
|Category||Development, Profiling, Trace|
|Source repo||head: git clone https://github.com/edsko/ghc-events-analyze|
|Uploaded||by EdskoDeVries at 2016-10-04T03:51:13Z|
|Downloads||4849 total (41 in the last 30 days)|
|Rating||2.0 (votes: 1) [estimated by Bayesian average]|
Docs not available [build log]
Last success reported on 2016-11-16 [all 3 reports]
- ghc-events-analyze-0.2.4.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.