Changed building of tag tables and format.
[SXSI/xpathcomp.git] / utils.ml
index 2e02bc5..b076733 100644 (file)
--- a/utils.ml
+++ b/utils.ml
@@ -46,6 +46,9 @@ DEFINE SMALL_H_SIZE  = PRIME2
 DEFINE MED_H_SIZE    = PRIME5
 DEFINE BIG_H_SIZE    = PRIME8
 
+DEFINE SMALL_A_SIZE  = 128
+DEFINE MED_A_SIZE = 2048
+DEFINE BIG_A_SIZE = 8192
 
 
 let read_procmem () = 
@@ -83,14 +86,16 @@ let time_mem f x =
     Printf.eprintf "Final Mem: %s\n\n\n%!" s2;
     r
 ;;
-let time f x =
+let time f ?(count=1) ?(msg="") 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
+  Printf.eprintf "%s: run %i/%i,  %fms\n%!" msg i count t;
+  if i >= count then  (l:= t::!l;r)
+  else loop (i+1) 
+  in loop 1
 ;;
 let total_time () =  List.fold_left (+.) 0. !l;;