2023-03-31, 10:03 UTC
by /home/matt/eventlog2html/dist-newstyle/build/x86_64-linux/ghc-9.4.3/eventlog2html-0.9.3/x/eventlog2html/noopt/build/eventlog2html/eventlog2html /home/matt/ghc-memory/ghc.eventlog +RTS -lT
2023-03-31, 10:03 UTC
by /home/matt/eventlog2html/dist-newstyle/build/x86_64-linux/ghc-9.4.3/eventlog2html-0.9.3/x/eventlog2html/noopt/build/eventlog2html/eventlog2html /home/matt/ghc-memory/ghc.eventlog +RTS -lT
Process memory usage (as reported by the OS) should correspond roughly to the heap size, except for data allocated through the FFI (and the RTS also calls malloc() itself in a few places).
When heap profiling is enabled, blocks size and live bytes will typically differ by the size of the nursery. For understanding the relationship between blocks size and live bytes, this blog post contains more information.
When heap profiling is not enabled, live bytes will be updated only on a major GC, but heap size and blocks size are updated more frequently. (Enabling heap profiling causes more frequent major GCs to collect heap samples.)
This view can also be useful in identifying fragmentation. A very badly fragmented heap will have low live bytes but much higher blocks size.
This eventlog was generated without heap profiling.
To create a heap profile, you need to run the program with one of the +RTS -h... options. The -hT (closure type) and -hi (info table) heap profiling options are available for all programs. If you compile with profiling enabled, more options are available.
See the GHC user's guide on profiling memory usage for more information.
The cost centres view is available only when executing the program with +RTS -hc.
No detailed data to display.
1104004872
10.11
Label | FVs | Args | Allocs | Allocs (%) | Allocd | Allocd # | Entries | Allocs/Entries | Allocd #/Entries |
---|---|---|---|---|---|---|---|---|---|
doOneHtml{v r3dC} (Main) (fun) | SLL | 72 | 0 | 0 | 0 | 1 | 72 | None | |
sat_s62b{v} (Main) (fun) in r3dC | SL | M | 32 | 0 | 0 | 0 | 1 | 32 | None |
sat_s61U{v} (Main) (fun) in r3dC | S | 64 | 0 | 0 | 0 | 1 | 64 | None | |
sat_s62X{v} (Main) (fun) | M | 136 | 0 | 0 | 0 | 1 | 136 | None | |
sat_s62I{v} (Main) (fun) in s62X | S | L | 40 | 0 | 0 | 0 | 1 | 40 | None |
Eventlog.Args.files{v r8} (fun) | S | 0 | 0 | 0 | 0 | 1 | 0 | None | |
Eventlog.Args.userColourScheme{v rk} (fun) | S | 0 | 0 | 0 | 0 | 1 | 0 | None | |
Eventlog.Args.traceEvents{v rj} (fun) | S | 0 | 0 | 0 | 0 | 109 | 0 | None | |
Eventlog.Args.json{v rc} (fun) | S | 0 | 0 | 0 | 0 | 1 | 0 | None | |
Eventlog.Args.noIncludejs{v re} (fun) | S | 0 | 0 | 0 | 0 | 1 | 0 | None | |
Eventlog.Args.heapProfile{v ra} (fun) | S | 0 | 0 | 0 | 0 | 1 | 0 | None | |
Eventlog.Args.nBands{v rd} (fun) | S | 0 | 0 | 0 | 0 | 1 | 0 | None | |
sat_s29V{v} (Eventlog.Args) (fun) | EEIMEEEEESMLLML | 128 | 0 | 0 | 0 | 1 | 128 | None | |
sat_s29F{v} (Eventlog.Args) (fun) | S | 16 | 0 | 0 | 0 | 1 | 16 | None | |
Eventlog.Data.generateJsonData{v rMT3} (fun) | SS | 752 | 0 | 0 | 0 | 1 | 752 | None | |
Eventlog.Data.generateJsonValidate{v rMT4} (fun) | >LS | 56 | 0 | 0 | 0 | 1 | 56 | None | |
sat_sN1a{v} (Eventlog.Data) (fun) in rMT4 | S> | S | 112 | 0 | 0 | 0 | 1 | 112 | None |
sat_sN0N{v} (Eventlog.Data) (fun) in sN1a | T | 16 | 0 | 0 | 0 | 1 | 16 | None | |
Eventlog.Types.hCount{v r8aV} (fun) | S | 0 | 0 | 0 | 0 | 2 | 0 | None | |
Eventlog.Types.hHeapProfileType{v r8aX} (fun) | S | 0 | 0 | 0 | 0 | 1 | 0 | None | |
Eventlog.Types.shortDescription{v r8aK} (fun) | S | 0 | 0 | 0 | 0 | 1 | 0 | None | |
Eventlog.Types.profTickySamples{v r8bw} (fun) | S | 0 | 0 | 0 | 0 | 1 | 0 | None | |
Eventlog.Types.profTraces{v r8bz} (fun) | S | 0 | 0 | 0 | 0 | 1 | 0 | None | |
parseFrame{v rl5l} (Eventlog.Total) (fun) | S | 192 | 0 | 0 | 0 | 2 | 96 | None | |
sat_slsQ{v} (Eventlog.Total) (fun) in rl5l | S | 64 | 0 | 0 | 0 | 2 | 32 | None | |
Eventlog.Total.total{v rkF7} (fun) | L | 192 | 0 | 0 | 0 | 1 | 192 | None | |
prune{v rm7b} (Eventlog.Prune) (fun) | ISM | 296 | 0 | 0 | 0 | 1 | 296 | None | |
bound{v rm7c} (Eventlog.Prune) (fun) | I | 0 | 0 | 0 | 0 | 1 | 0 | None | |
Eventlog.Prune.pruneBands{v rm4L} (fun) | S | 48 | 0 | 0 | 0 | 1 | 48 | None | |
Eventlog.Bands.bands{v rwgJ} (fun) | SML | 168 | 0 | 0 | 0 | 1 | 168 | None | |
sat_sxmV{v} (Eventlog.Bands) (fun) in rwgJ | +MLS | S | 232 | 0 | 0 | 0 | 1 | 232 | None |
sat_sxmU{v} (Eventlog.Bands) (fun) in sxmV | +MSL | S | 232 | 0 | 0 | 0 | 1 | 232 | None |
sat_sxmS{v} (Eventlog.Bands) (fun) in sxmU | S | S | 40 | 0 | 0 | 0 | 1 | 40 | None |
sat_sxmR{v} (Eventlog.Bands) (fun) in sxmS | S | S | 24 | 0 | 0 | 0 | 1 | 24 | None |
sat_sxmK{v} (Eventlog.Bands) (fun) in sxmU | +SMS | T | 320 | 0 | 0 | 0 | 2 | 160 | None |
addFrame{v rnCQ} (Eventlog.Events) (fun) | WS | 216 | 0 | 0 | 0 | 1 | 216 | None | |
Eventlog.Events.chunk{v rnvS} (fun) | SL | 96 | 0 | 0 | 0 | 1 | 96 | None | |
sat_sqkN{v} (Eventlog.Events) (fun) in rnvS | S | S | 1744 | 0 | 0 | 0 | 1 | 1744 | None |
sat_sqkM{v} (Eventlog.Events) (fun) in sqkN | T | 320 | 0 | 0 | 0 | 1 | 320 | None | |
sat_sqaF{v} (Eventlog.Events) (fun) in sqkN | S | SS | 37476056 | 3.39 | 0 | 0 | 314488 | 119 | None |
sat_sq0C{v} (Eventlog.Events) (fun) in sqaF | WW | S | 2912096 | 0.26 | 0 | 0 | 16546 | 176 | None |
sat_sq18{v} (Eventlog.Events) (fun) in sqaF | WW | S | 4764960 | 0.43 | 0 | 0 | 16545 | 288 | None |
sat_sq1E{v} (Eventlog.Events) (fun) in sqaF | WW | S | 4764960 | 0.43 | 0 | 0 | 16545 | 288 | None |
sat_sq2a{v} (Eventlog.Events) (fun) in sqaF | WW | S | 22752 | 0 | 0 | 0 | 79 | 288 | None |
sat_sq3k{v} (Eventlog.Events) (fun) in sqaF | S | S | 512 | 0 | 0 | 0 | 1 | 512 | None |
sat_sq3e{v} (Eventlog.Events) (fun) in sq3k | L | 152 | 0 | 0 | 0 | 1 | 152 | None | |
sat_sq2M{v} (Eventlog.Events) (fun) in sq3k | L | 120 | 0 | 0 | 0 | 3 | 40 | None | |
sat_sq3L{v} (Eventlog.Events) (fun) in sqaF | L | S | 192 | 0 | 0 | 0 | 1 | 192 | None |
sat_sq4d{v} (Eventlog.Events) (fun) in sqaF | W | S | 176 | 0 | 0 | 0 | 1 | 176 | None |
sat_sq08{v} (Eventlog.Events) (fun) in sqaF | W | S | 55349888 | 5.01 | 0 | 0 | 314488 | 176 | None |
sat_sqdX{v} (Eventlog.Events) (fun) in sqkN | SSMSM | I | 128 | 0 | 0 | 0 | 1 | 128 | None |
$cfrom{v rz65} (Eventlog.Vega) (fun) | S | 144 | 0 | 0 | 0 | 2 | 72 | None | |
$ctoJSON{v rz6T} (Eventlog.Vega) (fun) | S | 48 | 0 | 0 | 0 | 2 | 24 | None | |
$ctoJSONList{v rz6W} (Eventlog.Vega) (fun) | L | 104 | 0 | 0 | 0 | 1 | 104 | None | |
sat_sza7{v} (Eventlog.Vega) (fun,se) in rz6W | L | >. | 24 | 0 | 0 | 0 | 1 | 24 | None |
$ctoJSONList1{v rz7w} (Eventlog.Vega) (fun) | L | 104 | 0 | 0 | 0 | 1 | 104 | None | |
sat_szbR{v} (Eventlog.Vega) (fun,se) in rz7w | L | >. | 24 | 0 | 0 | 0 | 1 | 24 | None |
$cfrom2{v rz7B} (Eventlog.Vega) (fun) | S | 2388168 | 0.21 | 0 | 0 | 33169 | 72 | None | |
$ctoJSON2{v rz8q} (Eventlog.Vega) (fun) | S | 796056 | 0.07 | 0 | 0 | 33169 | 24 | None | |
$ctoJSONList2{v rz8t} (Eventlog.Vega) (fun) | L | 104 | 0 | 0 | 0 | 1 | 104 | None | |
sat_szdx{v} (Eventlog.Vega) (fun,se) in rz8t | L | >. | 24 | 0 | 0 | 0 | 1 | 24 | None |
Eventlog.Vega.bandsToVega{v rywJ} (fun) | MT | 280 | 0 | 0 | 0 | 1 | 280 | None | |
go{v szfz} (Eventlog.Vega) (fun) in rywJ | S+SII | TL | 208 | 0 | 0 | 0 | 1 | 208 | None |
sat_szfM{v} (Eventlog.Vega) (fun) in szfz | ISS+S | I | 288 | 0 | 0 | 0 | 2 | 144 | None |
Eventlog.Vega.heapToVega{v rywK} (fun) | S | 272 | 0 | 0 | 0 | 1 | 272 | None | |
ds4{v szgB} (Eventlog.Vega) (fun) in rywK | SI | L | 1588320 | 0.14 | 0 | 0 | 16546 | 95 | None |
ds4{v szgn} (Eventlog.Vega) (fun) in rywK | SI | L | 7584 | 0 | 0 | 0 | 80 | 94 | None |
ds4{v szg9} (Eventlog.Vega) (fun) in rywK | SI | L | 1588320 | 0.14 | 0 | 0 | 16546 | 95 | None |
Eventlog.HtmlTemplate.insertColourScheme{v rNrB} (fun) | S | 232 | 0 | 0 | 0 | 1 | 232 | None | |
Eventlog.HtmlTemplate.insertJsonData{v rNrC} (fun) | M | 304 | 0 | 0 | 0 | 1 | 304 | None | |
Eventlog.HtmlTemplate.htmlHeader{v rNrA} (fun) | MMS | 648 | 0 | 0 | 0 | 1 | 648 | None | |
Eventlog.HtmlTemplate.template{v rNrJ} (fun) | SMMMS | 264 | 0 | 0 | 0 | 1 | 264 | None | |
Eventlog.HtmlTemplate.templateString{v rNrK} (fun) | SMMMS | 56 | 0 | 0 | 0 | 1 | 56 | None | |
Label | FVs | Args | Allocs | Allocs (%) | Allocd | Allocd # | Entries | Allocs/Entries | Allocd #/Entries |
2023-03-31, 10:03 UTC
by /home/matt/eventlog2html/dist-newstyle/build/x86_64-linux/ghc-9.4.3/eventlog2html-0.9.3/x/eventlog2html/noopt/build/eventlog2html/eventlog2html /home/matt/ghc-memory/ghc.eventlog +RTS -lT