File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ # Methods
2+
3+ There are 2 methods of measuring accurate haskell performance.
4+
5+ ## Eventlog method
6+
7+ __ Pros__ :
8+
9+ - Enables us to perform extensive analisys.
10+ - We can understand the state of the system completely at any given time.
11+ - We can make more elaborate windows.
12+ - We can see all the other threads in a given window.
13+ - The windows are not confined to a single thread.
14+ - Relatievely less invasive change in the RTS.
15+
16+ __ Cons__ :
17+
18+ - Overhead of measurement is more.
19+ - Collecting metrics while the app is running in production is not straight.
20+ forward and requires more moving parts.
21+
22+ ## ThreadCPUTime primop method
23+
24+ __ Pros__ :
25+
26+ - Low measurement overhead.
27+ - Collecting metrics in production is straight forward.
28+
29+ __ Cons__ :
30+
31+ - Relatively more invasive.
32+ - Very simple analisys. Relative analisys isn't possible to understand the system.
33+
34+ __ Implementation detail__ :
35+
36+ - We need to hang the perfomance counters block from the TSO.
37+ - On every tield we can update the perf counters.
38+ - To get the updated value of the counter we need to yield.
You can’t perform that action at this time.
0 commit comments