From 1150098cd2d5c3e432a0b4839cfe9cf5e99cfbc8 Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Thu, 13 Dec 2018 18:38:53 -0600 Subject: [PATCH] chore: repair build of benchmarks, fix warnings --- Makefile | 9 +++++++-- bench/jbuild | 8 -------- {bench => src/bench}/bench_persistent.ml | 14 +++++++------- {bench => src/bench}/bench_persistent_read.ml | 18 +++++++++--------- {bench => src/bench}/benchs.ml | 4 ++-- src/bench/dune | 8 ++++++++ {bench => src/bench}/simple_bench.ml | 4 ++-- 7 files changed, 35 insertions(+), 30 deletions(-) delete mode 100644 bench/jbuild rename {bench => src/bench}/bench_persistent.ml (92%) rename {bench => src/bench}/bench_persistent_read.ml (91%) rename {bench => src/bench}/benchs.ml (95%) create mode 100644 src/bench/dune rename {bench => src/bench}/simple_bench.ml (71%) diff --git a/Makefile b/Makefile index 6245086..af1db78 100644 --- a/Makefile +++ b/Makefile @@ -13,10 +13,15 @@ clean: doc: @dune build @doc -BENCH_TARGETS=bench_persistent_read.exe bench_persistent.exe +BENCH_TARGETS= benchs.exe bench_persistent_read.exe bench_persistent.exe benchs: - dune build $(addprefix bench/, $(BENCH_TARGETS)) + @for i in $(BENCH_TARGETS) ; do \ + echo "run benchmark $$i" ; \ + dune exec "src/bench/$$i" ; done + +build-benchs: + @dune build $(addprefix src/bench/, $(BENCH_TARGETS)) examples: dune build examples/test_sexpr.exe diff --git a/bench/jbuild b/bench/jbuild deleted file mode 100644 index a78ee5d..0000000 --- a/bench/jbuild +++ /dev/null @@ -1,8 +0,0 @@ - -(executables - ((names (bench_persistent_read bench_persistent)) - (libraries (sequence benchmark)) - (flags (:standard -w +a-4-42-44-48-50-58-32-60@8 -safe-string -color always)) - (ocamlopt_flags (:standard -O3 -color always - -unbox-closures -unbox-closures-factor 20)) - )) diff --git a/bench/bench_persistent.ml b/src/bench/bench_persistent.ml similarity index 92% rename from bench/bench_persistent.ml rename to src/bench/bench_persistent.ml index 022b6b3..0cab98a 100644 --- a/bench/bench_persistent.ml +++ b/src/bench/bench_persistent.ml @@ -93,21 +93,21 @@ let persistent_mlist seq = MList.to_seq l let bench_mlist n = - for i = 0 to 100 do - let _ = persistent_mlist Sequence.(1 -- n) in + for _i = 0 to 100 do + let _ = persistent_mlist Iter.(1 -- n) in () done let bench_naive n = - for i = 0 to 100 do - let l = Sequence.to_rev_list Sequence.(1 -- n) in - let _ = Sequence.of_list (List.rev l) in + for _i = 0 to 100 do + let l = Iter.to_rev_list Iter.(1 -- n) in + let _ = Iter.of_list (List.rev l) in () done let bench_current n = - for i = 0 to 100 do - let _ = Sequence.persistent Sequence.(1 -- n) in + for _i = 0 to 100 do + let _ = Iter.persistent Iter.(1 -- n) in () done diff --git a/bench/bench_persistent_read.ml b/src/bench/bench_persistent_read.ml similarity index 91% rename from bench/bench_persistent_read.ml rename to src/bench/bench_persistent_read.ml index 8e0dea6..23161ab 100644 --- a/bench/bench_persistent_read.ml +++ b/src/bench/bench_persistent_read.ml @@ -93,26 +93,26 @@ let persistent_mlist seq = MList.to_seq l let bench_mlist n = - persistent_mlist Sequence.(1 -- n) + persistent_mlist Iter.(1 -- n) let bench_list n = - let l = Sequence.to_rev_list Sequence.(1 -- n) in - Sequence.of_list (List.rev l) + let l = Iter.to_rev_list Iter.(1 -- n) in + Iter.of_list (List.rev l) let bench_naive n = - let s = Sequence.(1 -- n) in - Sequence.iter ignore s ; + let s = Iter.(1 -- n) in + Iter.iter ignore s ; s let bench_current n = - Sequence.persistent Sequence.(1 -- n) + Iter.persistent Iter.(1 -- n) let bench_array n = - let a = Sequence.to_array Sequence.(1 -- n) in - Sequence.of_array a + let a = Iter.to_array Iter.(1 -- n) in + Iter.of_array a let read s = - Sequence.map (fun x -> x + 1) s + Iter.map (fun x -> x + 1) s let () = let bench_n n = diff --git a/bench/benchs.ml b/src/bench/benchs.ml similarity index 95% rename from bench/benchs.ml rename to src/bench/benchs.ml index 2fa414d..3e9149a 100644 --- a/bench/benchs.ml +++ b/src/bench/benchs.ml @@ -1,6 +1,6 @@ -module S = Sequence -open Sequence.Infix +module S = Iter +open Iter.Infix let small = [10;20;50;100;500] let medium = small @ [1000;10_000;100_000] diff --git a/src/bench/dune b/src/bench/dune new file mode 100644 index 0000000..e5890b0 --- /dev/null +++ b/src/bench/dune @@ -0,0 +1,8 @@ + +(executables + (names bench_persistent_read bench_persistent benchs) + (libraries iter benchmark) + (flags :standard -w +a-4-42-44-48-50-58-32-60@8 -safe-string -color always) + (ocamlopt_flags :standard -O3 -color always + -unbox-closures -unbox-closures-factor 20) + ) diff --git a/bench/simple_bench.ml b/src/bench/simple_bench.ml similarity index 71% rename from bench/simple_bench.ml rename to src/bench/simple_bench.ml index 96611d7..2ef69fe 100644 --- a/bench/simple_bench.ml +++ b/src/bench/simple_bench.ml @@ -1,11 +1,11 @@ -open Sequence.Infix +open Iter.Infix let _ = let n = int_of_string Sys.argv.(1) in let seq = 0 -- n in let start = Unix.gettimeofday () in - seq |> Sequence.persistent |> Sequence.fold (+) 0 |> ignore; + seq |> Iter.persistent |> Iter.fold (+) 0 |> ignore; let stop = Unix.gettimeofday () in Format.printf "iter on %d: %.4f@." n (stop -. start); ()