Unix.kill !pid Sys.sigint
let time f ?(count=1) ?(msg="") x =
- if not !Options.verbose then f x
+ if not !Config.verbose then f x
else
let rec loop i =
Gc.compact();
- let oldstack = read_procmem () in
+ let oldstack = Utils.System.get_status "VmStk" in
let t1 = Unix.gettimeofday () in
let r = f x in
let t2 = Unix.gettimeofday () in
+ let newstack = Utils.System.get_status "VmStk" in
let t = (1000. *. (t2 -. t1)) in
Logger.verbose Format.err_formatter "%s: " msg;
if (count != 1) then Logger.verbose Format.err_formatter "run %i/%i, " i count;
- Logger.verbose Format.err_formatter "%fms (stack size: before=%s, after=%s)@\n" t oldstack (read_procmem());
+ Logger.verbose Format.err_formatter "%fms (stack size: before=%s, after=%s)@\n" t oldstack newstack;
if i >= count then (l:= t::!l;r)
else loop (i+1)
in
-open Utils
open Format
-
- let index_empty_texts = ref true
- let sample_factor = ref 64
- let disable_text_collection = ref false
- let tc_threshold = ref 60000
-
- let query = ref ""
- let input_file = ref ""
- let output_file = ref None
- let save_file = ref ""
- let count_only = ref false
- let time = ref false
- let bottom_up = ref false
- let no_jump = ref false
- let no_cache = ref false
- let verbose = ref false
- let text_index_type = ref 0
- let do_perf = ref false
- let twopass = ref false
- let repeat = ref 1
- let docstats = ref false
- let no_wrap_results = ref false
+ open Config
let set_index_type = function
| "default" -> text_index_type := 0
List.iter (fun t ->
if t = "" then ()
else
- match String.explode t ':' with
+ match Utils.String.explode t ':' with
[ tr; lvl ] ->
let l = try int_of_string lvl with _ -> raise (Arg.Bad (lvl)) in
if Logger.is_logger tr then Logger.activate tr l
else raise (Arg.Bad (t))
| _ -> raise (Arg.Bad (t))
- ) (String.explode s ',')
+ ) (Utils.String.explode s ',')
let pretty_loggers () =
ignore(flush_str_formatter());