Skip to content

Instantly share code, notes, and snippets.

@siscia
Created March 15, 2013 20:04
Show Gist options
  • Save siscia/5172730 to your computer and use it in GitHub Desktop.
Save siscia/5172730 to your computer and use it in GitHub Desktop.
; nREPL 0.1.6
user> (ns parallel-colt-matrix.vector)
nil
parallel-colt-matrix.vector> (use 'criterium.core)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 10 (repeatedly #(Math/random))))
b (get-vector (take 10 (repeatedly #(Math/random))))]
(bench (dotimes [i 1e3] (matrix-add a b))))
Evaluation count : 10560 in 60 samples of 176 calls.
Execution time mean : 6.241243 ms
Execution time std-deviation : 550.812953 us
Execution time lower quantile : 5.532283 ms ( 2.5%)
Execution time upper quantile : 7.227225 ms (97.5%)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 10 (repeatedly #(Math/random))))
b (get-vector (take 10 (repeatedly #(Math/random))))]
(bench (dotimes [i 1e3] (matrix-add a b))))
Evaluation count : 9540 in 60 samples of 159 calls.
Execution time mean : 6.679694 ms
Execution time std-deviation : 317.425619 us
Execution time lower quantile : 6.194760 ms ( 2.5%)
Execution time upper quantile : 7.403111 ms (97.5%)
Found 2 outliers in 60 samples (3.3333 %)
low-severe 2 (3.3333 %)
Variance from outliers : 33.5874 % Variance is moderately inflated by outliers
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 10 (repeatedly #(Math/random))))
b (get-vector (take 10 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add a b))))
WARNING: Final GC required 22.15673535781602 % of runtime
Evaluation count : 108 in 6 samples of 18 calls.
Execution time mean : 6.081605 ms
Execution time std-deviation : 301.701008 us
Execution time lower quantile : 5.792956 ms ( 2.5%)
Execution time upper quantile : 6.514132 ms (97.5%)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 1e2 (repeatedly #(Math/random))))
b (get-vector (take 1e2 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add a b))))
WARNING: Final GC required 21.05403090655249 % of runtime
Evaluation count : 102 in 6 samples of 17 calls.
Execution time mean : 6.250496 ms
Execution time std-deviation : 151.834000 us
Execution time lower quantile : 6.117363 ms ( 2.5%)
Execution time upper quantile : 6.440764 ms (97.5%)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 1e3 (repeatedly #(Math/random))))
b (get-vector (take 1e3 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add a b))))
WARNING: Final GC required 25.54947590966194 % of runtime
Evaluation count : 60 in 6 samples of 10 calls.
Execution time mean : 10.500757 ms
Execution time std-deviation : 480.479590 us
Execution time lower quantile : 9.945985 ms ( 2.5%)
Execution time upper quantile : 11.099071 ms (97.5%)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 1e4 (repeatedly #(Math/random))))
b (get-vector (take 1e4 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add a b))))
WARNING: Final GC required 20.72568557444922 % of runtime
Evaluation count : 12 in 6 samples of 2 calls.
Execution time mean : 54.969215 ms
Execution time std-deviation : 2.279701 ms
Execution time lower quantile : 52.668377 ms ( 2.5%)
Execution time upper quantile : 57.530517 ms (97.5%)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 1e5 (repeatedly #(Math/random))))
b (get-vector (take 1e5 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add a b))))
WARNING: Final GC required 5.508156304341568 % of runtime
Evaluation count : 6 in 6 samples of 1 calls.
Execution time mean : 646.126639 ms
Execution time std-deviation : 34.254609 ms
Execution time lower quantile : 614.700229 ms ( 2.5%)
Execution time upper quantile : 697.181477 ms (97.5%)
Found 1 outliers in 6 samples (16.6667 %)
low-severe 1 (16.6667 %)
Variance from outliers : 14.0929 % Variance is moderately inflated by outliers
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 1e6 (repeatedly #(Math/random))))
b (get-vector (take 1e6 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add a b))))
Evaluation count : 6 in 6 samples of 1 calls.
Execution time mean : 6.452340 sec
Execution time std-deviation : 266.476761 ms
Execution time lower quantile : 6.204589 sec ( 2.5%)
Execution time upper quantile : 6.814541 sec (97.5%)
nil
;; Using mutable
parallel-colt-matrix.vector> (let [a (get-vector (take 10 (repeatedly #(Math/random))))
b (get-vector (take 10 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add! a b))))
WARNING: Final GC required 23.29204699703869 % of runtime
Evaluation count : 204 in 6 samples of 34 calls.
Execution time mean : 2.978587 ms
Execution time std-deviation : 42.655179 us
Execution time lower quantile : 2.915253 ms ( 2.5%)
Execution time upper quantile : 3.013890 ms (97.5%)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 1e2 (repeatedly #(Math/random))))
b (get-vector (take 1e2 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add! a b))))
WARNING: Final GC required 22.794923995487782 % of runtime
Evaluation count : 186 in 6 samples of 31 calls.
Execution time mean : 3.261855 ms
Execution time std-deviation : 39.946483 us
Execution time lower quantile : 3.223223 ms ( 2.5%)
Execution time upper quantile : 3.317435 ms (97.5%)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 1e3 (repeatedly #(Math/random))))
b (get-vector (take 1e3 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add! a b))))
WARNING: Final GC required 22.645923466128508 % of runtime
Evaluation count : 126 in 6 samples of 21 calls.
Execution time mean : 5.060007 ms
Execution time std-deviation : 236.697794 us
Execution time lower quantile : 4.822355 ms ( 2.5%)
Execution time upper quantile : 5.352673 ms (97.5%)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 1e4 (repeatedly #(Math/random))))
b (get-vector (take 1e4 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add! a b))))
WARNING: Final GC required 19.738627828894863 % of runtime
Evaluation count : 30 in 6 samples of 5 calls.
Execution time mean : 22.755294 ms
Execution time std-deviation : 685.682319 us
Execution time lower quantile : 21.949662 ms ( 2.5%)
Execution time upper quantile : 23.418340 ms (97.5%)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 1e5 (repeatedly #(Math/random))))
b (get-vector (take 1e5 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add! a b))))
WARNING: Final GC required 11.25680146683066 % of runtime
Evaluation count : 6 in 6 samples of 1 calls.
Execution time mean : 211.233181 ms
Execution time std-deviation : 8.463344 ms
Execution time lower quantile : 204.066419 ms ( 2.5%)
Execution time upper quantile : 222.633449 ms (97.5%)
nil
parallel-colt-matrix.vector> (let [a (get-vector (take 1e6 (repeatedly #(Math/random))))
b (get-vector (take 1e6 (repeatedly #(Math/random))))]
(quick-bench (dotimes [i 1e3] (matrix-add! a b))))
WARNING: Final GC required 1.373743537644238 % of runtime
Evaluation count : 6 in 6 samples of 1 calls.
Execution time mean : 2.266012 sec
Execution time std-deviation : 23.972359 ms
Execution time lower quantile : 2.223096 sec ( 2.5%)
Execution time upper quantile : 2.287828 sec (97.5%)
Found 1 outliers in 6 samples (16.6667 %)
low-severe 1 (16.6667 %)
Variance from outliers : 13.8889 % Variance is moderately inflated by outliers
nil
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment