Merge branch 'handle-stdout'
[SXSI/xpathcomp.git] / src / profile.ml
1 let table = Hashtbl.create 103
2
3 let summary fmt =
4   Logger.start_msg fmt "[Stats] Function profiling:";
5   Logger.msg fmt "@\n     @[<v 0>";
6   Hashtbl.iter (fun (m, f) d  ->
7     let c, tl = !d in
8     let tspent =
9       List.fold_left (fun acc e -> e +. acc) 0. tl 
10     in
11     Logger.msg fmt "%s: %s = called %i times, total: %fms, average: %fms@\n"
12       m f c tspent (tspent /. (float_of_int c))) table;
13   Logger.end_msg Format.err_formatter "\n\n"
14