module Timings: sig
.. end
Compiler performance recording
type
file = string
type
source_provenance =
| |
File of file |
| |
Pack of string |
| |
Startup |
| |
Toplevel |
type
compiler_pass =
val reset : unit -> unit
erase all recorded times
val get : compiler_pass -> float option
returns the runtime in seconds of a completed pass
val time_call : compiler_pass -> (unit -> 'a) -> 'a
time_call pass f
calls f
and records its runtime.
val time : compiler_pass -> ('a -> 'b) -> 'a -> 'b
time pass f arg
records the runtime of f arg
val accumulate_time : compiler_pass -> ('a -> 'b) -> 'a -> 'b
Like time for passes that can run multiple times
val print : Format.formatter -> unit
Prints all recorded timings to the formatter.