Actually commit the files.
[SXSI/xpathcomp.git] / benchmark / benchmark.ml
index da741db..5418b64 100644 (file)
@@ -251,27 +251,29 @@ struct
           Array.iteri ( fun docnum (_,docsize) ->
                           let sres = [| (empty_stats()); (empty_stats()) |] in
                             Printf.printf "Running query %.2d on document %.2d :\n%!" qnum docnum;
-                            for j = (vb (not Conf.run_without_output)) to (vb Conf.run_with_output) do
-                              if j = 0 then Printf.printf "No output : \t%!"
-                              else Printf.printf "With output : \t%!";
-                              for i = 1 to Conf.num_runs do
-                                let s = extract(run_query false (j==1) qnum docnum qset) in
-                                  if sres.(j).query_execution_time > s.query_execution_time
-                                  then sres.(j) <- s;
-                                  Printf.printf "pass %i ... %!" i;
+
+                            for k = 0 to 1 do
+                              for j = (vb (not Conf.run_without_output)) to (vb Conf.run_with_output) do
+                                if j = 0 then Printf.printf "No output : \t%!"
+                                else Printf.printf "With output : \t%!";
+                                for i = 1 to Conf.num_runs do
+                                  let s = extract(run_query (k==1) (j==1) qnum docnum qset) in
+                                    if sres.(j).query_execution_time > s.query_execution_time
+                                    then sres.(j) <- s;
+                                    if (k==1) then
+                                      sres.(j).memory_usage <- s.memory_usage;
+                                    Printf.printf "pass %i ... %!" i;
+                                done;
+                                Printf.printf "Ok\n%!";                       
                               done;
-                              Printf.printf "Ok\n%!";                 
-                            done;
-                            Printf.printf "Monitoring memory use: ... %!";
-                            let s = extract(run_query true false qnum docnum qset)
-                            in 
-                              sres.(1).memory_usage <- s.memory_usage;
-                              Printf.printf "Ok\n%!";
-                              let _ = Array.iteri (fun i s -> s.print_output <- (i==1);
-                                                     s.query <- qnum;
-                                                     s.input_document <- docnum;
-                                                     s.input_size <- docsize) sres
-                              in lres := sres::!lres
+                              if (k == 0) 
+                              then  Printf.printf "Monitoring memory use: ... \n%!";
+                            done;                                          
+                            let _ = Array.iteri (fun i s -> s.print_output <- (i==1);
+                                                   s.query <- qnum;
+                                                   s.input_document <- docnum;
+                                                   s.input_size <- docsize) sres
+                            in lres := sres::!lres
                       ) qset.documents            
        )qset.queries
     in