| 91 | | Ask JaffaCake how the "tasks" relate to the "threads" for which we generate |
| 92 | | events. For now, to the existing GC events we can add the info about which task |
| 93 | | does the job, but we may miss something this way. BTW, ask JaffaCake if the time between event GCIdle and GCWork is included |
| 94 | | in the GC time of the task or not. Generally, is GCIdle useful for us here in any way? |
| 95 | | Similarly, can we calculate the MUT (elapsed) times just but taking the total |
| 96 | | time a thread (or cap?) is run and subtracting the GC time and any pauses (and are all |
| 97 | | pauses visible through events we have already?). |
| | 93 | Let's ignore that one for now. |
| | 94 | JaffaCake says the task information has questionable usefulness. It's much more natural for us to present the same info per cap, not per OS thread (which the tasks basically are). Actually we do present the GC info per cap (not only total, as in +RTS -s) already and the total activity time per cap (which includes the mutator time) is much better conveyed by the graphs in ThreadScope. |
| | 95 | |
| | 96 | BTW, the time between events GCIdle and GCWork is still counted as GC time, so we may ignore the events for calculating the times spent on GC. OTOH, a summary of the GCIdle times, per hec, then the total, also as the percentage of all GC time could be useful. Probably we can do that cheaply along the waym since we have to identify and sift out the GCIdle and GCWork events anyway. |