From 5e1f596e60cb4e89b6d264d044bec088320e9b3f Mon Sep 17 00:00:00 2001 From: Nathan Marz Date: Sat, 6 Aug 2016 02:22:51 -0400 Subject: [PATCH] minor improvements to benchmarks, add benchmark running script --- scripts/benchmarks.clj | 24 +++++++++++------------- scripts/run-benchmarks | 4 ++++ 2 files changed, 15 insertions(+), 13 deletions(-) create mode 100755 scripts/run-benchmarks diff --git a/scripts/benchmarks.clj b/scripts/benchmarks.clj index 8e52b59..e1cc633 100644 --- a/scripts/benchmarks.clj +++ b/scripts/benchmarks.clj @@ -29,7 +29,7 @@ (defn average-time-ms [iters amt-per-iter afn] (avg - ;; treat 1st run as warmup + ;; treat 1st run as warmup (next (for [i (range (inc iters))] (time-ms amt-per-iter afn))))) @@ -223,26 +223,24 @@ (let [data (vec (range 1000)) tdata (transient data) - tdata2 (transient data) - idx 600] + tdata2 (transient data)] (run-benchmark "transient comparison: assoc'ing in vectors" 2500000 - (assoc data idx 0) - (assoc! tdata idx 0) - (setval (keypath idx) 0 data) - (setval (keypath! idx) 0 tdata2))) + (assoc data 600 0) + (assoc! tdata 600 0) + (setval (keypath 600) 0 data) + (setval (keypath! 600) 0 tdata2))) (let [data (into {} (for [k (range 1000)] [k (rand)])) tdata (transient data) - tdata2 (transient data) - idx 600] + tdata2 (transient data)] (run-benchmark "transient comparison: assoc'ing in maps" 1500000 - (assoc data idx 0) - (assoc! tdata idx 0) - (setval (keypath idx) 0 data) - (setval (keypath! idx) 0 tdata2))) + (assoc data 600 0) + (assoc! tdata 600 0) + (setval (keypath 600) 0 data) + (setval (keypath! 600) 0 tdata2))) (defn modify-submap [m] diff --git a/scripts/run-benchmarks b/scripts/run-benchmarks new file mode 100755 index 0000000..ab760cd --- /dev/null +++ b/scripts/run-benchmarks @@ -0,0 +1,4 @@ +#!/bin/bash + + +java -server -XX:MaxPermSize=128m -XX:MaxInlineSize=100 -cp `lein classpath` clojure.main scripts/benchmarks.clj