viewprof

Text-based interactive GHC .prof viewer

https://github.com/maoe/viewprof

Version on this page:0.0.0.26
LTS Haskell 14.27:0.0.0.32
Stackage Nightly 2019-09-21:0.0.0.31
Latest on Hackage:0.0.0.33

See all snapshots viewprof appears in

BSD-3-Clause licensed by Mitsutoshi Aoe
Maintained by Mitsutoshi Aoe
This version can be pinned in stack with:viewprof-0.0.0.26@sha256:9d4f8fd77d93fb5f83307210cc9945560a408b9cfd2cc6c41ffb011d84ecfb6b,1306

Module documentation for 0.0.0.26

There are no documented modules for this package.

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 [email protected]: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.

Changes

Revision history for viewprof

0.0.0.26 - 2018-12-20

  • Relax upper version bound for brick
  • Test with GHC 8.6.3

0.0.0.25 - 2018-12-04

  • Relax upper version bound for brick

0.0.0.24 - 2018-11-15

  • Add support for GHC 8.6
    • Relax upper version bounds for base, vector-algorithms, and vty
    • Tighten lower version bound for brick to guide the dep solver

0.0.0.23 - 2018-09-07

  • Relax upper version bounds for brick and vty

0.0.0.22 - 2018-08-08

  • Relax upper version bounds for brick

0.0.0.21 - 2018-07-31

  • Relax upper version bounds for brick

0.0.0.20 - 2018-07-30

  • Relax upper version bounds for vty

0.0.0.19 - 2018-07-13

  • Relax upper version bounds for brick and vty

0.0.0.18 - 2018-07-07

  • Relax upper version bounds for lens and containers

0.0.0.17 - 2018-05-09

  • Relax upper version bounds for brick

0.0.0.16 - 2018-04-02

  • Relax upper version bound for brick

0.0.0.15 - 2018-03-21

  • Relax upper version bounds for base, vty and brick

0.0.0.14 - 2018-03-06

  • Relax upper version bounds for brick, lens and vty

0.0.0.13 - 2018-01-22

  • Relax upper version bound for brick
  • Better argument handling (#7 and #9)

0.0.0.12 - 2017-12-12

  • Relax upper version bound for vty

0.0.0.11 - 2017-11-07

  • Relax upper version bound for brick

0.0.0.10 - 2017-10-11

  • Relax upper version bound for brick

0.0.0.9 - 2017-10-07

  • Relax upper version bounds for vty and brick

0.0.0.8 - 2017-08-09

  • Relax upper version bound for vty and brick

0.0.0.7 - 2017-07-31

  • Relax upper version bound for base

0.0.0.6 - 2017-07-21

  • Relax upper version bound for vty

0.0.0.5 - 2017-07-10

  • Relax upper version bound for brick
  • Add Docker support on Windows

0.0.0.4 - 2017-06-28

  • Relax upper version bound for brick

0.0.0.3 - 2017-06-12

  • Relax upper version bound for brick

0.0.0.2 - 2017-02-14

  • Update ghc-prof to 1.4.0

0.0.0.1 - 2017-01-25

  • Relax upper version bounds for vty and brick

0.0.0 - 2017-01-20

  • Initial release