Warning: These results are preliminary - use with caution (they may e.g. be from different browser versions).Official results are published on my blog.

The benchmark was run on a MacBook Pro 15 (2,5 GHz i7, 16 GB RAM, OSX 10.12.5, Chrome 58.0.3029.110 (64-bit))

Keyed results

Keyed implementations create an association between the domain data and a dom element by assigning a 'key'. If data changes the dom element with that key will be updated. In consequence inserting or deleting an element in the data array causes a corresponding change to the dom.

Duration in milliseconds ± standard deviation (Slowdown = Duration / Fastest)

Nameangular-v1.6.3-keyedangular-v4.1.2-keyedbinding.scala-v10.0.1bobril-v7.1.2dio-v7.0.1-keyeddomvm-v2.1.4-keyedelm-v0.18.0ember-v2.13.0glimmer-v0.3.10inferno-v3.1.2-keyedivi-v0.7.0kivi-v1.0.0-rc2knockout-v3.4.1marionette-v3.3.1marko-v4.3.0mithril-v1.1.1nx-v1.0.0-beta.2.0.1-keyedpico-dom-v1.0.0plastiq-v1.33.0preact-v7.1.0ractive-edge-keyedractive-v0.8.12-keyedreact-lite-v0.15.30react-v15.5.4-easy-state-v1.0.3react-v15.5.4-keyedreact-v15.5.4-mobX-v3.1.9react-v15.5.4-redux-v3.6.0redom-v2.6.1-keyedredom-v2.6.4-keyedrx-domh-v0.0.2-rxjs-v5.3.0surplus-v0.4.0-keyedsvelte-v1.20.2-keyedvanillajs-keyedvidom-v0.9.8vue-v2.3.3-keyed
create rows
Duration for creating 1000 rows after the page loaded.
251.88.0
(1.8)
193.17.9
(1.4)
362.39.6
(2.6)
152.68.5
(1.1)
145.05.1
(1.0)
148.24.0
(1.1)
173.712.5
(1.3)
344.613.8
(2.5)
326.314.7
(2.4)
148.95.0
(1.1)
144.25.8
(1.0)
142.05.3
(1.0)
358.29.0
(2.6)
703.517.3
(5.1)
162.17.1
(1.2)
164.25.8
(1.2)
236.511.9
(1.7)
151.08.7
(1.1)
176.511.9
(1.3)
182.28.3
(1.3)
300.110.7
(2.2)
331.113.1
(2.4)
170.09.6
(1.2)
222.319.6
(1.6)
188.910.9
(1.4)
243.99.4
(1.8)
212.214.2
(1.5)
179.99.4
(1.3)
156.96.3
(1.1)
550.515.2
(4.0)
146.15.4
(1.1)
144.85.3
(1.0)
138.55.8
(1.0)
173.18.5
(1.3)
166.78.6
(1.2)
replace all rows
Duration for updating all 1000 rows of the table (with 5 warmup iterations).
278.316.7
(1.9)
197.45.3
(1.3)
222.210.1
(1.5)
168.67.2
(1.1)
167.036.7
(1.1)
160.15.1
(1.1)
177.86.2
(1.2)
292.712.1
(2.0)
263.08.1
(1.8)
155.15.0
(1.0)
153.26.4
(1.0)
151.75.2
(1.0)
369.719.6
(2.5)
518.912.0
(3.5)
177.64.9
(1.2)
177.46.7
(1.2)
1098.030.1
(7.4)
169.73.7
(1.1)
177.85.5
(1.2)
200.96.8
(1.4)
317.817.5
(2.1)
339.85.7
(2.3)
235.46.8
(1.6)
221.58.4
(1.5)
201.06.4
(1.4)
229.212.2
(1.5)
206.77.3
(1.4)
198.212.3
(1.3)
166.95.0
(1.1)
1548.757.9
(10.5)
149.55.0
(1.0)
160.94.7
(1.1)
148.04.5
(1.0)
166.16.8
(1.1)
168.55.0
(1.1)
partial update
Time to update the text of every 10th row (with 5 warmup iterations).
12.52.0
(1.0)
13.04.5
(1.0)
13.22.2
(1.0)
13.02.0
(1.0)
15.81.0
(1.0)
14.11.8
(1.0)
27.17.5
(1.7)
17.11.7
(1.1)
23.37.8
(1.5)
13.62.4
(1.0)
14.34.2
(1.0)
12.32.9
(1.0)
14.04.5
(1.0)
38.41.6
(2.4)
21.36.5
(1.3)
18.73.0
(1.2)
15.34.9
(1.0)
14.22.5
(1.0)
19.77.2
(1.2)
15.32.1
(1.0)
14.74.8
(1.0)
18.33.3
(1.1)
29.31.8
(1.8)
16.00.9
(1.0)
16.52.3
(1.0)
16.01.8
(1.0)
18.01.6
(1.1)
14.62.2
(1.0)
15.63.6
(1.0)
276.113.4
(17.3)
13.83.4
(1.0)
13.13.0
(1.0)
14.14.7
(1.0)
15.05.2
(1.0)
17.32.9
(1.1)
select row
Duration to highlight a row in response to a click on the row. (with 5 warmup iterations).
8.13.6
(1.0)
3.42.3
(1.0)
11.14.9
(1.0)
9.75.4
(1.0)
10.23.8
(1.0)
9.93.7
(1.0)
13.64.2
(1.0)
8.62.4
(1.0)
13.65.6
(1.0)
9.54.1
(1.0)
7.74.3
(1.0)
8.33.4
(1.0)
11.42.6
(1.0)
8.24.7
(1.0)
8.93.7
(1.0)
11.53.3
(1.0)
12.63.5
(1.0)
8.14.3
(1.0)
10.53.9
(1.0)
8.73.9
(1.0)
9.73.3
(1.0)
10.84.7
(1.0)
20.11.1
(1.3)
10.13.8
(1.0)
8.83.4
(1.0)
10.13.8
(1.0)
8.72.9
(1.0)
10.23.9
(1.0)
9.73.5
(1.0)
6.93.8
(1.0)
8.25.3
(1.0)
10.05.2
(1.0)
10.14.7
(1.0)
10.33.7
(1.0)
9.31.7
(1.0)
swap rows
Time to swap 2 rows on a 1K table. (with 5 warmup iterations).
14.71.5
(1.0)
13.41.0
(1.0)
12.31.3
(1.0)
12.11.1
(1.0)
15.30.5
(1.0)
16.40.9
(1.0)
21.34.5
(1.3)
16.41.5
(1.0)
19.01.7
(1.2)
11.90.9
(1.0)
12.01.5
(1.0)
11.40.7
(1.0)
14.71.2
(1.0)
135.66.0
(8.5)
24.94.5
(1.6)
19.71.1
(1.2)
140.84.1
(8.8)
11.70.5
(1.0)
12.81.2
(1.0)
13.61.0
(1.0)
18.91.8
(1.2)
19.61.9
(1.2)
30.01.8
(1.9)
18.01.7
(1.1)
14.70.9
(1.0)
18.01.2
(1.1)
17.11.3
(1.1)
14.11.3
(1.0)
12.90.8
(1.0)
118.83.7
(7.4)
12.30.8
(1.0)
119.13.4
(7.4)
11.41.1
(1.0)
16.21.7
(1.0)
18.31.5
(1.1)
remove row
Duration to remove a row. (with 5 warmup iterations).
47.42.4
(1.1)
46.13.2
(1.1)
43.62.9
(1.0)
50.54.7
(1.2)
48.82.4
(1.2)
44.52.8
(1.1)
76.63.9
(1.8)
49.13.2
(1.2)
60.97.2
(1.4)
44.82.5
(1.1)
46.02.6
(1.1)
46.42.7
(1.1)
48.32.3
(1.1)
46.92.2
(1.1)
49.53.5
(1.2)
52.02.8
(1.2)
147.85.9
(3.5)
43.31.8
(1.0)
53.95.1
(1.3)
45.52.1
(1.1)
60.74.2
(1.4)
57.62.8
(1.4)
63.02.6
(1.5)
55.52.1
(1.3)
47.23.2
(1.1)
53.72.1
(1.3)
52.41.7
(1.2)
126.94.0
(3.0)
128.15.0
(3.0)
124.03.9
(2.9)
44.71.8
(1.1)
42.32.3
(1.0)
42.81.9
(1.0)
54.74.7
(1.3)
52.62.7
(1.2)
create many rows
Duration to create 10,000 rows
3108.72162.2
(2.3)
1946.041.8
(1.5)
2572.755.2
(1.9)
1461.724.8
(1.1)
1501.545.9
(1.1)
1523.340.0
(1.1)
1707.148.3
(1.3)
2569.356.3
(1.9)
2543.442.8
(1.9)
1487.827.6
(1.1)
1424.522.2
(1.1)
1470.521.3
(1.1)
3485.6114.0
(2.6)
4578.292.2
(3.4)
1629.732.9
(1.2)
1691.046.1
(1.3)
2360.432.4
(1.8)
1493.823.7
(1.1)
1794.130.0
(1.3)
1862.025.0
(1.4)
2770.266.6
(2.1)
2988.472.6
(2.2)
2300.951.4
(1.7)
2027.554.5
(1.5)
1852.429.0
(1.4)
2217.371.5
(1.7)
1931.735.6
(1.5)
1881.156.0
(1.4)
1575.631.7
(1.2)
4846.450.7
(3.6)
1395.423.0
(1.0)
1420.835.4
(1.1)
1331.122.2
(1.0)
1570.429.7
(1.2)
1587.533.9
(1.2)
append rows to large table
Duration for adding 1000 rows on a table of 10,000 rows.
454.842.1
(1.6)
324.610.1
(1.1)
367.333.1
(1.3)
298.28.8
(1.0)
371.711.7
(1.3)
319.47.4
(1.1)
346.219.8
(1.2)
524.223.6
(1.8)
489.634.1
(1.7)
290.210.7
(1.0)
307.610.8
(1.1)
296.67.1
(1.0)
5127.3132.0
(17.8)
4026.2214.5
(14.0)
387.311.7
(1.3)
463.022.5
(1.6)
364.710.4
(1.3)
309.97.7
(1.1)
345.412.3
(1.2)
349.012.7
(1.2)
536.824.3
(1.9)
449.09.2
(1.6)
2087.565.2
(7.3)
394.09.0
(1.4)
345.610.4
(1.2)
459.847.2
(1.6)
366.410.9
(1.3)
341.214.4
(1.2)
315.18.8
(1.1)
1921.826.8
(6.7)
291.08.3
(1.0)
287.710.3
(1.0)
295.312.8
(1.0)
336.412.8
(1.2)
399.511.0
(1.4)
clear rows
Duration to clear the table filled with 10.000 rows.
817.637.2
(4.7)
379.911.3
(2.2)
425.374.2
(2.4)
218.43.3
(1.2)
212.84.2
(1.2)
203.97.1
(1.2)
228.713.9
(1.3)
303.974.7
(1.7)
209.06.6
(1.2)
225.76.7
(1.3)
207.36.8
(1.2)
204.24.4
(1.2)
579.647.5
(3.3)
1082.723.6
(6.2)
302.18.2
(1.7)
252.514.4
(1.4)
269.519.3
(1.5)
266.49.3
(1.5)
229.89.8
(1.3)
332.17.5
(1.9)
478.631.0
(2.7)
634.98.4
(3.6)
344.126.4
(2.0)
416.217.5
(2.4)
398.48.2
(2.3)
495.128.8
(2.8)
410.99.8
(2.4)
236.45.4
(1.4)
235.95.1
(1.3)
536.512.4
(3.1)
210.95.7
(1.2)
258.15.0
(1.5)
174.84.2
(1.0)
217.34.6
(1.2)
254.55.0
(1.5)
startup time
Time for loading, parsing and starting up
118.15.1
(2.9)
84.32.6
(2.1)
96.12.8
(2.4)
55.17.0
(1.4)
45.36.9
(1.1)
44.37.4
(1.1)
65.96.0
(1.6)
245.25.6
(6.0)
80.43.5
(2.0)
45.12.1
(1.1)
46.47.6
(1.1)
45.68.7
(1.1)
60.32.5
(1.5)
89.33.0
(2.2)
47.22.5
(1.2)
47.55.7
(1.2)
58.35.0
(1.4)
42.47.6
(1.0)
45.94.3
(1.1)
44.22.2
(1.1)
94.52.2
(2.3)
94.02.6
(2.3)
44.92.6
(1.1)
59.82.1
(1.5)
70.02.9
(1.7)
87.64.3
(2.2)
93.86.9
(2.3)
41.56.7
(1.0)
40.96.6
(1.0)
100.46.8
(2.5)
41.57.7
(1.0)
42.19.7
(1.0)
40.59.5
(1.0)
49.06.0
(1.2)
56.62.5
(1.4)
slowdown geometric mean1.691.311.501.111.101.071.351.721.551.071.061.062.103.481.271.242.131.091.191.211.691.771.791.381.301.511.411.281.214.431.041.301.001.141.22

Memory allocation in MBs ± standard deviation

Nameangular-v1.6.3-keyedangular-v4.1.2-keyedbinding.scala-v10.0.1bobril-v7.1.2dio-v7.0.1-keyeddomvm-v2.1.4-keyedelm-v0.18.0ember-v2.13.0glimmer-v0.3.10inferno-v3.1.2-keyedivi-v0.7.0kivi-v1.0.0-rc2knockout-v3.4.1marionette-v3.3.1marko-v4.3.0mithril-v1.1.1nx-v1.0.0-beta.2.0.1-keyedpico-dom-v1.0.0plastiq-v1.33.0preact-v7.1.0ractive-edge-keyedractive-v0.8.12-keyedreact-lite-v0.15.30react-v15.5.4-easy-state-v1.0.3react-v15.5.4-keyedreact-v15.5.4-mobX-v3.1.9react-v15.5.4-redux-v3.6.0redom-v2.6.1-keyedredom-v2.6.4-keyedrx-domh-v0.0.2-rxjs-v5.3.0surplus-v0.4.0-keyedsvelte-v1.20.2-keyedvanillajs-keyedvidom-v0.9.8vue-v2.3.3-keyed
ready memory
Memory usage after page load.
4.90.2
(1.5)
4.80.0
(1.4)
6.20.1
(1.8)
3.60.0
(1.1)
3.50.0
(1.0)
3.50.0
(1.0)
4.00.1
(1.2)
8.70.1
(2.6)
4.60.1
(1.4)
3.50.0
(1.0)
3.60.0
(1.1)
3.50.1
(1.0)
3.80.0
(1.1)
4.70.1
(1.4)
3.60.0
(1.1)
3.50.0
(1.0)
3.90.1
(1.2)
3.50.0
(1.0)
3.50.0
(1.0)
3.60.1
(1.1)
4.70.1
(1.4)
4.80.1
(1.4)
3.70.0
(1.1)
4.80.1
(1.4)
4.50.1
(1.3)
5.40.1
(1.6)
4.90.1
(1.5)
3.70.1
(1.1)
3.50.0
(1.0)
4.80.0
(1.4)
3.40.0
(1.0)
3.40.0
(1.0)
3.40.0
(1.0)
3.60.0
(1.1)
3.80.0
(1.1)
run memory
Memory usage after adding 1000 rows.
13.00.1
(3.2)
10.90.1
(2.7)
20.20.1
(5.0)
6.00.0
(1.5)
7.50.0
(1.9)
7.30.0
(1.8)
7.90.1
(2.0)
16.50.0
(4.1)
11.90.1
(3.0)
5.70.0
(1.4)
5.60.1
(1.4)
5.70.1
(1.4)
24.90.1
(6.2)
12.40.2
(3.1)
5.90.0
(1.5)
7.40.0
(1.8)
9.60.0
(2.4)
5.20.1
(1.3)
9.00.3
(2.2)
6.70.0
(1.7)
18.70.1
(4.7)
20.50.1
(5.1)
14.00.1
(3.5)
11.00.0
(2.7)
9.70.1
(2.4)
14.30.1
(3.6)
10.80.1
(2.7)
5.40.1
(1.3)
5.40.0
(1.4)
8.70.1
(2.2)
5.10.0
(1.3)
4.70.1
(1.2)
4.00.0
(1.0)
6.50.0
(1.6)
7.50.1
(1.9)

Non keyed results

Non keyed implementations are allowed to reuse existing dom elements. In consequence inserting or deleting an element in the data array might append after or delete the last table row and update the contents of all elements after the inserting or deletion index. This can perform better, but can cause problems if dom state is modified externally.

Duration in milliseconds ± standard deviation (Slowdown = Duration / Fastest)

NameDatum-v0.8.0angular-v4.1.2-non-keyedaurelia-v1.1.2choo-v5.4.0cyclejs-dom-v17.1.0dio-v7.0.1-non-keyeddomvm-v2.1.4-non-keyedhyperapp-v0.9.1inferno-v3.1.2-non-keyednx-v1.0.0-beta.2.0.1-non-keyedpolymer-v2.0.0ractive-edge-non-keyedractive-v0.8.12-non-keyedreact-v15.5.4-non-keyedredom-v2.6.1-non-keyedredom-v2.6.4-non-keyedriot-v3.5.0simulacra-v2.1.1slim-js-v2.9.1stem-v0.2.70surplus-v0.4.0-nonkeyedsvelte-v1.20.2-non-keyedtsers-v1.0.0vanillajs-non-keyedvue-v2.3.3-non-keyed
create rows
Duration for creating 1000 rows after the page loaded.
371.320.2
(2.7)
198.810.1
(1.4)
185.48.4
(1.3)
166.08.9
(1.2)
154.76.9
(1.1)
153.56.5
(1.1)
152.04.6
(1.1)
151.78.3
(1.1)
147.05.7
(1.1)
217.111.4
(1.6)
202.36.7
(1.5)
296.59.1
(2.2)
323.811.1
(2.4)
187.99.0
(1.4)
178.89.4
(1.3)
154.66.9
(1.1)
259.213.0
(1.9)
170.911.7
(1.2)
304.914.6
(2.2)
238.116.8
(1.7)
138.75.2
(1.0)
142.14.3
(1.0)
257.98.1
(1.9)
137.86.2
(1.0)
168.110.1
(1.2)
replace all rows
Duration for updating all 1000 rows of the table (with 5 warmup iterations).
1733.4806.6
(29.4)
59.64.8
(1.0)
89.84.8
(1.5)
146.86.1
(2.5)
71.53.6
(1.2)
64.93.4
(1.1)
66.72.8
(1.1)
86.24.2
(1.5)
61.33.7
(1.0)
73.02.9
(1.2)
69.82.7
(1.2)
69.22.4
(1.2)
69.33.2
(1.2)
77.52.3
(1.3)
64.81.9
(1.1)
63.74.0
(1.1)
71.33.1
(1.2)
62.33.0
(1.1)
71.02.1
(1.2)
242.58.5
(4.1)
58.94.2
(1.0)
60.16.3
(1.0)
108.63.3
(1.8)
64.07.9
(1.1)
68.03.4
(1.2)
partial update
Time to update the text of every 10th row (with 5 warmup iterations).
12.72.3
(1.0)
13.23.8
(1.0)
12.22.4
(1.0)
103.76.3
(6.5)
21.92.9
(1.4)
15.61.1
(1.0)
14.33.0
(1.0)
25.81.3
(1.6)
14.16.2
(1.0)
13.02.1
(1.0)
19.41.2
(1.2)
13.72.0
(1.0)
16.61.2
(1.0)
16.32.6
(1.0)
14.12.8
(1.0)
14.12.5
(1.0)
19.01.1
(1.2)
14.04.6
(1.0)
20.61.3
(1.3)
16.91.8
(1.1)
13.82.4
(1.0)
17.47.0
(1.1)
34.61.7
(2.2)
12.43.2
(1.0)
17.11.5
(1.1)
select row
Duration to highlight a row in response to a click on the row. (with 5 warmup iterations).
9.53.3
(1.0)
4.12.0
(1.0)
13.61.6
(1.0)
102.46.3
(6.4)
13.61.5
(1.0)
10.44.9
(1.0)
9.23.5
(1.0)
17.81.4
(1.1)
9.04.0
(1.0)
11.63.3
(1.0)
9.93.7
(1.0)
9.83.4
(1.0)
9.93.3
(1.0)
8.23.2
(1.0)
9.34.4
(1.0)
7.73.6
(1.0)
11.22.1
(1.0)
8.64.2
(1.0)
12.81.3
(1.0)
10.74.8
(1.0)
10.63.6
(1.0)
9.45.1
(1.0)
22.62.0
(1.4)
8.44.3
(1.0)
10.52.3
(1.0)
swap rows
Time to swap 2 rows on a 1K table. (with 5 warmup iterations).
14.11.2
(1.0)
8.70.8
(1.0)
12.41.2
(1.0)
102.06.7
(6.4)
19.51.0
(1.2)
11.70.7
(1.0)
9.61.4
(1.0)
23.61.1
(1.5)
8.61.1
(1.0)
9.60.7
(1.0)
12.91.0
(1.0)
8.00.7
(1.0)
8.60.9
(1.0)
11.61.2
(1.0)
9.70.9
(1.0)
9.10.8
(1.0)
18.61.4
(1.2)
8.71.3
(1.0)
19.31.7
(1.2)
8.20.6
(1.0)
9.80.9
(1.0)
8.21.1
(1.0)
30.92.5
(1.9)
8.00.8
(1.0)
14.51.1
(1.0)
remove row
Duration to remove a row. (with 5 warmup iterations).
47.72.7
(1.4)
34.42.6
(1.0)
59.72.7
(1.7)
130.28.9
(3.8)
46.01.9
(1.3)
37.22.0
(1.1)
42.41.8
(1.2)
59.32.1
(1.7)
37.72.3
(1.1)
51.62.5
(1.5)
47.52.1
(1.4)
44.62.8
(1.3)
44.62.2
(1.3)
53.12.4
(1.5)
40.73.9
(1.2)
38.92.9
(1.1)
47.93.2
(1.4)
43.92.2
(1.3)
51.82.0
(1.5)
48.22.7
(1.4)
36.73.9
(1.1)
37.95.3
(1.1)
68.52.9
(2.0)
35.83.6
(1.0)
42.72.0
(1.2)
create many rows
Duration to create 10,000 rows
10537.4856.5
(7.8)
1974.437.4
(1.5)
1875.260.7
(1.4)
2688.142.5
(2.0)
1590.630.2
(1.2)
1473.341.5
(1.1)
1563.843.8
(1.2)
1572.823.3
(1.2)
1448.524.6
(1.1)
2213.936.0
(1.6)
2326.444.0
(1.7)
2712.270.0
(2.0)
2973.375.8
(2.2)
1851.434.1
(1.4)
1843.765.4
(1.4)
1555.628.3
(1.2)
2661.742.3
(2.0)
2012.148.5
(1.5)
3153.5100.9
(2.3)
2336.072.9
(1.7)
1384.729.1
(1.0)
1408.131.9
(1.0)
2848.754.2
(2.1)
1346.430.1
(1.0)
1587.831.6
(1.2)
append rows to large table
Duration for adding 1000 rows on a table of 10,000 rows.
2608.1852.5
(8.9)
328.211.3
(1.1)
328.913.7
(1.1)
1719.587.4
(5.8)
435.513.1
(1.5)
367.121.0
(1.2)
304.68.7
(1.0)
540.411.8
(1.8)
301.17.8
(1.0)
363.19.9
(1.2)
710.440.6
(2.4)
450.349.8
(1.5)
421.38.6
(1.4)
351.113.5
(1.2)
343.07.9
(1.2)
318.49.9
(1.1)
2244.7157.9
(7.6)
317.529.2
(1.1)
810.2154.2
(2.8)
376.842.4
(1.3)
310.911.1
(1.1)
295.19.5
(1.0)
667.812.9
(2.3)
294.110.1
(1.0)
399.810.1
(1.4)
clear rows
Duration to clear the table filled with 10.000 rows.
353.486.8
(2.0)
393.89.9
(2.2)
285.513.6
(1.6)
786.822.8
(4.5)
289.96.3
(1.7)
217.75.9
(1.2)
199.35.8
(1.1)
232.17.0
(1.3)
220.74.4
(1.3)
276.427.2
(1.6)
257.47.1
(1.5)
489.130.8
(2.8)
603.562.4
(3.4)
393.09.5
(2.2)
243.53.3
(1.4)
231.26.0
(1.3)
339.843.0
(1.9)
350.99.0
(2.0)
225.54.3
(1.3)
524.253.6
(3.0)
202.06.0
(1.2)
256.15.4
(1.5)
363.78.6
(2.1)
175.34.9
(1.0)
253.95.6
(1.4)
startup time
Time for loading, parsing and starting up
46.36.2
(1.2)
83.32.3
(2.1)
131.43.1
(3.3)
44.93.9
(1.1)
55.13.2
(1.4)
42.06.5
(1.1)
44.16.4
(1.1)
40.46.7
(1.0)
45.62.7
(1.2)
59.23.0
(1.5)
150.54.6
(3.8)
96.93.6
(2.5)
95.53.5
(2.4)
68.31.9
(1.7)
39.46.5
(1.0)
40.63.1
(1.0)
50.32.8
(1.3)
45.07.0
(1.1)
49.95.0
(1.3)
138.54.8
(3.5)
48.28.6
(1.2)
42.89.1
(1.1)
137.03.4
(3.5)
41.08.7
(1.0)
58.22.5
(1.5)
slowdown geometric mean2.671.281.413.351.291.091.091.361.071.301.531.531.581.341.141.091.661.201.521.731.051.082.061.021.20

Memory allocation in MBs ± standard deviation

NameDatum-v0.8.0angular-v4.1.2-non-keyedaurelia-v1.1.2choo-v5.4.0cyclejs-dom-v17.1.0dio-v7.0.1-non-keyeddomvm-v2.1.4-non-keyedhyperapp-v0.9.1inferno-v3.1.2-non-keyednx-v1.0.0-beta.2.0.1-non-keyedpolymer-v2.0.0ractive-edge-non-keyedractive-v0.8.12-non-keyedreact-v15.5.4-non-keyedredom-v2.6.1-non-keyedredom-v2.6.4-non-keyedriot-v3.5.0simulacra-v2.1.1slim-js-v2.9.1stem-v0.2.70surplus-v0.4.0-nonkeyedsvelte-v1.20.2-non-keyedtsers-v1.0.0vanillajs-non-keyedvue-v2.3.3-non-keyed
ready memory
Memory usage after page load.
3.60.0
(1.1)
4.80.0
(1.4)
6.00.1
(1.8)
3.80.0
(1.1)
3.80.0
(1.1)
3.50.0
(1.0)
3.50.0
(1.0)
3.60.1
(1.1)
3.50.0
(1.0)
3.90.0
(1.1)
5.20.1
(1.5)
4.70.1
(1.4)
4.80.1
(1.4)
4.50.1
(1.3)
3.50.0
(1.0)
3.60.1
(1.1)
3.60.0
(1.1)
3.50.0
(1.0)
3.70.0
(1.1)
5.60.1
(1.6)
3.40.0
(1.0)
3.40.0
(1.0)
6.60.1
(1.9)
3.40.0
(1.0)
3.80.0
(1.1)
run memory
Memory usage after adding 1000 rows.
32.60.0
(8.7)
10.90.1
(2.9)
11.30.1
(3.0)
4.50.0
(1.2)
6.70.0
(1.8)
7.50.0
(2.0)
7.00.0
(1.9)
6.70.0
(1.8)
5.70.0
(1.5)
9.50.0
(2.5)
8.40.2
(2.2)
18.60.1
(5.0)
20.50.1
(5.5)
9.70.1
(2.6)
5.50.1
(1.5)
5.60.1
(1.5)
7.90.0
(2.1)
9.30.0
(2.5)
8.10.0
(2.2)
10.60.1
(2.8)
4.40.0
(1.2)
4.70.0
(1.3)
13.50.1
(3.6)
3.80.0
(1.0)
7.50.1
(2.0)