minor improvements to benchmarks, add benchmark running script

This commit is contained in:
Nathan Marz 2016-08-06 02:22:51 -04:00
parent 645ea6f1aa
commit 5e1f596e60
2 changed files with 15 additions and 13 deletions

View file

@ -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]

4
scripts/run-benchmarks Executable file
View file

@ -0,0 +1,4 @@
#!/bin/bash
java -server -XX:MaxPermSize=128m -XX:MaxInlineSize=100 -cp `lein classpath` clojure.main scripts/benchmarks.clj