1{-# LANGUAGE TupleSections #-}
2{-# LANGUAGE ScopedTypeVariables #-}
8import BenchGraph (bgraph, defaultConfig, Config(..), ComparisonStyle(..))
9import Control.Exception (handle, catch, SomeException, ErrorCall)
13 let cfg = defaultConfig
14 { outputDir = "charts"
15 , comparisonStyle = CompareDelta
18 ignoringErr a = catch a (\(_ :: ErrorCall) ->
19 putStrLn "Failed. Skipping.")
20 -- bgraph <input> <output> <field in csv file to be plotted>
21 -- other interesting fields to plot are:
26 ignoringErr $ bgraph "charts/results.csv" "operations" "time" $ cfg
27 { chartTitle = Just "Streamly operations (time)"
28 , classifyBenchmark = \b ->
29 if "compose" `isPrefixOf` b || "/concat" `isSuffixOf` b
31 else Just ("Streamly", last $ splitOn "/" b)
34 ignoringErr $ bgraph "charts/results.csv" "composition" "time" $ cfg
35 { chartTitle = Just "Streamly composition performance (time)"
36 , classifyBenchmark = fmap ("Streamly",) . stripPrefix "compose/"
39 ignoringErr $ bgraph "charts/results.csv" "composition-scaling" "time"
41 { chartTitle = Just "Streamly composition scaling (time)"
42 , classifyBenchmark = fmap ("Streamly",) . stripPrefix "compose-"
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list