Text-based interactive GHC .prof viewer
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
docker
img
.gitignore
.travis.yml
CHANGELOG.md
LICENSE
README.md
Setup.hs
cabal.project.freeze.ghc-8.0
cabal.project.freeze.ghc-8.2
cabal.project.freeze.ghc-8.4
stack.yaml
viewprof.cabal

README.md

viewprof

Hackage Hackage-Deps Stackage LTS Stackage Nightly Build Status

viewprof is a text-based interactive GHC .prof viewer.

screenshot

It has three display modes:

  • Aggregate cost centers view: This is the default view. It groups cost centers by their name and module name, like the middle section of .prof files.
  • Call sites view: If you press enter on a cost center, viewprof displays call sites of the cost center you selected. This view tells how much the cost center spent for each call site.
  • Modules view: If you press M, viewprof displays the module level breakdown. This view tells coarse overview of cost attribution.

Installation

stack install viewprof

On Windows

Prerequisites

How to install and launch

git clone git@github.com:maoe/viewprof.git
cd viewprof/docker
docker-machine start
docker build -t viewprof .
.\viewprof.bat path/to/file.prof

Usage

keys action
q or escape quit the current view
j or move focus down         
k or move focus up        
gg move focus to the top
G move focus to the bottom
C display aggregate cost center view
M switch to module breakdown
enter select a cost center and display call sites
t sort by time
a sort by allocation
e sort by # of entries
h or ? show key bindings
i show profile information

Acknowledgement

viewprof was originally meant to be a Haskell port of mkotha/viewprof, which is a text-based .prof viewer written in Common Lisp.