Skip to main content

Module walkprofile

Module walkprofile 

Source
Available on crate feature profiling only.
Expand description

Where the engine half of a render goes, split finer than the backend seam.

Records, per render, the time spent in each of the walk’s own phases — clip resolution, colour resolution, glyph placement, image preparation, and the dispatch left over — and the allocations at each site in the walk that makes one, counted and sized.

Costs nothing when the profiling feature is off: every entry point compiles to an empty inline function. The accumulator is a thread-local, so a rayon render reports per-thread totals rather than a contended one, and take resets it.

Structs§

Profile
Everything one render’s walk accumulated.

Enums§

Phase
One phase of the walk’s engine-side work.
Site
One allocation site in the walk, named by what it allocates.

Functions§

alloc
Record one allocation of bytes at site.
alloc_items
Record one allocation whose size is the capacity of a slice-shaped value.
phase
Run body and charge its elapsed time to phase.
phase_start
Start a phase, closed by the returned guard’s end.
take
Read the accumulator and clear it.