Module Flx_cil_stats


module Flx_cil_stats: sig .. end
Flx_cil_utilities for maintaining timing statistics

val reset : bool -> unit
Resets all the timings. Invoke with "true" if you want to switch to using * the hardware performance counters from now on. You get an exception if * there are not performance counters available
exception NoPerfCount
val has_performance_counters : unit -> bool
Flx_cil_check if we have performance counters
val time : string -> ('a -> 'b) -> 'a -> 'b
Time a function and associate the time with the given string. If some timing information is already associated with that string, then accumulate the times. If this function is invoked within another timed function then you can have a hierarchy of timings
val repeattime : float -> string -> ('a -> 'b) -> 'a -> 'b
repeattime is like time but runs the function several times until the total running time is greater or equal to the first argument. The total time is then divided by the number of times the function was run.
val print : Pervasives.out_channel -> string -> unit
Print the current stats preceeded by a message