Skip to content

Instantly share code, notes, and snippets.

@ToddG
Created December 29, 2010 05:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ToddG/758198 to your computer and use it in GitHub Desktop.
Save ToddG/758198 to your computer and use it in GitHub Desktop.
Testing Mark's NonBlockingHashMap
(ns justforfun.speedtest1
(:use justforfun.NonBlockingHashMap))
(set! *warn-on-reflection* true)
;; I've simply extended Mark Engelberg's test code for his NonBlockingHashMap and
;; included my test results -- TDG
(defmacro xtime
"Evaluates expr and returns the time."
{:added "1.0"}
[expr]
`(let [start# (. System (nanoTime))
cmd# ~expr]
(do cmd# (/ (double (- (. System (nanoTime)) start#)) 1000000.0))))
(def ^justforfun.NonBlockingHashMap h (justforfun.NonBlockingHashMap.))
(def ^java.util.Map j (. java.util.Collections synchronizedMap (java.util.HashMap.)))
(prn "time for NBHM: " (xtime (doseq [i (range 1e5)] (.put h i 2))))
(prn "time for SHM: " (xtime (doseq [i (range 1e5)] (.put j i 2))))
(defn my-test-nbhm [ck mx ^justforfun.NonBlockingHashMap mp]
(loop [i 0 res (sorted-map)]
(if (>= i mx)
res
(recur
(+ i ck)
(assoc res i (xtime (doseq [i (range ck)] (.put mp i 2))))))))
(defn my-test-map [ck mx ^java.util.Map mp]
(loop [i 0 res (sorted-map)]
(if (>= i mx)
res
(recur
(+ i ck)
(assoc res i (xtime (doseq [i (range ck)] (.put mp i 2))))))))
(defn my-test2 []
(prn "hello"))
(defn do-test [chunk]
(let [total 1e5
res-h (my-test-nbhm chunk total (justforfun.NonBlockingHashMap.))
res-j (my-test-map chunk total (. java.util.Collections synchronizedMap (java.util.HashMap.)))]
(do
(prn "NonBlockingHashMap, chunk=" chunk ", " res-h)
(prn "SynchronizedHahMap, chunk=" chunk ", " res-j))))
(Thread/sleep 4000)
(do-test 1e3)
(Thread/sleep 4000)
(do-test 1e4)
(Thread/sleep 4000)
(do-test 1e5)
;; Trial #1
;"time for NBHM: " 3873.038
;"time for SHM: " 888.028
;"NonBlockingHashMap :" {0 274.162, 1000.0 139.301, 2000.0 117.857, 3000.0 81.948, 4000.0 82.114, 5000.0 64.569, 6000.0 74.92, 7000.0 179.672, 8000.0 160.013, 9000.0 40.982, 10000.0 48.135, 11000.0 64.685, 12000.0 114.483, 13000.0 74.703, 14000.0 113.467, 15000.0 24.794, 16000.0 26.42, 17000.0 15.268, 18000.0 40.494, 19000.0 49.046, 20000.0 13.956, 21000.0 35.432, 22000.0 33.363, 23000.0 12.218, 24000.0 39.872, 25000.0 15.424, 26000.0 14.131, 27000.0 33.485, 28000.0 23.012, 29000.0 14.157, 30000.0 72.869, 31000.0 36.321, 32000.0 44.082, 33000.0 20.786, 34000.0 32.091, 35000.0 31.632, 36000.0 72.408, 37000.0 19.595, 38000.0 13.075, 39000.0 23.065, 40000.0 22.114, 41000.0 15.588, 42000.0 16.72, 43000.0 28.561, 44000.0 17.193, 45000.0 13.842, 46000.0 20.479, 47000.0 18.913, 48000.0 20.777, 49000.0 55.995, 50000.0 32.176, 51000.0 39.305, 52000.0 25.365, 53000.0 10.871, 54000.0 21.492, 55000.0 36.258, 56000.0 35.742, 57000.0 13.01, 58000.0 9.414, 59000.0 17.871, 60000.0 11.762, 61000.0 11.955, 62000.0 107.99, 63000.0 56.243, 64000.0 15.802, 65000.0 29.803, 66000.0 19.868, 67000.0 15.708, 68000.0 11.09, 69000.0 9.509, 70000.0 16.359, 71000.0 9.725, 72000.0 15.39, 73000.0 9.316, 74000.0 9.579, 75000.0 14.225, 76000.0 10.348, 77000.0 59.619, 78000.0 10.669, 79000.0 9.512, 80000.0 14.999, 81000.0 11.087, 82000.0 10.066, 83000.0 23.769, 84000.0 20.235, 85000.0 22.516, 86000.0 14.005, 87000.0 22.903, 88000.0 19.107, 89000.0 25.831, 90000.0 19.928, 91000.0 13.895, 92000.0 16.119, 93000.0 18.014, 94000.0 11.308, 95000.0 17.066, 96000.0 10.201, 97000.0 12.823, 98000.0 12.667, 99000.0 9.544}
;"SynchronizedHahMap :" {0 23.543, 1000.0 22.901, 2000.0 16.849, 3000.0 26.473, 4000.0 15.511, 5000.0 49.156, 6000.0 13.131, 7000.0 11.986, 8000.0 13.244, 9000.0 16.357, 10000.0 23.855, 11000.0 8.989, 12000.0 13.327, 13000.0 9.404, 14000.0 12.95, 15000.0 18.348, 16000.0 9.611, 17000.0 11.158, 18000.0 9.408, 19000.0 9.137, 20000.0 16.717, 21000.0 12.19, 22000.0 14.775, 23000.0 21.496, 24000.0 14.868, 25000.0 15.168, 26000.0 17.814, 27000.0 13.333, 28000.0 18.278, 29000.0 14.454, 30000.0 13.671, 31000.0 21.942, 32000.0 18.12, 33000.0 14.406, 34000.0 19.337, 35000.0 12.104, 36000.0 9.749, 37000.0 13.324, 38000.0 8.921, 39000.0 10.013, 40000.0 20.435, 41000.0 9.024, 42000.0 13.861, 43000.0 11.835, 44000.0 9.288, 45000.0 12.826, 46000.0 8.702, 47000.0 10.869, 48000.0 15.153, 49000.0 12.785, 50000.0 38.554, 51000.0 11.233, 52000.0 10.241, 53000.0 9.271, 54000.0 11.233, 55000.0 18.23, 56000.0 19.675, 57000.0 15.054, 58000.0 14.895, 59000.0 17.534, 60000.0 16.984, 61000.0 14.957, 62000.0 23.969, 63000.0 13.454, 64000.0 13.964, 65000.0 19.45, 66000.0 13.986, 67000.0 16.621, 68000.0 9.385, 69000.0 9.056, 70000.0 11.219, 71000.0 8.9, 72000.0 10.209, 73000.0 11.462, 74000.0 9.421, 75000.0 19.338, 76000.0 11.684, 77000.0 11.565, 78000.0 9.98, 79000.0 12.761, 80000.0 9.082, 81000.0 24.036, 82000.0 69.623, 83000.0 8.99, 84000.0 71.392, 85000.0 9.789, 86000.0 8.946, 87000.0 14.782, 88000.0 9.322, 89000.0 13.712, 90000.0 15.121, 91000.0 8.791, 92000.0 9.185, 93000.0 10.832, 94000.0 9.331, 95000.0 11.209, 96000.0 9.05, 97000.0 8.458, 98000.0 12.453, 99000.0 8.507}
;"NonBlockingHashMap :" {0 115.401, 10000.0 119.333, 20000.0 170.655, 30000.0 106.328, 40000.0 102.584, 50000.0 102.201, 60000.0 100.22, 70000.0 99.242, 80000.0 99.5, 90000.0 89.054}
;"SynchronizedHahMap :" {0 97.751, 10000.0 97.461, 20000.0 84.111, 30000.0 84.989, 40000.0 87.027, 50000.0 88.577, 60000.0 114.249, 70000.0 82.683, 80000.0 86.234, 90000.0 82.903}
;"NonBlockingHashMap :" {0 1516.177}
;"SynchronizedHahMap :" {0 1262.456}
;; Trial #2
;"time for NBHM: " 2005.4
;"time for SHM: " 291.51
;"NonBlockingHashMap :" {0 86.138, 1000.0 19.667, 2000.0 21.022, 3000.0 45.318, 4000.0 16.692, 5000.0 31.329, 6000.0 26.128, 7000.0 22.513, 8000.0 20.759, 9000.0 13.454, 10000.0 47.786, 11000.0 18.004, 12000.0 7.756, 13000.0 9.83, 14000.0 7.259, 15000.0 7.641, 16000.0 10.271, 17000.0 7.372, 18000.0 10.019, 19000.0 7.477, 20000.0 7.525, 21000.0 10.753, 22000.0 9.222, 23000.0 7.413, 24000.0 9.201, 25000.0 7.489, 26000.0 9.447, 27000.0 7.626, 28000.0 7.892, 29000.0 9.643, 30000.0 7.752, 31000.0 10.78, 32000.0 7.558, 33000.0 7.539, 34000.0 13.676, 35000.0 8.582, 36000.0 13.814, 37000.0 7.268, 38000.0 7.668, 39000.0 10.483, 40000.0 8.623, 41000.0 10.794, 42000.0 8.556, 43000.0 7.271, 44000.0 9.338, 45000.0 7.328, 46000.0 7.123, 47000.0 8.713, 48000.0 7.252, 49000.0 8.811, 50000.0 7.286, 51000.0 7.542, 52000.0 8.911, 53000.0 9.038, 54000.0 8.633, 55000.0 7.135, 56000.0 7.15, 57000.0 9.282, 58000.0 6.986, 59000.0 8.928, 60000.0 7.082, 61000.0 7.422, 62000.0 8.93, 63000.0 7.08, 64000.0 7.869, 65000.0 8.681, 66000.0 7.164, 67000.0 8.767, 68000.0 7.182, 69000.0 7.121, 70000.0 8.633, 71000.0 7.221, 72000.0 8.7, 73000.0 7.234, 74000.0 7.187, 75000.0 8.191, 76000.0 7.099, 77000.0 8.477, 78000.0 6.561, 79000.0 6.824, 80000.0 8.279, 81000.0 6.887, 82000.0 6.639, 83000.0 8.299, 84000.0 6.901, 85000.0 8.269, 86000.0 6.572, 87000.0 6.894, 88000.0 8.251, 89000.0 6.653, 90000.0 8.722, 91000.0 6.866, 92000.0 6.927, 93000.0 8.375, 94000.0 6.698, 95000.0 8.529, 96000.0 6.933, 97000.0 6.569, 98000.0 8.516, 99000.0 6.69}
;"SynchronizedHahMap :" {0 13.89, 1000.0 12.619, 2000.0 12.689, 3000.0 13.89, 4000.0 10.082, 5000.0 14.585, 6000.0 14.448, 7000.0 7.347, 8000.0 7.332, 9000.0 10.418, 10000.0 7.806, 11000.0 7.345, 12000.0 8.575, 13000.0 7.408, 14000.0 6.878, 15000.0 8.086, 16000.0 7.057, 17000.0 8.414, 18000.0 6.452, 19000.0 6.687, 20000.0 8.488, 21000.0 6.47, 22000.0 7.082, 23000.0 8.099, 24000.0 6.801, 25000.0 6.512, 26000.0 7.887, 27000.0 6.616, 28000.0 8.228, 29000.0 6.266, 30000.0 6.823, 31000.0 8.16, 32000.0 6.267, 33000.0 6.649, 34000.0 8.357, 35000.0 7.064, 36000.0 6.477, 37000.0 8.51, 38000.0 7.54, 39000.0 8.269, 40000.0 8.668, 41000.0 6.998, 42000.0 8.184, 43000.0 6.335, 44000.0 6.788, 45000.0 8.337, 46000.0 6.474, 47000.0 6.366, 48000.0 8.112, 49000.0 6.551, 50000.0 6.378, 51000.0 8.33, 52000.0 6.645, 53000.0 6.411, 54000.0 8.167, 55000.0 6.409, 56000.0 9.566, 57000.0 6.517, 58000.0 6.347, 59000.0 8.152, 60000.0 6.38, 61000.0 6.341, 62000.0 8.208, 63000.0 6.414, 64000.0 6.425, 65000.0 10.256, 66000.0 6.37, 67000.0 8.075, 68000.0 6.776, 69000.0 6.791, 70000.0 7.995, 71000.0 6.548, 72000.0 6.553, 73000.0 8.064, 74000.0 6.48, 75000.0 6.612, 76000.0 7.98, 77000.0 6.48, 78000.0 7.093, 79000.0 8.185, 80000.0 6.497, 81000.0 8.059, 82000.0 6.565, 83000.0 6.404, 84000.0 8.062, 85000.0 6.576, 86000.0 6.421, 87000.0 7.98, 88000.0 6.527, 89000.0 6.493, 90000.0 8.002, 91000.0 6.514, 92000.0 6.492, 93000.0 8.32, 94000.0 6.342, 95000.0 8.177, 96000.0 6.643, 97000.0 6.302, 98000.0 8.038, 99000.0 6.661}
;"NonBlockingHashMap :" {0 84.812, 10000.0 79.683, 20000.0 89.907, 30000.0 80.015, 40000.0 83.527, 50000.0 77.764, 60000.0 76.552, 70000.0 75.46, 80000.0 87.01, 90000.0 81.664}
;"SynchronizedHahMap :" {0 81.369, 10000.0 95.414, 20000.0 76.587, 30000.0 78.401, 40000.0 78.548, 50000.0 76.569, 60000.0 77.827, 70000.0 76.472, 80000.0 83.501, 90000.0 76.433}
;"NonBlockingHashMap :" {0 1219.493}
;"SynchronizedHahMap :" {0 971.709}
;; Trial #3
;"time for NBHM: " 2792.671
;"time for SHM: " 505.578
;"NonBlockingHashMap :" {0 90.499, 1000.0 24.669, 2000.0 25.759, 3000.0 64.172, 4000.0 20.913, 5000.0 24.45, 6000.0 28.368, 7000.0 24.183, 8000.0 34.995, 9000.0 16.604, 10000.0 94.234, 11000.0 14.038, 12000.0 9.904, 13000.0 12.157, 14000.0 9.134, 15000.0 9.161, 16000.0 12.484, 17000.0 9.221, 18000.0 11.501, 19000.0 8.972, 20000.0 8.879, 21000.0 13.851, 22000.0 8.76, 23000.0 9.403, 24000.0 11.428, 25000.0 8.882, 26000.0 13.429, 27000.0 14.241, 28000.0 9.874, 29000.0 12.569, 30000.0 10.95, 31000.0 13.016, 32000.0 9.172, 33000.0 9.194, 34000.0 11.091, 35000.0 9.943, 36000.0 11.35, 37000.0 8.873, 38000.0 9.326, 39000.0 19.165, 40000.0 9.62, 41000.0 15.509, 42000.0 8.904, 43000.0 10.819, 44000.0 11.561, 45000.0 9.452, 46000.0 8.838, 47000.0 11.453, 48000.0 8.725, 49000.0 11.78, 50000.0 8.779, 51000.0 9.155, 52000.0 13.129, 53000.0 9.459, 54000.0 11.151, 55000.0 8.972, 56000.0 8.793, 57000.0 11.817, 58000.0 9.738, 59000.0 11.307, 60000.0 8.856, 61000.0 9.206, 62000.0 11.106, 63000.0 9.27, 64000.0 8.803, 65000.0 11.261, 66000.0 9.041, 67000.0 11.252, 68000.0 8.761, 69000.0 9.228, 70000.0 11.08, 71000.0 10.192, 72000.0 10.966, 73000.0 9.281, 74000.0 9.081, 75000.0 11.709, 76000.0 9.203, 77000.0 11.511, 78000.0 8.712, 79000.0 9.035, 80000.0 11.408, 81000.0 9.316, 82000.0 8.787, 83000.0 11.38, 84000.0 8.737, 85000.0 11.535, 86000.0 8.731, 87000.0 8.736, 88000.0 11.453, 89000.0 8.819, 90000.0 11.252, 91000.0 9.074, 92000.0 9.964, 93000.0 11.144, 94000.0 8.856, 95000.0 11.369, 96000.0 8.817, 97000.0 8.97, 98000.0 11.108, 99000.0 8.925}
;"SynchronizedHahMap :" {0 20.113, 1000.0 18.521, 2000.0 15.409, 3000.0 18.213, 4000.0 15.364, 5000.0 40.944, 6000.0 18.172, 7000.0 9.755, 8000.0 9.824, 9000.0 14.198, 10000.0 12.863, 11000.0 8.511, 12000.0 11.664, 13000.0 8.738, 14000.0 8.862, 15000.0 10.731, 16000.0 8.919, 17000.0 11.792, 18000.0 8.612, 19000.0 8.431, 20000.0 11.011, 21000.0 8.457, 22000.0 8.379, 23000.0 11.761, 24000.0 8.538, 25000.0 8.212, 26000.0 9.553, 27000.0 8.056, 28000.0 9.76, 29000.0 7.609, 30000.0 7.774, 31000.0 9.789, 32000.0 7.75, 33000.0 7.695, 34000.0 9.83, 35000.0 7.542, 36000.0 8.297, 37000.0 10.025, 38000.0 7.67, 39000.0 7.842, 40000.0 9.477, 41000.0 7.581, 42000.0 9.89, 43000.0 7.62, 44000.0 7.693, 45000.0 9.592, 46000.0 7.818, 47000.0 7.621, 48000.0 10.189, 49000.0 7.659, 50000.0 7.602, 51000.0 9.796, 52000.0 7.567, 53000.0 7.81, 54000.0 11.031, 55000.0 7.693, 56000.0 9.976, 57000.0 7.581, 58000.0 7.974, 59000.0 9.654, 60000.0 7.884, 61000.0 7.565, 62000.0 9.578, 63000.0 7.734, 64000.0 7.711, 65000.0 9.831, 66000.0 7.484, 67000.0 9.806, 68000.0 7.545, 69000.0 7.581, 70000.0 9.884, 71000.0 7.514, 72000.0 7.841, 73000.0 9.692, 74000.0 8.166, 75000.0 7.721, 76000.0 9.62, 77000.0 7.908, 78000.0 7.508, 79000.0 9.61, 80000.0 7.937, 81000.0 9.994, 82000.0 7.723, 83000.0 7.823, 84000.0 9.747, 85000.0 7.496, 86000.0 7.68, 87000.0 9.893, 88000.0 7.51, 89000.0 7.96, 90000.0 9.376, 91000.0 7.297, 92000.0 7.135, 93000.0 8.869, 94000.0 8.799, 95000.0 9.275, 96000.0 7.057, 97000.0 7.145, 98000.0 8.898, 99000.0 7.284}
;"NonBlockingHashMap :" {0 100.115, 10000.0 93.291, 20000.0 125.1, 30000.0 106.76, 40000.0 102.445, 50000.0 104.06, 60000.0 102.851, 70000.0 102.136, 80000.0 102.138, 90000.0 100.485}
;"SynchronizedHahMap :" {0 100.976, 10000.0 111.541, 20000.0 87.27, 30000.0 86.695, 40000.0 86.453, 50000.0 84.431, 60000.0 86.41, 70000.0 84.511, 80000.0 86.09, 90000.0 85.057}
;"NonBlockingHashMap :" {0 1561.297}
;"SynchronizedHahMap :" {0 1216.975}
;; Trial #4 (inserted 4 second sleep after each test)
;"time for NBHM: " 1673.595
;"time for SHM: " 144.781
;"NonBlockingHashMap :" {0 143.08, 1000.0 16.874, 2000.0 32.132, 3000.0 71.074, 4000.0 137.428, 5000.0 14.84, 6000.0 98.613, 7000.0 27.065, 8000.0 26.999, 9000.0 21.537, 10000.0 140.213, 11000.0 32.805, 12000.0 8.951, 13000.0 18.303, 14000.0 7.578, 15000.0 8.191, 16000.0 14.707, 17000.0 7.336, 18000.0 22.608, 19000.0 125.125, 20000.0 19.794, 21000.0 12.284, 22000.0 11.182, 23000.0 12.865, 24000.0 10.493, 25000.0 13.985, 26000.0 9.201, 27000.0 8.132, 28000.0 18.293, 29000.0 13.034, 30000.0 54.289, 31000.0 73.277, 32000.0 17.454, 33000.0 9.09, 34000.0 9.53, 35000.0 7.88, 36000.0 9.509, 37000.0 7.697, 38000.0 7.175, 39000.0 9.816, 40000.0 7.606, 41000.0 8.712, 42000.0 7.463, 43000.0 7.529, 44000.0 8.568, 45000.0 8.164, 46000.0 7.301, 47000.0 9.183, 48000.0 7.802, 49000.0 9.929, 50000.0 6.794, 51000.0 6.871, 52000.0 9.91, 53000.0 7.044, 54000.0 14.204, 55000.0 8.212, 56000.0 6.792, 57000.0 8.499, 58000.0 7.141, 59000.0 12.661, 60000.0 7.663, 61000.0 7.748, 62000.0 9.02, 63000.0 10.19, 64000.0 8.072, 65000.0 9.354, 66000.0 7.518, 67000.0 9.32, 68000.0 8.133, 69000.0 6.87, 70000.0 10.968, 71000.0 7.378, 72000.0 9.613, 73000.0 7.061, 74000.0 9.474, 75000.0 10.951, 76000.0 7.617, 77000.0 10.351, 78000.0 8.203, 79000.0 7.287, 80000.0 8.735, 81000.0 9.157, 82000.0 7.143, 83000.0 9.476, 84000.0 7.017, 85000.0 10.215, 86000.0 7.866, 87000.0 7.986, 88000.0 9.791, 89000.0 7.043, 90000.0 10.547, 91000.0 6.78, 92000.0 12.249, 93000.0 17.754, 94000.0 21.088, 95000.0 9.903, 96000.0 6.857, 97000.0 7.036, 98000.0 9.289, 99000.0 7.109}
;"SynchronizedHahMap :" {0 19.051, 1000.0 15.283, 2000.0 14.082, 3000.0 21.372, 4000.0 14.944, 5000.0 38.266, 6000.0 12.436, 7000.0 31.464, 8000.0 13.771, 9000.0 13.934, 10000.0 23.516, 11000.0 7.095, 12000.0 9.566, 13000.0 7.202, 14000.0 7.019, 15000.0 15.579, 16000.0 11.283, 17000.0 10.118, 18000.0 7.0, 19000.0 8.394, 20000.0 9.248, 21000.0 8.732, 22000.0 7.194, 23000.0 11.258, 24000.0 7.144, 25000.0 6.851, 26000.0 11.331, 27000.0 7.117, 28000.0 10.421, 29000.0 6.705, 30000.0 7.234, 31000.0 19.692, 32000.0 7.844, 33000.0 6.764, 34000.0 9.964, 35000.0 8.07, 36000.0 7.523, 37000.0 10.813, 38000.0 7.383, 39000.0 7.362, 40000.0 9.72, 41000.0 7.611, 42000.0 9.644, 43000.0 8.065, 44000.0 7.984, 45000.0 9.94, 46000.0 7.445, 47000.0 6.938, 48000.0 9.128, 49000.0 7.569, 50000.0 6.92, 51000.0 9.117, 52000.0 7.864, 53000.0 6.819, 54000.0 10.067, 55000.0 7.276, 56000.0 8.562, 57000.0 8.091, 58000.0 9.411, 59000.0 8.948, 60000.0 6.808, 61000.0 8.121, 62000.0 9.082, 63000.0 7.182, 64000.0 6.689, 65000.0 9.435, 66000.0 6.785, 67000.0 11.126, 68000.0 8.659, 69000.0 10.715, 70000.0 8.624, 71000.0 7.049, 72000.0 10.528, 73000.0 9.704, 74000.0 6.902, 75000.0 7.307, 76000.0 9.195, 77000.0 7.062, 78000.0 6.697, 79000.0 10.221, 80000.0 6.91, 81000.0 10.392, 82000.0 6.669, 83000.0 6.741, 84000.0 11.426, 85000.0 6.773, 86000.0 20.821, 87000.0 9.459, 88000.0 6.646, 89000.0 8.488, 90000.0 8.877, 91000.0 6.743, 92000.0 7.894, 93000.0 8.945, 94000.0 8.557, 95000.0 9.633, 96000.0 6.891, 97000.0 7.708, 98000.0 8.802, 99000.0 7.936}
;"NonBlockingHashMap :" {0 89.255, 10000.0 80.523, 20000.0 75.744, 30000.0 74.856, 40000.0 72.155, 50000.0 72.197, 60000.0 75.193, 70000.0 74.841, 80000.0 72.334, 90000.0 74.775}
;"SynchronizedHahMap :" {0 74.978, 10000.0 86.372, 20000.0 70.747, 30000.0 71.268, 40000.0 71.619, 50000.0 70.142, 60000.0 72.615, 70000.0 68.514, 80000.0 70.17, 90000.0 68.869}
;"NonBlockingHashMap :" {0 1054.464}
;"SynchronizedHahMap :" {0 897.282}
;; Trial #5 (inserted 4 second sleep after each test, broke out test into two functions w/ type hinting, warn-on-reflection set to true)
;"time for NBHM: " 1426.056
;"time for SHM: " 223.002
;"NonBlockingHashMap, chunk=" 1000.0 ", " {0 5.641, 1000.0 46.381, 2000.0 5.084, 3000.0 5.45, 4000.0 5.288, 5000.0 5.323, 6000.0 19.884, 7000.0 6.419, 8000.0 10.253, 9000.0 16.361, 10000.0 26.926, 11000.0 6.114, 12000.0 4.131, 13000.0 3.97, 14000.0 3.378, 15000.0 3.457, 16000.0 6.189, 17000.0 3.571, 18000.0 3.491, 19000.0 3.441, 20000.0 3.557, 21000.0 5.005, 22000.0 4.108, 23000.0 3.509, 24000.0 3.425, 25000.0 3.422, 26000.0 5.318, 27000.0 3.649, 28000.0 3.421, 29000.0 3.441, 30000.0 3.738, 31000.0 5.217, 32000.0 3.587, 33000.0 3.417, 34000.0 3.564, 35000.0 3.355, 36000.0 6.266, 37000.0 3.513, 38000.0 3.398, 39000.0 3.364, 40000.0 3.499, 41000.0 5.169, 42000.0 3.406, 43000.0 3.631, 44000.0 3.693, 45000.0 3.67, 46000.0 5.337, 47000.0 3.628, 48000.0 3.534, 49000.0 3.575, 50000.0 3.41, 51000.0 3.528, 52000.0 5.211, 53000.0 3.691, 54000.0 3.446, 55000.0 3.6, 56000.0 3.41, 57000.0 6.278, 58000.0 3.599, 59000.0 3.441, 60000.0 3.47, 61000.0 3.417, 62000.0 5.012, 63000.0 3.391, 64000.0 3.757, 65000.0 3.396, 66000.0 3.549, 67000.0 5.146, 68000.0 3.361, 69000.0 3.692, 70000.0 3.393, 71000.0 3.597, 72000.0 5.166, 73000.0 3.378, 74000.0 3.628, 75000.0 3.426, 76000.0 3.435, 77000.0 6.285, 78000.0 3.395, 79000.0 3.377, 80000.0 3.65, 81000.0 3.558, 82000.0 5.0, 83000.0 3.439, 84000.0 3.723, 85000.0 3.587, 86000.0 3.391, 87000.0 5.202, 88000.0 3.371, 89000.0 3.468, 90000.0 3.748, 91000.0 3.387, 92000.0 5.177, 93000.0 3.428, 94000.0 4.016, 95000.0 3.725, 96000.0 3.618, 97000.0 6.171, 98000.0 3.427, 99000.0 3.455}
;"SynchronizedHahMap, chunk=" 1000.0 ", " {0 3.199, 1000.0 0.478, 2000.0 0.467, 3000.0 0.504, 4000.0 0.476, 5000.0 0.44, 6000.0 0.442, 7000.0 0.44, 8000.0 0.449, 9000.0 0.439, 10000.0 0.47, 11000.0 0.444, 12000.0 0.446, 13000.0 0.443, 14000.0 0.455, 15000.0 0.456, 16000.0 0.499, 17000.0 2.042, 18000.0 0.428, 19000.0 0.408, 20000.0 0.412, 21000.0 0.405, 22000.0 0.409, 23000.0 0.405, 24000.0 0.476, 25000.0 0.527, 26000.0 0.496, 27000.0 0.413, 28000.0 0.405, 29000.0 0.437, 30000.0 0.441, 31000.0 2.048, 32000.0 0.408, 33000.0 0.417, 34000.0 0.405, 35000.0 0.404, 36000.0 0.409, 37000.0 1.329, 38000.0 0.479, 39000.0 0.405, 40000.0 2.497, 41000.0 0.409, 42000.0 0.216, 43000.0 0.145, 44000.0 0.143, 45000.0 0.15, 46000.0 0.144, 47000.0 0.143, 48000.0 0.149, 49000.0 0.144, 50000.0 0.143, 51000.0 0.149, 52000.0 0.143, 53000.0 0.143, 54000.0 0.144, 55000.0 0.146, 56000.0 0.147, 57000.0 0.144, 58000.0 0.143, 59000.0 0.146, 60000.0 0.143, 61000.0 0.144, 62000.0 0.144, 63000.0 0.143, 64000.0 0.148, 65000.0 0.146, 66000.0 0.144, 67000.0 0.143, 68000.0 0.144, 69000.0 0.143, 70000.0 0.157, 71000.0 0.145, 72000.0 0.144, 73000.0 0.146, 74000.0 0.143, 75000.0 0.144, 76000.0 0.145, 77000.0 0.144, 78000.0 0.144, 79000.0 0.148, 80000.0 0.143, 81000.0 0.143, 82000.0 0.145, 83000.0 0.145, 84000.0 0.143, 85000.0 0.146, 86000.0 0.144, 87000.0 0.143, 88000.0 0.144, 89000.0 0.144, 90000.0 0.147, 91000.0 0.144, 92000.0 0.145, 93000.0 0.144, 94000.0 0.143, 95000.0 0.143, 96000.0 0.144, 97000.0 0.144, 98000.0 0.144, 99000.0 0.143}
;"NonBlockingHashMap, chunk=" 10000.0 ", " {0 58.202, 10000.0 42.603, 20000.0 41.56, 30000.0 39.688, 40000.0 39.221, 50000.0 39.221, 60000.0 39.262, 70000.0 39.521, 80000.0 37.606, 90000.0 39.59}
;"SynchronizedHahMap, chunk=" 10000.0 ", " {0 4.118, 10000.0 1.471, 20000.0 1.448, 30000.0 1.509, 40000.0 2.61, 50000.0 1.545, 60000.0 1.459, 70000.0 1.53, 80000.0 1.487, 90000.0 1.441}
;"NonBlockingHashMap, chunk=" 100000.0 ", "{0 654.943}
;"SynchronizedHahMap, chunk=" 100000.0 ", "{0 78.421}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment