From ac0f18d3c7034bab0bc24e2ea5641ec69ca35f2c Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Thu, 13 Nov 2014 22:33:15 +0100 Subject: [PATCH] simpler interface for CCbench global registration --- benchs/CCBench.ml | 18 ++++++++---------- benchs/CCBench.mli | 24 +++++++++++------------- benchs/run_benchs.ml | 11 +++-------- 3 files changed, 22 insertions(+), 31 deletions(-) diff --git a/benchs/CCBench.ml b/benchs/CCBench.ml index 3a987b42..73145714 100644 --- a/benchs/CCBench.ml +++ b/benchs/CCBench.ml @@ -238,17 +238,15 @@ let run_main ?(argv=Sys.argv) ?(out=Format.std_formatter) t = (** {2 Global Registration} *) -module Glob = struct - let tree_ = ref (Multiple ([], SMap.empty)) +let tree_ = ref (Multiple ([], SMap.empty)) - let get () = !tree_ +let global_bench () = !tree_ - let register ?(path=[]) new_t = - tree_ := merge_ !tree_ (prefix path new_t) +let register ?(path=[]) new_t = + tree_ := merge_ !tree_ (prefix path new_t) - let register' ~path new_t = - register ~path:(parse_path path) new_t +let register' ~path new_t = + register ~path:(parse_path path) new_t - let run_main ?argv ?out () = - run_main ?argv ?out !tree_ -end +let run_main ?argv ?out () = + run_main ?argv ?out !tree_ diff --git a/benchs/CCBench.mli b/benchs/CCBench.mli index 73eb005e..e5000df7 100644 --- a/benchs/CCBench.mli +++ b/benchs/CCBench.mli @@ -97,19 +97,17 @@ val run_main : (** {2 Global Registration} *) -module Glob : sig - val register : ?path:path -> bench -> unit - (** Register a benchmark to the global register of benchmarks (a global tree) *) +val register : ?path:path -> bench -> unit +(** Register a benchmark to the global register of benchmarks (a global tree) *) - val register' : path:string -> bench -> unit - (** Same as {!register} but applies {!parse_path} first to its argument *) +val register' : path:string -> bench -> unit +(** Same as {!register} but applies {!parse_path} first to its argument *) - val get : unit -> bench - (** Global bench tree *) +val global_bench : unit -> bench +(** Global bench tree, built from calls to {!register} *) - val run_main : - ?argv:string array -> - ?out:Format.formatter -> - unit -> unit - (** Same as {!run_main} but on the global tree of benchmarks *) -end +val run_main : + ?argv:string array -> + ?out:Format.formatter -> + unit -> unit + (** Same as {!run_main} but on the global tree of benchmarks *) diff --git a/benchs/run_benchs.ml b/benchs/run_benchs.ml index f0033617..abf7d076 100644 --- a/benchs/run_benchs.ml +++ b/benchs/run_benchs.ml @@ -45,7 +45,7 @@ module L = struct (* MAIN *) - let bench = CCBench.( + let () = CCBench.register CCBench.( "list" >::: [ "flat_map" >:: map_int @@ -64,8 +64,6 @@ module L = struct ; bench_append ~time:4, 100_000] ] ) - - let () = CCBench.Glob.register bench end module Vec = struct @@ -105,18 +103,15 @@ module Vec = struct ; "append_naive", try_append_ append_naive_ n v2, () ] - let bench = CCBench.( + let () = CCBench.register CCBench.( "vector" >::: [ "map" >:: with_int bench_map [100; 10_000; 100_000] ; "append" >:: with_int bench_append [100; 10_000; 50_000] ] ) - - let () = - CCBench.Glob.register bench end let () = - CCBench.Glob.run_main () + CCBench.run_main ()