core_profiler

Profiling library
Library core_profiler.offline_tool
type t

Reads profiler data stored in a file and filters them appropriately

type timer_path = {
interest : Core_profiler.Probe_id.t Interest.Raw.t;
time : Core.Time_ns.t;
time_delta : Core.Time_ns.Span.t;
}
val sexp_of_timer_path : timer_path -> Sexplib0.Sexp.t
val timer_path_of_sexp : Sexplib0.Sexp.t -> timer_path
val compare_timer_path : timer_path -> timer_path -> int
type probe_path = {
interest : Core_profiler.Probe_id.t Interest.Raw.t;
time : Core.Time_ns.t;
time_delta : Core.Time_ns.Span.t;
value : int;
delta : int;
}
val sexp_of_probe_path : probe_path -> Sexplib0.Sexp.t
val probe_path_of_sexp : Sexplib0.Sexp.t -> probe_path
val compare_probe_path : probe_path -> probe_path -> int
val sexp_of_event : event -> Sexplib0.Sexp.t
val event_of_sexp : Sexplib0.Sexp.t -> event
val compare_event : event -> event -> int
val event_time : event -> Core.Time_ns.t

A t emits (via iter_events) all events that match the list of raw interests provided. The source of the event is identified by passing the raw interest inside the event; interests are hashable and comparable.

val iter_events : t -> f:( event -> unit ) -> unit