ShineTree Benchmarks

append

Compiled in 0.05s Running benchmarks/append.main

NameMeanMedianStd.MinMaxIterations
list.append -> n = 1000.45us0.0us43.460.0us45.37ms8008228
list.append -> n = 1_0003.88us2.0us45.632.0us26.98ms1251932
list.append -> n = 10_00026.33us21.0us73.6819.0us20.29ms188810
list.append -> n = 100_000413.15us374.0us509.95167.0us30.3ms12128
shine_tree.append -> n = 1000.38us0.0us92.80.0us98.85ms10053552
shine_tree.append -> n = 1_0000.69us0.0us102.170.0us123.6ms6287248
shine_tree.append -> n = 10_0000.91us0.0us102.630.0us85.49ms4888296
shine_tree.append -> n = 100_0001.13us1.0us97.720.0us43.16ms4046049

count

Compiled in 0.05s Running benchmarks/count.main

NameMeanMedianStd.MinMaxIterations
List count evens -> n = 1001.74us1.0us17.51.0us16.11ms2659214
List count evens -> n = 1_00016.89us15.0us63.7615.0us20.05ms293807
List count evens -> n = 10_000168.63us158.0us186.4149.0us27.42ms29609
List count evens -> n = 100_0001.91ms1.57ms1507.771.5ms33.23ms2621
ShineTree count evens -> n = 1001.39us2.0us31.951.0us31.92ms3346790
ShineTree count evens -> n = 1_00013.41us12.0us73.9111.0us22.92ms370217
ShineTree count evens -> n = 10_000133.56us124.0us175.53121.0us24.06ms37387
ShineTree count evens -> n = 100_0001.32ms1.22ms497.291.2ms14.03ms3778

from_iterator

Compiled in 0.05s Running benchmarks/from_iterator.main

NameMeanMedianStd.MinMaxIterations
iterator.to_list -> n = 1005.4us3.0us121.062.0us64.36ms902626
iterator.to_list -> n = 1_00036.99us55.0us130.3926.0us20.14ms134752
iterator.to_list -> n = 10_000593.1us572.0us641.0374.0us35.43ms8425
iterator.to_list -> n = 100_0006.42ms5.85ms1201.075.3ms18.91ms778
shine_tree.from_iterator -> n = 1009.65us4.0us114.163.0us37.67ms512812
shine_tree.from_iterator -> n = 1_00086.01us45.0us238.4740.0us26.28ms58022
shine_tree.from_iterator -> n = 10_000699.59us526.0us332.07485.0us15.16ms7145
shine_tree.from_iterator -> n = 100_0007.37ms6.78ms2033.916.48ms43.26ms678

shift

Compiled in 0.04s Running benchmarks/shift.main

NameMeanMedianStd.MinMaxIterations
list (take one item at a time, until empty) -> n = 1000.29us0.0us4.930.0us9.94ms11425501
list (take one item at a time, until empty) -> n = 1_0002.89us3.0us29.122.0us29.71ms1641178
list (take one item at a time, until empty) -> n = 10_00026.25us25.0us13.8723.0us3.35ms189367
list (take one item at a time, until empty) -> n = 100_000253.75us289.0us207.52228.0us22.06ms19685
shine_tree.shift (against best case scenario list) -> n = 1007.32us2.0us116.992.0us31.27ms671737
shine_tree.shift (against best case scenario list) -> n = 1_00071.13us30.0us197.3524.0us9.67ms70104
shine_tree.shift (against best case scenario list) -> n = 10_000705.47us298.0us543.93291.0us29.89ms7085
shine_tree.shift (against best case scenario list) -> n = 100_0008.48ms7.49ms2388.116.86ms47.71ms590
shine_tree.pop (lists can’t do this at all) -> n = 1007.19us4.0us119.11.0us35.57ms684529
shine_tree.pop (lists can’t do this at all) -> n = 1_00070.41us27.0us230.121.0us29.65ms70843
shine_tree.pop (lists can’t do this at all) -> n = 10_000679.55us856.0us525.0267.0us25.62ms7354
shine_tree.pop (lists can’t do this at all) -> n = 100_0008.05ms7.64ms1694.466.6ms33.13ms621

sort

Compiled in 0.05s Running benchmarks/sort.main

NameMeanMedianStd.MinMaxIterations
List sort -> n = 10010.32us7.0us76.396.0us26.59ms479416
List sort -> n = 1_000150.95us137.0us240.94128.0us39.59ms33091
List sort -> n = 10_0002.19ms2.13ms314.772.05ms11.8ms2283
List sort -> n = 100_00034.54ms32.0ms5845.3229.02ms73.15ms145
ShineTree sort -> n = 10013.26us8.0us114.057.0us28.83ms373556
ShineTree sort -> n = 1_000212.22us147.0us305.31136.0us19.37ms23539
ShineTree sort -> n = 10_0002.78ms2.61ms929.751.83ms21.18ms1795
ShineTree sort -> n = 100_00034.3ms36.0ms5639.3427.98ms70.42ms145

fold

Compiled in 0.05s Running benchmarks/fold.main

NameMeanMedianStd.MinMaxIterations
list.fold -> n = 1000.94us1.0us22.860.0us17.44ms4433277
list.fold -> n = 1_0008.63us7.0us57.697.0us31.15ms570367
list.fold -> n = 10_00087.65us81.0us164.6478.0us22.0ms56930
list.fold -> n = 100_000876.99us846.0us445.98785.0us23.9ms5699
iterator.fold -> n = 1004.96us3.0us91.632.0us21.32ms989189
iterator.fold -> n = 1_00040.72us24.0us153.3821.0us32.53ms122427
iterator.fold -> n = 10_000234.14us217.0us138.77216.0us14.99ms21340
iterator.fold -> n = 100_0002.4ms2.67ms768.92.22ms25.24ms2081
shine_tree.fold_l -> n = 1000.57us0.0us46.350.0us73.13ms7409110
shine_tree.fold_l -> n = 1_0005.47us5.0us45.074.0us33.64ms897499
shine_tree.fold_l -> n = 10_00056.67us48.0us150.6846.0us29.0ms88000
shine_tree.fold_l -> n = 100_000577.29us584.0us281.3467.0us15.68ms8656

range

Compiled in 0.07s Running benchmarks/range.main

NameMeanMedianStd.MinMaxIterations
List range of size n -> n = 1001.46us1.0us75.370.0us32.18ms3172242
List range of size n -> n = 1_00013.45us8.0us91.27.0us9.7ms368792
List range of size n -> n = 10_000104.53us95.0us185.0679.0us22.47ms47762
List range of size n -> n = 100_0001.24ms1.32ms702.541.02ms24.76ms4016
ShineTree range of size n -> n = 1001.05us1.0us89.920.0us49.76ms4359871
ShineTree range of size n -> n = 1_0008.73us5.0us106.943.0us29.09ms565988
ShineTree range of size n -> n = 10_00074.34us45.0us165.4639.0us18.3ms67127
ShineTree range of size n -> n = 100_0002.62ms2.1ms954.761.8ms24.82ms1911

size

Compiled in 0.04s Running benchmarks/size.main

NameMeanMedianStd.MinMaxIterations
list.size -> n = 1000.16us0.0us10.00.0us33.55ms15711838
list.size -> n = 1_0002.22us2.0us24.191.0us18.43ms2092006
list.size -> n = 10_00016.47us33.0us47.7114.0us21.14ms300046
list.size -> n = 100_000113.46us105.0us48.65102.0us7.32ms43993
shine_tree.size -> n = 1000.03us0.0us6.540.0us32.4ms28133030
shine_tree.size -> n = 1_0000.03us0.0us3.540.0us10.47ms20487610
shine_tree.size -> n = 10_0000.04us0.0us7.670.0us29.44ms20185780
shine_tree.size -> n = 100_0000.03us0.0us6.330.0us19.17ms22538207

unshift

Compiled in 0.05s Running benchmarks/unshift.main

NameMeanMedianStd.MinMaxIterations
shine_tree.unshift(Nil) -> n = 1006.28us2.0us133.671.0us35.23ms779441
shine_tree.unshift(Nil) -> n = 1_00055.73us23.0us188.9916.0us24.72ms89388
shine_tree.unshift(Nil) -> n = 10_000535.85us294.0us562.53244.0us39.83ms9325
shine_tree.unshift(Nil) -> n = 100_0006.56ms6.47ms1978.93.95ms35.21ms762
[item, ..rest] -> n = 1001.02us0.0us125.730.0us64.91ms4207056
[item, ..rest] -> n = 1_0008.87us3.0us152.061.0us35.17ms552812
[item, ..rest] -> n = 10_00071.26us41.0us277.6221.0us29.46ms69919
[item, ..rest] -> n = 100_000985.82us590.0us859.53447.0us35.85ms5065
shine_tree.push(Nil) (lists can’t do this at all) -> n = 1006.07us4.0us140.581.0us32.57ms809162
shine_tree.push(Nil) (lists can’t do this at all) -> n = 1_00062.99us1.19ms290.0113.0us48.32ms79192
shine_tree.push(Nil) (lists can’t do this at all) -> n = 10_000539.36us337.0us443.14214.0us14.85ms9265
shine_tree.push(Nil) (lists can’t do this at all) -> n = 100_0007.44ms6.22ms3020.443.73ms43.14ms672

group

Compiled in 0.06s Running benchmarks/group.main

NameMeanMedianStd.MinMaxIterations
list.group (n % 7) -> n = 10011.25us8.0us105.917.0us44.01ms438551
list.group (n % 7) -> n = 1_000113.07us86.0us224.3475.0us30.15ms44115
list.group (n % 7) -> n = 10_0001.31ms1.31ms779.38871.0us31.09ms3813
list.group (n % 7) -> n = 100_00013.35ms15.47ms3435.159.37ms41.01ms373
iterator.group (n % 7) -> n = 10014.49us9.0us31.28.0us6.19ms341775
iterator.group (n % 7) -> n = 1_000129.84us98.0us254.389.0us30.4ms38450
iterator.group (n % 7) -> n = 10_0001.31ms1.2ms578.281.01ms21.3ms3804
iterator.group (n % 7) -> n = 100_00017.53ms17.36ms4425.7114.09ms71.34ms285
shine_tree.group (n % 7) -> n = 1009.09us6.0us96.965.0us11.48ms541024
shine_tree.group (n % 7) -> n = 1_000105.09us72.0us236.1162.0us20.16ms47397
shine_tree.group (n % 7) -> n = 10_0001.09ms715.0us855.06673.0us21.11ms4595
shine_tree.group (n % 7) -> n = 100_00010.71ms16.49ms2262.557.38ms20.63ms467
Search Document