Module InferModules__PerfStats

Performance Statistics gathering and reporting

type perf_stats
type stats_kind =
| Time of Mtime_clock.counter * InferStdlib.IStd.Unix.process_times
| Memory
| TimeAndMemory
type stats_type =
| ClangLinters of InferBase.SourceFile.t
| ClangFrontend of InferBase.SourceFile.t
| ClangFrontendLinters of InferBase.SourceFile.t
| JavaFrontend of InferBase.SourceFile.t
| TotalFrontend
| Backend of InferBase.SourceFile.t
| TotalBackend
| Reporting
| Driver
val from_json : Yojson.Basic.t -> perf_stats
val aggregate : perf_stats list -> Yojson.Basic.t
val register_report : stats_kind -> stats_type -> unit

Register performance reporting function

val get_reporter : stats_type -> unit -> unit

Get reporting function that can be called at any time to create a performance report

val register_report_at_exit : stats_type -> unit

Create performance report when the current process terminates