projects
/
SXSI
/
xpathcomp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix a subtle bug where OCaml/C function stack are not aligned on a 16 byte
[SXSI/xpathcomp.git]
/
src
/
utils.ml
diff --git
a/src/utils.ml
b/src/utils.ml
index
4ea44cb
..
8cab636
100644
(file)
--- a/
src/utils.ml
+++ b/
src/utils.ml
@@
-48,14
+48,14
@@
struct
Format.fprintf fmt "[";
List.iter (fun k ->
let v = Hashtbl.find h k in
Format.fprintf fmt "[";
List.iter (fun k ->
let v = Hashtbl.find h k in
- Format.fprintf fmt "%s
=
%s " k v
+ Format.fprintf fmt "%s
:
%s " k v
) [ "VmStk"; "VmRSS"; "VmPeak" ];
Format.fprintf fmt "]"
end
) [ "VmStk"; "VmRSS"; "VmPeak" ];
Format.fprintf fmt "]"
end
-(*
+
let time f ?(count=1) ?(msg="") x =
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();
else
let rec loop i =
Gc.compact();
@@
-65,15
+65,16
@@
let time f ?(count=1) ?(msg="") x =
let t2 = Unix.gettimeofday () in
let newmem = System.status () in
let t = (1000. *. (t2 -. t1)) in
let t2 = Unix.gettimeofday () in
let newmem = System.status () in
let t = (1000. *. (t2 -. t1)) in
- Logger.verbose Format.err_formatter "
%s:
" msg;
+ Logger.verbose Format.err_formatter "
@[%s: [
" msg;
if (count != 1) then Logger.verbose Format.err_formatter "run %i/%i, " i count;
if (count != 1) then Logger.verbose Format.err_formatter "run %i/%i, " i count;
- Logger.verbose
- Format.err_formatter
- "%fms (before: %a, after: %a)@\n" t System.pr_mem_status oldmem System.pr_mem_status newmem;
+ begin
+ Format.pp_open_vbox Format.err_formatter (2 + String.length msg);
+ Logger.verbose
+ Format.err_formatter
+ "@\n| Time: %fms@\n| Memory before: %a@\n| Memory after: %a@\n]@]@]@\n" t System.pr_mem_status oldmem System.pr_mem_status newmem;
+ end;
if i >= count then r
else loop (i+1)
in
loop 1
if i >= count then r
else loop (i+1)
in
loop 1
-
;;
;;
-*)