X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=utils.ml;fp=utils.ml;h=69754f55a669f4ee37ea855665e39c446ee33fc1;hb=343ce6fc6c893c69b4820a17b4b6a0be7cd50d87;hp=2e02bc50de76931c4c6934d4e36231d616d733f4;hpb=92fa1dfd894ed2903541d665bd40919ae154f285;p=SXSI%2Fxpathcomp.git diff --git a/utils.ml b/utils.ml index 2e02bc5..69754f5 100644 --- a/utils.ml +++ b/utils.ml @@ -83,14 +83,17 @@ let time_mem f x = Printf.eprintf "Final Mem: %s\n\n\n%!" s2; r ;; -let time f x = +let time f ?(count=1) x = + let rec loop i = let t1 = Unix.gettimeofday () in let r = f x in let t2 = Unix.gettimeofday () in let t = (1000. *. (t2 -. t1)) in - l:= t::!l; - Printf.eprintf " %fms\n%!" t ; - r + if i > count then (l:= t::!l;r) + else begin + Printf.eprintf "run %i/%i, %fms\n%!" i count t; + loop (i+1) end + in loop 1 ;; let total_time () = List.fold_left (+.) 0. !l;;