Vixen
02b45cc4
csharp
public static class ProfileSummary

The table under the flame chart: every scope, aggregated.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

The half of a profiler that answers "what is slow", where the chart answers "what happened". A flame chart shows one frame's shape and is unreadable for a question like "which scope costs the most across two hundred frames"; the table is that question and nothing else.

⚠ Self time is summed per node and total time per sample, and mixing the two is the classic way to get a table that does not add up. A recursive scope appears at two levels of the same tree — its inclusive time is counted twice if you sum samples, which is why total here is the sum of durations and self is the sum of SelfMilliseconds: the second is what a subtree contributed and is additive across the whole capture whatever the nesting did.

Methods (1)

  • public static IReadOnlyList<ProfileEntry> Build(IReadOnlyList<ProfileThread> threads)

    Aggregates every thread's scopes by key.

Used by (1)

  • ProfileCaptureVixen.Editor.Profiler