Docker Desktop - Windows Host | Method | TestObjectCount | Mean | Error | StdDev | Ratio | RatioSD | |------------------ |---------------- |--------------------:|------------------:|------------------:|------:|--------:| | ArrayGetWithVar | 1 | 1.5515 ns | 0.0611 ns | 0.0542 ns | 5.78 | 0.63 | | ArrayGetWithField | 1 | 0.2697 ns | 0.0287 ns | 0.0268 ns | 1.00 | 0.00 | | SpanGet | 1 | 0.5019 ns | 0.0117 ns | 0.0098 ns | 1.88 | 0.20 | | | | | | | | | | ArrayGetWithVar | 2 | 1.7411 ns | 0.0135 ns | 0.0113 ns | 2.78 | 0.09 | | ArrayGetWithField | 2 | 0.6258 ns | 0.0215 ns | 0.0191 ns | 1.00 | 0.00 | | SpanGet | 2 | 0.7584 ns | 0.0172 ns | 0.0161 ns | 1.21 | 0.04 | | | | | | | | | | ArrayGetWithVar | 3 | 2.0160 ns | 0.0264 ns | 0.0247 ns | 2.19 | 0.07 | | ArrayGetWithField | 3 | 0.9226 ns | 0.0309 ns | 0.0258 ns | 1.00 | 0.00 | | SpanGet | 3 | 1.0568 ns | 0.0240 ns | 0.0213 ns | 1.15 | 0.04 | | | | | | | | | | ArrayGetWithVar | 4 | 2.2360 ns | 0.0200 ns | 0.0167 ns | 1.89 | 0.07 | | ArrayGetWithField | 4 | 1.1815 ns | 0.0457 ns | 0.0427 ns | 1.00 | 0.00 | | SpanGet | 4 | 1.2586 ns | 0.0343 ns | 0.0321 ns | 1.07 | 0.05 | | | | | | | | | | ArrayGetWithVar | 5 | 2.5662 ns | 0.0591 ns | 0.0523 ns | 1.45 | 0.06 | | ArrayGetWithField | 5 | 1.7752 ns | 0.0663 ns | 0.0554 ns | 1.00 | 0.00 | | SpanGet | 5 | 2.3339 ns | 0.0548 ns | 0.0512 ns | 1.31 | 0.04 | | | | | | | | | | ArrayGetWithVar | 6 | 2.9409 ns | 0.0605 ns | 0.0566 ns | 1.46 | 0.03 | | ArrayGetWithField | 6 | 2.0072 ns | 0.0225 ns | 0.0188 ns | 1.00 | 0.00 | | SpanGet | 6 | 2.5796 ns | 0.0595 ns | 0.0557 ns | 1.28 | 0.03 | | | | | | | | | | ArrayGetWithVar | 7 | 3.2910 ns | 0.0638 ns | 0.0596 ns | 1.27 | 0.05 | | ArrayGetWithField | 7 | 2.6211 ns | 0.0830 ns | 0.0923 ns | 1.00 | 0.00 | | SpanGet | 7 | 3.0480 ns | 0.0499 ns | 0.0416 ns | 1.18 | 0.05 | | | | | | | | | | ArrayGetWithVar | 8 | 3.6615 ns | 0.1036 ns | 0.1348 ns | 1.34 | 0.05 | | ArrayGetWithField | 8 | 2.7175 ns | 0.0753 ns | 0.0668 ns | 1.00 | 0.00 | | SpanGet | 8 | 3.2317 ns | 0.0873 ns | 0.0681 ns | 1.19 | 0.03 | | | | | | | | | | ArrayGetWithVar | 9 | 4.1159 ns | 0.1028 ns | 0.0912 ns | 1.39 | 0.06 | | ArrayGetWithField | 9 | 2.9648 ns | 0.0797 ns | 0.0707 ns | 1.00 | 0.00 | | SpanGet | 9 | 3.4643 ns | 0.0946 ns | 0.0838 ns | 1.17 | 0.04 | | | | | | | | | | ArrayGetWithVar | 10 | 4.5874 ns | 0.1178 ns | 0.1210 ns | 1.38 | 0.06 | | ArrayGetWithField | 10 | 3.3250 ns | 0.0664 ns | 0.0588 ns | 1.00 | 0.00 | | SpanGet | 10 | 3.6339 ns | 0.0678 ns | 0.0601 ns | 1.09 | 0.02 | | | | | | | | | | ArrayGetWithVar | 11 | 5.0294 ns | 0.0905 ns | 0.0803 ns | 1.41 | 0.04 | | ArrayGetWithField | 11 | 3.5648 ns | 0.0933 ns | 0.0872 ns | 1.00 | 0.00 | | SpanGet | 11 | 4.0259 ns | 0.1108 ns | 0.1319 ns | 1.13 | 0.05 | | | | | | | | | | ArrayGetWithVar | 12 | 5.2701 ns | 0.1157 ns | 0.1025 ns | 1.42 | 0.04 | | ArrayGetWithField | 12 | 3.7002 ns | 0.0957 ns | 0.0848 ns | 1.00 | 0.00 | | SpanGet | 12 | 4.3132 ns | 0.1102 ns | 0.0977 ns | 1.17 | 0.04 | | | | | | | | | | ArrayGetWithVar | 13 | 5.7393 ns | 0.1438 ns | 0.1345 ns | 1.41 | 0.03 | | ArrayGetWithField | 13 | 4.0569 ns | 0.1034 ns | 0.0863 ns | 1.00 | 0.00 | | SpanGet | 13 | 4.4506 ns | 0.0812 ns | 0.0720 ns | 1.10 | 0.03 | | | | | | | | | | ArrayGetWithVar | 14 | 6.0965 ns | 0.1023 ns | 0.0854 ns | 1.40 | 0.03 | | ArrayGetWithField | 14 | 4.3728 ns | 0.0803 ns | 0.0751 ns | 1.00 | 0.00 | | SpanGet | 14 | 4.6293 ns | 0.1178 ns | 0.2124 ns | 1.09 | 0.06 | | | | | | | | | | ArrayGetWithVar | 15 | 7.0026 ns | 0.1261 ns | 0.1053 ns | 1.42 | 0.02 | | ArrayGetWithField | 15 | 4.9188 ns | 0.0506 ns | 0.0422 ns | 1.00 | 0.00 | | SpanGet | 15 | 5.1823 ns | 0.1318 ns | 0.1233 ns | 1.05 | 0.03 | | | | | | | | | | ArrayGetWithVar | 16 | 8.3418 ns | 0.1920 ns | 0.1702 ns | 1.51 | 0.04 | | ArrayGetWithField | 16 | 5.5086 ns | 0.1068 ns | 0.0947 ns | 1.00 | 0.00 | | SpanGet | 16 | 5.4778 ns | 0.1416 ns | 0.2246 ns | 1.02 | 0.03 | | | | | | | | | | ArrayGetWithVar | 17 | 8.1520 ns | 0.0699 ns | 0.0620 ns | 1.69 | 0.01 | | ArrayGetWithField | 17 | 4.8123 ns | 0.0442 ns | 0.0369 ns | 1.00 | 0.00 | | SpanGet | 17 | 5.5824 ns | 0.0741 ns | 0.0693 ns | 1.16 | 0.02 | | | | | | | | | | ArrayGetWithVar | 18 | 7.4813 ns | 0.0414 ns | 0.0367 ns | 1.42 | 0.01 | | ArrayGetWithField | 18 | 5.2566 ns | 0.0312 ns | 0.0260 ns | 1.00 | 0.00 | | SpanGet | 18 | 5.9601 ns | 0.0816 ns | 0.0763 ns | 1.13 | 0.01 | | | | | | | | | | ArrayGetWithVar | 19 | 7.7273 ns | 0.0835 ns | 0.0781 ns | 1.49 | 0.02 | | ArrayGetWithField | 19 | 5.2033 ns | 0.0313 ns | 0.0261 ns | 1.00 | 0.00 | | SpanGet | 19 | 6.3312 ns | 0.1551 ns | 0.1593 ns | 1.22 | 0.03 | | | | | | | | | | ArrayGetWithVar | 20 | 7.9391 ns | 0.0515 ns | 0.0457 ns | 1.37 | 0.03 | | ArrayGetWithField | 20 | 5.8071 ns | 0.1415 ns | 0.1390 ns | 1.00 | 0.00 | | SpanGet | 20 | 5.9330 ns | 0.0500 ns | 0.0443 ns | 1.02 | 0.02 | | | | | | | | | | ArrayGetWithVar | 30 | 10.6019 ns | 0.1303 ns | 0.1219 ns | 1.29 | 0.02 | | ArrayGetWithField | 30 | 8.2413 ns | 0.1019 ns | 0.0851 ns | 1.00 | 0.00 | | SpanGet | 30 | 8.4137 ns | 0.1042 ns | 0.0924 ns | 1.02 | 0.02 | | | | | | | | | | ArrayGetWithVar | 32 | 11.0617 ns | 0.1536 ns | 0.1362 ns | 1.27 | 0.02 | | ArrayGetWithField | 32 | 8.6916 ns | 0.1022 ns | 0.0906 ns | 1.00 | 0.00 | | SpanGet | 32 | 8.8803 ns | 0.0642 ns | 0.0536 ns | 1.02 | 0.01 | | | | | | | | | | ArrayGetWithVar | 40 | 12.8859 ns | 0.0889 ns | 0.0742 ns | 1.21 | 0.01 | | ArrayGetWithField | 40 | 10.6318 ns | 0.0740 ns | 0.0618 ns | 1.00 | 0.00 | | SpanGet | 40 | 10.8128 ns | 0.0622 ns | 0.0519 ns | 1.02 | 0.01 | | | | | | | | | | ArrayGetWithVar | 50 | 15.2773 ns | 0.1358 ns | 0.1204 ns | 1.17 | 0.01 | | ArrayGetWithField | 50 | 13.0385 ns | 0.0772 ns | 0.0603 ns | 1.00 | 0.00 | | SpanGet | 50 | 13.2485 ns | 0.0861 ns | 0.0719 ns | 1.02 | 0.01 | | | | | | | | | | ArrayGetWithVar | 60 | 19.4536 ns | 0.3026 ns | 0.2682 ns | 1.25 | 0.02 | | ArrayGetWithField | 60 | 15.5407 ns | 0.1195 ns | 0.0998 ns | 1.00 | 0.00 | | SpanGet | 60 | 15.7285 ns | 0.0886 ns | 0.0740 ns | 1.01 | 0.01 | | | | | | | | | | ArrayGetWithVar | 80 | 23.6613 ns | 0.3427 ns | 0.3206 ns | 0.95 | 0.01 | | ArrayGetWithField | 80 | 24.9804 ns | 0.1885 ns | 0.1671 ns | 1.00 | 0.00 | | SpanGet | 80 | 20.7933 ns | 0.2044 ns | 0.1912 ns | 0.83 | 0.01 | | | | | | | | | | ArrayGetWithVar | 90 | 25.2124 ns | 0.2229 ns | 0.1976 ns | 1.09 | 0.01 | | ArrayGetWithField | 90 | 23.0452 ns | 0.1873 ns | 0.1660 ns | 1.00 | 0.00 | | SpanGet | 90 | 23.1852 ns | 0.1221 ns | 0.1142 ns | 1.01 | 0.01 | | | | | | | | | | ArrayGetWithVar | 100 | 38.4832 ns | 0.3491 ns | 0.3094 ns | 1.23 | 0.02 | | ArrayGetWithField | 100 | 31.3061 ns | 0.2504 ns | 0.2220 ns | 1.00 | 0.00 | | SpanGet | 100 | 31.1156 ns | 0.3401 ns | 0.3015 ns | 0.99 | 0.01 | | | | | | | | | | ArrayGetWithVar | 128 | 45.1141 ns | 0.2042 ns | 0.1594 ns | 1.18 | 0.01 | | ArrayGetWithField | 128 | 38.3883 ns | 0.3717 ns | 0.3477 ns | 1.00 | 0.00 | | SpanGet | 128 | 37.9068 ns | 0.2695 ns | 0.2250 ns | 0.99 | 0.01 | | | | | | | | | | ArrayGetWithVar | 256 | 77.4174 ns | 0.6796 ns | 0.6024 ns | 1.12 | 0.01 | | ArrayGetWithField | 256 | 68.8870 ns | 0.4120 ns | 0.3441 ns | 1.00 | 0.00 | | SpanGet | 256 | 68.4291 ns | 0.4472 ns | 0.4183 ns | 0.99 | 0.01 | | | | | | | | | | ArrayGetWithVar | 512 | 139.0822 ns | 1.1336 ns | 1.0049 ns | 1.06 | 0.01 | | ArrayGetWithField | 512 | 131.7129 ns | 0.8504 ns | 0.7101 ns | 1.00 | 0.00 | | SpanGet | 512 | 131.8641 ns | 0.9284 ns | 0.8684 ns | 1.00 | 0.01 | | | | | | | | | | ArrayGetWithVar | 1024 | 266.5707 ns | 4.5696 ns | 5.4397 ns | 1.04 | 0.02 | | ArrayGetWithField | 1024 | 257.5734 ns | 1.2839 ns | 1.1382 ns | 1.00 | 0.00 | | SpanGet | 1024 | 256.7122 ns | 1.0711 ns | 0.9495 ns | 1.00 | 0.01 | | | | | | | | | | ArrayGetWithVar | 2048 | 511.6425 ns | 1.5722 ns | 1.3129 ns | 1.00 | 0.01 | | ArrayGetWithField | 2048 | 509.8994 ns | 2.5392 ns | 2.2509 ns | 1.00 | 0.00 | | SpanGet | 2048 | 507.5335 ns | 4.0426 ns | 3.3758 ns | 1.00 | 0.01 | | | | | | | | | | ArrayGetWithVar | 4096 | 1,019.1013 ns | 10.1205 ns | 9.4668 ns | 1.00 | 0.01 | | ArrayGetWithField | 4096 | 1,018.5594 ns | 4.6897 ns | 4.1573 ns | 1.00 | 0.00 | | SpanGet | 4096 | 1,012.1960 ns | 7.4658 ns | 6.6183 ns | 0.99 | 0.01 | | | | | | | | | | ArrayGetWithVar | 8192 | 2,017.1872 ns | 14.3314 ns | 12.7044 ns | 1.00 | 0.01 | | ArrayGetWithField | 8192 | 2,023.1594 ns | 12.9330 ns | 11.4648 ns | 1.00 | 0.00 | | SpanGet | 8192 | 2,014.0275 ns | 14.3402 ns | 12.7123 ns | 1.00 | 0.01 | | | | | | | | | | ArrayGetWithVar | 1000000 | 245,965.8295 ns | 1,733.9504 ns | 1,447.9271 ns | 1.00 | 0.01 | | ArrayGetWithField | 1000000 | 245,337.9044 ns | 1,055.8869 ns | 881.7134 ns | 1.00 | 0.00 | | SpanGet | 1000000 | 245,687.0731 ns | 1,561.6594 ns | 1,219.2409 ns | 1.00 | 0.01 | | | | | | | | | | ArrayGetWithVar | 2147483591 | 525,684,023.0769 ns | 3,207,250.2244 ns | 2,678,199.1945 ns | 0.99 | 0.01 | | ArrayGetWithField | 2147483591 | 529,688,963.4615 ns | 3,381,258.2043 ns | 2,823,503.7386 ns | 1.00 | 0.00 | | SpanGet | 2147483591 | 529,698,631.2857 ns | 4,050,107.8977 ns | 3,590,315.1583 ns | 1.00 | 0.01 | // * Warnings * MultimodalDistribution SpanVsArrayBenchmarks.SpanGet: Default -> It seems that the distribution is bimodal (mValue = 3.54) // * Hints * Outliers SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (3.23 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was detected (1.78 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (2.12 ns, 2.14 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (3.33 ns, 3.35 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (2.26 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (2.59 ns, 2.62 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed, 2 outliers were detected (2.57 ns, 2.65 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (3.86 ns, 3.91 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (4.31 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 3 outliers were removed (3.58 ns..4.00 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (3.71 ns, 3.73 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (4.94 ns, 4.98 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed, 3 outliers were detected (5.00 ns, 5.79 ns, 5.85 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (4.62 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 3 outliers were removed (5.22 ns..5.28 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (6.25 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (4.91 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (5.41 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (6.96 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (5.20 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (5.55 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (7.00 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (6.16 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (7.55 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed, 2 outliers were detected (5.25 ns, 5.66 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (6.38 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 4 outliers were removed (6.16 ns..6.78 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (6.37 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (8.13 ns, 8.29 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 6 outliers were removed (7.09 ns..7.33 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed, 3 outliers were detected (8.48 ns, 9.28 ns, 9.33 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (6.81 ns, 6.84 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (10.70 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (7.53 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 3 outliers were removed (8.13 ns..8.25 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (10.23 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (6.56 ns, 6.56 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (9.33 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (6.89 ns, 7.03 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (6.89 ns, 7.00 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (9.66 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (8.03 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (10.35 ns, 10.41 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (10.22 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (12.95 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (10.60 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (10.67 ns, 10.75 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (14.69 ns, 14.85 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (12.44 ns, 12.66 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (12.61 ns, 12.77 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (17.56 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 3 outliers were removed (14.97 ns..14.98 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (15.18 ns, 15.61 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (22.40 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (17.54 ns, 18.13 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (17.74 ns, 17.99 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed, 2 outliers were detected (26.15 ns, 27.17 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (27.26 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (25.32 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (41.56 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (33.96 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (33.76 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (47.36 ns..47.54 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (40.60 ns, 40.85 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (81.64 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (72.86 ns, 73.52 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed, 2 outliers were detected (139.97 ns, 145.75 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (137.07 ns, 138.83 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (286.19 ns, 314.20 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (267.48 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (265.60 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (522.93 ns, 540.60 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed, 2 outliers were detected (508.42 ns, 525.02 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (525.76 ns, 527.95 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed, 3 outliers were detected (1.01 us, 1.01 us, 1.07 us) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (1.07 us) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (2.08 us) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (2.10 us) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (2.12 us) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (256.02 us, 256.31 us) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (250.53 us, 250.70 us) SpanVsArrayBenchmarks.SpanGet: Default -> 3 outliers were removed (252.66 us..282.22 us) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed, 4 outliers were detected (519.00 ms, 522.14 ms, 531.86 ms, 536.31 ms) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (544.93 ms, 551.49 ms) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (557.67 ms) // * Legends * TestObjectCount : Value of the 'TestObjectCount' parameter Mean : Arithmetic mean of all measurements Error : Half of 99.9% confidence interval StdDev : Standard deviation of all measurements Ratio : Mean of the ratio distribution ([Current]/[Baseline]) RatioSD : Standard deviation of the ratio distribution ([Current]/[Baseline]) 1 ns : 1 Nanosecond (0.000000001 sec) ************************************************************************************************************************************************* ************************************************************************************************************************************************* ************************************************************************************************************************************************* BenchmarkDotNet=v0.13.3, OS=Windows 11 (10.0.22621.1555) AMD Ryzen 7 4700U with Radeon Graphics, 1 CPU, 8 logical and 8 physical cores .NET SDK=7.0.203 [Host] : .NET 7.0.5 (7.0.523.17405), X64 RyuJIT AVX2 DefaultJob : .NET 7.0.5 (7.0.523.17405), X64 RyuJIT AVX2 | Method | TestObjectCount | Mean | Error | StdDev | Median | Ratio | RatioSD | |------------------ |---------------- |--------------------:|----------------:|----------------:|--------------------:|------:|--------:| | ArrayGetWithVar | 1 | 1.4115 ns | 0.0127 ns | 0.0119 ns | 1.4133 ns | 6.74 | 0.18 | | ArrayGetWithField | 1 | 0.2095 ns | 0.0051 ns | 0.0045 ns | 0.2107 ns | 1.00 | 0.00 | | SpanGet | 1 | 0.2636 ns | 0.0024 ns | 0.0021 ns | 0.2632 ns | 1.26 | 0.03 | | | | | | | | | | | ArrayGetWithVar | 2 | 1.7398 ns | 0.0122 ns | 0.0114 ns | 1.7406 ns | 2.84 | 0.14 | | ArrayGetWithField | 2 | 0.6150 ns | 0.0407 ns | 0.0318 ns | 0.6095 ns | 1.00 | 0.00 | | SpanGet | 2 | 0.4950 ns | 0.0079 ns | 0.0066 ns | 0.4981 ns | 0.81 | 0.05 | | | | | | | | | | | ArrayGetWithVar | 3 | 2.2776 ns | 0.0778 ns | 0.2294 ns | 2.4503 ns | 2.21 | 0.25 | | ArrayGetWithField | 3 | 1.0145 ns | 0.0439 ns | 0.0410 ns | 1.0062 ns | 1.00 | 0.00 | | SpanGet | 3 | 0.7529 ns | 0.0250 ns | 0.0234 ns | 0.7476 ns | 0.74 | 0.02 | | | | | | | | | | | ArrayGetWithVar | 4 | 2.2875 ns | 0.0630 ns | 0.0559 ns | 2.2669 ns | 2.27 | 0.06 | | ArrayGetWithField | 4 | 1.0066 ns | 0.0164 ns | 0.0153 ns | 1.0050 ns | 1.00 | 0.00 | | SpanGet | 4 | 0.9895 ns | 0.0123 ns | 0.0115 ns | 0.9922 ns | 0.98 | 0.02 | | | | | | | | | | | ArrayGetWithVar | 5 | 2.6949 ns | 0.0633 ns | 0.0592 ns | 2.6701 ns | 1.42 | 0.16 | | ArrayGetWithField | 5 | 1.9059 ns | 0.0682 ns | 0.1868 ns | 1.8684 ns | 1.00 | 0.00 | | SpanGet | 5 | 1.5092 ns | 0.0392 ns | 0.0348 ns | 1.5102 ns | 0.79 | 0.09 | | | | | | | | | | | ArrayGetWithVar | 6 | 3.1465 ns | 0.0931 ns | 0.1143 ns | 3.0808 ns | 1.69 | 0.06 | | ArrayGetWithField | 6 | 1.8594 ns | 0.0124 ns | 0.0116 ns | 1.8588 ns | 1.00 | 0.00 | | SpanGet | 6 | 2.0726 ns | 0.0716 ns | 0.0879 ns | 2.0578 ns | 1.11 | 0.05 | | | | | | | | | | | ArrayGetWithVar | 7 | 3.2474 ns | 0.0525 ns | 0.0410 ns | 3.2404 ns | 1.51 | 0.02 | | ArrayGetWithField | 7 | 2.1444 ns | 0.0223 ns | 0.0198 ns | 2.1434 ns | 1.00 | 0.00 | | SpanGet | 7 | 2.3791 ns | 0.0572 ns | 0.0535 ns | 2.3924 ns | 1.11 | 0.03 | | | | | | | | | | | ArrayGetWithVar | 8 | 3.6571 ns | 0.1017 ns | 0.2055 ns | 3.5399 ns | 1.51 | 0.07 | | ArrayGetWithField | 8 | 2.3724 ns | 0.0196 ns | 0.0174 ns | 2.3738 ns | 1.00 | 0.00 | | SpanGet | 8 | 2.6088 ns | 0.0644 ns | 0.0602 ns | 2.6322 ns | 1.10 | 0.03 | | | | | | | | | | | ArrayGetWithVar | 9 | 3.8172 ns | 0.0061 ns | 0.0057 ns | 3.8155 ns | 1.46 | 0.02 | | ArrayGetWithField | 9 | 2.6231 ns | 0.0313 ns | 0.0293 ns | 2.6143 ns | 1.00 | 0.00 | | SpanGet | 9 | 2.9815 ns | 0.0446 ns | 0.0372 ns | 2.9849 ns | 1.14 | 0.02 | | | | | | | | | | | ArrayGetWithVar | 10 | 4.3250 ns | 0.1161 ns | 0.2237 ns | 4.1797 ns | 1.36 | 0.07 | | ArrayGetWithField | 10 | 3.1594 ns | 0.0278 ns | 0.0246 ns | 3.1674 ns | 1.00 | 0.00 | | SpanGet | 10 | 2.9200 ns | 0.0834 ns | 0.0780 ns | 2.9040 ns | 0.92 | 0.02 | | | | | | | | | | | ArrayGetWithVar | 11 | 4.8931 ns | 0.1262 ns | 0.2308 ns | 4.9847 ns | 1.44 | 0.09 | | ArrayGetWithField | 11 | 3.3435 ns | 0.0487 ns | 0.0432 ns | 3.3299 ns | 1.00 | 0.00 | | SpanGet | 11 | 3.3408 ns | 0.0429 ns | 0.0380 ns | 3.3398 ns | 1.00 | 0.02 | | | | | | | | | | | ArrayGetWithVar | 12 | 5.2640 ns | 0.1334 ns | 0.2077 ns | 5.3314 ns | 1.59 | 0.06 | | ArrayGetWithField | 12 | 3.2920 ns | 0.0112 ns | 0.0093 ns | 3.2942 ns | 1.00 | 0.00 | | SpanGet | 12 | 3.5210 ns | 0.0979 ns | 0.0916 ns | 3.4896 ns | 1.07 | 0.03 | | | | | | | | | | | ArrayGetWithVar | 13 | 5.3287 ns | 0.0715 ns | 0.0669 ns | 5.3427 ns | 1.34 | 0.02 | | ArrayGetWithField | 13 | 3.9872 ns | 0.0499 ns | 0.0467 ns | 3.9771 ns | 1.00 | 0.00 | | SpanGet | 13 | 4.0250 ns | 0.0803 ns | 0.0751 ns | 4.0180 ns | 1.01 | 0.02 | | | | | | | | | | | ArrayGetWithVar | 14 | 5.5447 ns | 0.1082 ns | 0.0845 ns | 5.5129 ns | 1.35 | 0.03 | | ArrayGetWithField | 14 | 4.1072 ns | 0.0352 ns | 0.0329 ns | 4.1011 ns | 1.00 | 0.00 | | SpanGet | 14 | 4.3101 ns | 0.1149 ns | 0.2042 ns | 4.4471 ns | 1.05 | 0.06 | | | | | | | | | | | ArrayGetWithVar | 15 | 5.9592 ns | 0.1007 ns | 0.0942 ns | 5.9521 ns | 1.38 | 0.02 | | ArrayGetWithField | 15 | 4.3303 ns | 0.0146 ns | 0.0137 ns | 4.3332 ns | 1.00 | 0.00 | | SpanGet | 15 | 4.5349 ns | 0.0952 ns | 0.0795 ns | 4.5473 ns | 1.05 | 0.02 | | | | | | | | | | | ArrayGetWithVar | 16 | 6.2242 ns | 0.1520 ns | 0.2081 ns | 6.1473 ns | 1.30 | 0.05 | | ArrayGetWithField | 16 | 4.8017 ns | 0.0312 ns | 0.0292 ns | 4.8077 ns | 1.00 | 0.00 | | SpanGet | 16 | 4.6087 ns | 0.1206 ns | 0.1128 ns | 4.5630 ns | 0.96 | 0.02 | | | | | | | | | | | ArrayGetWithVar | 17 | 6.5752 ns | 0.1582 ns | 0.2057 ns | 6.5724 ns | 1.44 | 0.05 | | ArrayGetWithField | 17 | 4.5792 ns | 0.0274 ns | 0.0243 ns | 4.5754 ns | 1.00 | 0.00 | | SpanGet | 17 | 5.1442 ns | 0.0570 ns | 0.0533 ns | 5.1497 ns | 1.12 | 0.01 | | | | | | | | | | | ArrayGetWithVar | 18 | 6.6317 ns | 0.1327 ns | 0.1108 ns | 6.5870 ns | 1.17 | 0.02 | | ArrayGetWithField | 18 | 5.6728 ns | 0.0296 ns | 0.0277 ns | 5.6707 ns | 1.00 | 0.00 | | SpanGet | 18 | 4.9786 ns | 0.0787 ns | 0.0736 ns | 4.9597 ns | 0.88 | 0.02 | | | | | | | | | | | ArrayGetWithVar | 19 | 6.9428 ns | 0.0477 ns | 0.0398 ns | 6.9283 ns | 1.33 | 0.01 | | ArrayGetWithField | 19 | 5.2353 ns | 0.0249 ns | 0.0221 ns | 5.2269 ns | 1.00 | 0.00 | | SpanGet | 19 | 5.2300 ns | 0.0300 ns | 0.0266 ns | 5.2179 ns | 1.00 | 0.01 | | | | | | | | | | | ArrayGetWithVar | 20 | 7.4626 ns | 0.0782 ns | 0.0653 ns | 7.4410 ns | 1.28 | 0.04 | | ArrayGetWithField | 20 | 5.7347 ns | 0.1435 ns | 0.1815 ns | 5.6633 ns | 1.00 | 0.00 | | SpanGet | 20 | 5.4807 ns | 0.0085 ns | 0.0075 ns | 5.4807 ns | 0.94 | 0.03 | | | | | | | | | | | ArrayGetWithVar | 30 | 10.4216 ns | 0.2361 ns | 0.2986 ns | 10.4605 ns | 1.31 | 0.04 | | ArrayGetWithField | 30 | 7.9253 ns | 0.0101 ns | 0.0089 ns | 7.9231 ns | 1.00 | 0.00 | | SpanGet | 30 | 7.8815 ns | 0.0056 ns | 0.0046 ns | 7.8799 ns | 0.99 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 32 | 10.9016 ns | 0.2460 ns | 0.2928 ns | 10.9234 ns | 1.20 | 0.04 | | ArrayGetWithField | 32 | 9.0887 ns | 0.1490 ns | 0.1393 ns | 9.0872 ns | 1.00 | 0.00 | | SpanGet | 32 | 8.3599 ns | 0.0023 ns | 0.0018 ns | 8.3594 ns | 0.92 | 0.01 | | | | | | | | | | | ArrayGetWithVar | 40 | 12.1384 ns | 0.0332 ns | 0.0259 ns | 12.1259 ns | 1.18 | 0.00 | | ArrayGetWithField | 40 | 10.2890 ns | 0.0161 ns | 0.0142 ns | 10.2858 ns | 1.00 | 0.00 | | SpanGet | 40 | 10.2771 ns | 0.0087 ns | 0.0082 ns | 10.2725 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 50 | 14.5209 ns | 0.0094 ns | 0.0074 ns | 14.5204 ns | 1.14 | 0.00 | | ArrayGetWithField | 50 | 12.7090 ns | 0.0251 ns | 0.0235 ns | 12.7142 ns | 1.00 | 0.00 | | SpanGet | 50 | 12.6737 ns | 0.0104 ns | 0.0082 ns | 12.6719 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 60 | 16.9274 ns | 0.0157 ns | 0.0131 ns | 16.9289 ns | 1.12 | 0.00 | | ArrayGetWithField | 60 | 15.0932 ns | 0.0385 ns | 0.0341 ns | 15.0869 ns | 1.00 | 0.00 | | SpanGet | 60 | 15.0897 ns | 0.0438 ns | 0.0409 ns | 15.0743 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 80 | 22.2228 ns | 0.1792 ns | 0.1676 ns | 22.1639 ns | 1.07 | 0.01 | | ArrayGetWithField | 80 | 20.8031 ns | 0.1991 ns | 0.1863 ns | 20.8343 ns | 1.00 | 0.00 | | SpanGet | 80 | 20.2242 ns | 0.1555 ns | 0.1378 ns | 20.2300 ns | 0.97 | 0.01 | | | | | | | | | | | ArrayGetWithVar | 90 | 24.1033 ns | 0.0211 ns | 0.0176 ns | 24.0949 ns | 1.08 | 0.00 | | ArrayGetWithField | 90 | 22.2535 ns | 0.0180 ns | 0.0160 ns | 22.2475 ns | 1.00 | 0.00 | | SpanGet | 90 | 22.2278 ns | 0.0063 ns | 0.0052 ns | 22.2260 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 100 | 35.7519 ns | 0.1380 ns | 0.1291 ns | 35.7208 ns | 1.18 | 0.00 | | ArrayGetWithField | 100 | 30.3591 ns | 0.0262 ns | 0.0219 ns | 30.3633 ns | 1.00 | 0.00 | | SpanGet | 100 | 30.1375 ns | 0.0272 ns | 0.0241 ns | 30.1293 ns | 0.99 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 128 | 42.4070 ns | 0.0753 ns | 0.0668 ns | 42.3966 ns | 1.15 | 0.00 | | ArrayGetWithField | 128 | 37.0188 ns | 0.0491 ns | 0.0436 ns | 37.0096 ns | 1.00 | 0.00 | | SpanGet | 128 | 36.9420 ns | 0.1566 ns | 0.1465 ns | 36.8590 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 256 | 72.3880 ns | 0.5299 ns | 0.4957 ns | 72.2868 ns | 1.08 | 0.01 | | ArrayGetWithField | 256 | 67.2595 ns | 0.1700 ns | 0.1590 ns | 67.1937 ns | 1.00 | 0.00 | | SpanGet | 256 | 66.5708 ns | 0.1292 ns | 0.1145 ns | 66.5350 ns | 0.99 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 512 | 133.9119 ns | 0.3940 ns | 0.3290 ns | 133.9845 ns | 1.05 | 0.00 | | ArrayGetWithField | 512 | 127.9565 ns | 0.1367 ns | 0.1141 ns | 127.9270 ns | 1.00 | 0.00 | | SpanGet | 512 | 127.7372 ns | 0.1064 ns | 0.0943 ns | 127.7265 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 1024 | 255.4683 ns | 0.7553 ns | 0.6695 ns | 255.1568 ns | 1.02 | 0.00 | | ArrayGetWithField | 1024 | 250.5938 ns | 0.2526 ns | 0.2239 ns | 250.5821 ns | 1.00 | 0.00 | | SpanGet | 1024 | 250.7683 ns | 0.6080 ns | 0.5687 ns | 250.6417 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 2048 | 500.8917 ns | 1.0776 ns | 1.0080 ns | 500.4943 ns | 1.01 | 0.00 | | ArrayGetWithField | 2048 | 495.4565 ns | 0.3916 ns | 0.3270 ns | 495.4714 ns | 1.00 | 0.00 | | SpanGet | 2048 | 495.2572 ns | 0.4029 ns | 0.3364 ns | 495.2063 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 4096 | 992.1368 ns | 2.8754 ns | 2.6897 ns | 990.8590 ns | 1.01 | 0.00 | | ArrayGetWithField | 4096 | 986.0712 ns | 0.8923 ns | 0.7910 ns | 985.8429 ns | 1.00 | 0.00 | | SpanGet | 4096 | 984.9568 ns | 0.4072 ns | 0.3610 ns | 985.0019 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 8192 | 1,968.7538 ns | 0.2638 ns | 0.2060 ns | 1,968.7178 ns | 1.00 | 0.00 | | ArrayGetWithField | 8192 | 1,966.1739 ns | 2.8904 ns | 2.5623 ns | 1,964.7451 ns | 1.00 | 0.00 | | SpanGet | 8192 | 1,967.1070 ns | 5.1706 ns | 4.8366 ns | 1,964.2349 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 1000000 | 239,186.3037 ns | 31.2120 ns | 26.0634 ns | 239,181.6895 ns | 1.00 | 0.00 | | ArrayGetWithField | 1000000 | 239,251.0824 ns | 190.1186 ns | 177.8370 ns | 239,231.1279 ns | 1.00 | 0.00 | | SpanGet | 1000000 | 239,076.0725 ns | 42.7034 ns | 37.8555 ns | 239,069.7632 ns | 1.00 | 0.00 | | | | | | | | | | | ArrayGetWithVar | 2147483591 | 513,362,891.6667 ns | 51,845.5735 ns | 40,477.6135 ns | 513,367,700.0000 ns | 1.00 | 0.00 | | ArrayGetWithField | 2147483591 | 513,708,415.3846 ns | 214,407.5874 ns | 179,040.0460 ns | 513,678,800.0000 ns | 1.00 | 0.00 | | SpanGet | 2147483591 | 513,460,507.1429 ns | 68,937.1375 ns | 61,110.9768 ns | 513,482,050.0000 ns | 1.00 | 0.00 | // * Warnings * MultimodalDistribution SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> It seems that the distribution is bimodal (mValue = 3.76) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> It seems that the distribution can have several modes (mValue = 3.11) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> It seems that the distribution can have several modes (mValue = 3) SpanVsArrayBenchmarks.SpanGet: Default -> It seems that the distribution is bimodal (mValue = 3.7) // * Hints * Outliers SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were detected (2.89 ns, 2.89 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed, 2 outliers were detected (1.70 ns, 1.72 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (1.78 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was detected (3.22 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 3 outliers were removed (2.30 ns..2.31 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed, 3 outliers were detected (1.99 ns, 2.03 ns, 2.03 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (4.22 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were detected (2.49 ns, 2.49 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (3.18 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (5.32 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (5.54 ns..5.70 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (3.71 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was detected (3.69 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed, 2 outliers were detected (3.84 ns, 3.94 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was detected (3.93 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (4.61 ns, 4.66 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (4.74 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (5.13 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (4.99 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed, 3 outliers were detected (4.78 ns, 4.82 ns, 4.83 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was detected (6.67 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (7.60 ns..7.80 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed, 3 outliers were detected (5.80 ns, 6.25 ns, 6.30 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (9.06 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (6.20 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (8.53 ns, 8.53 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (8.60 ns, 8.88 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (6.83 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (6.86 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (9.40 ns, 9.72 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (7.04 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 4 outliers were detected (11.40 ns..11.44 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (9.46 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (9.41 ns, 9.45 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were detected (11.72 ns, 11.76 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was detected (10.28 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 3 outliers were removed (9.87 ns..9.93 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (16.07 ns..16.45 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (11.86 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (16.06 ns..16.08 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 3 outliers were removed (14.23 ns..14.41 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (18.48 ns, 18.50 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (16.73 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (22.24 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (25.69 ns, 25.74 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (23.83 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (23.77 ns, 23.80 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (31.96 ns, 32.11 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (31.75 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (44.17 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (39.06 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (69.39 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed, 4 outliers were detected (135.67 ns, 135.69 ns, 137.00 ns, 137.67 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (132.07 ns, 132.46 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (130.78 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (259.74 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed, 3 outliers were detected (252.78 ns, 252.79 ns, 253.80 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (500.68 ns, 502.22 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (500.38 ns, 500.51 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (991.97 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed, 3 outliers were detected (986.70 ns, 986.75 ns, 991.81 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (1.97 us..1.98 us) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (1.98 us) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (239.28 us, 239.68 us) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (240.97 us) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (513.53 ms..514.07 ms) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (515.12 ms, 515.88 ms) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed, 2 outliers were detected (513.32 ms, 513.60 ms) // * Legends * TestObjectCount : Value of the 'TestObjectCount' parameter Mean : Arithmetic mean of all measurements Error : Half of 99.9% confidence interval StdDev : Standard deviation of all measurements Median : Value separating the higher half of all measurements (50th percentile) Ratio : Mean of the ratio distribution ([Current]/[Baseline]) RatioSD : Standard deviation of the ratio distribution ([Current]/[Baseline]) 1 ns : 1 Nanosecond (0.000000001 sec)BenchmarkDotNet=v0.13.3, OS=ubuntu 20.04 ************************************************************************************************************************************************* ************************************************************************************************************************************************* ************************************************************************************************************************************************* Intel Xeon Platinum 8272CL CPU 2.60GHz, 1 CPU, 4 l ogical and 2 physical cores .NET SDK=7.0.203 [Host] : .NET 7.0.5 (7.0.523.17405), X64 RyuJIT AVX2 DefaultJob : .NET 7.0.5 (7.0.523.17405), X64 RyuJIT AVX2 | Method | TestObjectCount | Mean | Error | StdDev | Ratio | RatioSD | |------------------ |---------------- |--------------------:|------------------:|------------------:|------:|--------:| | ArrayGetWithVar | 1 | 1.7144 ns | 0.0035 ns | 0.0033 ns | 4.97 | 0.01 | | ArrayGetWithField | 1 | 0.3450 ns | 0.0009 ns | 0.0008 ns | 1.00 | 0.00 | | SpanGet | 1 | 0.3670 ns | 0.0007 ns | 0.0007 ns | 1.06 | 0.00 | | | | | | | | | | ArrayGetWithVar | 2 | 1.7904 ns | 0.0007 ns | 0.0006 ns | 4.58 | 0.01 | | ArrayGetWithField | 2 | 0.3912 ns | 0.0010 ns | 0.0009 ns | 1.00 | 0.00 | | SpanGet | 2 | 0.6750 ns | 0.0021 ns | 0.0018 ns | 1.73 | 0.01 | | | | | | | | | | ArrayGetWithVar | 3 | 2.4049 ns | 0.0006 ns | 0.0005 ns | 2.50 | 0.00 | | ArrayGetWithField | 3 | 0.9626 ns | 0.0018 ns | 0.0015 ns | 1.00 | 0.00 | | SpanGet | 3 | 1.5743 ns | 0.0010 ns | 0.0008 ns | 1.64 | 0.00 | | | | | | | | | | ArrayGetWithVar | 4 | 2.9208 ns | 0.0017 ns | 0.0013 ns | 1.94 | 0.00 | | ArrayGetWithField | 4 | 1.5076 ns | 0.0024 ns | 0.0021 ns | 1.00 | 0.00 | | SpanGet | 4 | 1.9629 ns | 0.0027 ns | 0.0024 ns | 1.30 | 0.00 | | | | | | | | | | ArrayGetWithVar | 5 | 3.9197 ns | 0.0028 ns | 0.0025 ns | 1.57 | 0.00 | | ArrayGetWithField | 5 | 2.4945 ns | 0.0048 ns | 0.0042 ns | 1.00 | 0.00 | | SpanGet | 5 | 2.7509 ns | 0.0344 ns | 0.0322 ns | 1.10 | 0.01 | | | | | | | | | | ArrayGetWithVar | 6 | 3.5986 ns | 0.0261 ns | 0.0232 ns | 1.72 | 0.02 | | ArrayGetWithField | 6 | 2.0963 ns | 0.0163 ns | 0.0152 ns | 1.00 | 0.00 | | SpanGet | 6 | 3.0419 ns | 0.0818 ns | 0.0765 ns | 1.45 | 0.04 | | | | | | | | | | ArrayGetWithVar | 7 | 3.9044 ns | 0.0373 ns | 0.0349 ns | 1.64 | 0.02 | | ArrayGetWithField | 7 | 2.3830 ns | 0.0172 ns | 0.0161 ns | 1.00 | 0.00 | | SpanGet | 7 | 3.7281 ns | 0.0007 ns | 0.0006 ns | 1.57 | 0.01 | | | | | | | | | | ArrayGetWithVar | 8 | 4.1182 ns | 0.0017 ns | 0.0015 ns | 1.50 | 0.00 | | ArrayGetWithField | 8 | 2.7423 ns | 0.0008 ns | 0.0007 ns | 1.00 | 0.00 | | SpanGet | 8 | 3.9225 ns | 0.0006 ns | 0.0005 ns | 1.43 | 0.00 | | | | | | | | | | ArrayGetWithVar | 9 | 4.3981 ns | 0.0023 ns | 0.0018 ns | 1.53 | 0.00 | | ArrayGetWithField | 9 | 2.8798 ns | 0.0008 ns | 0.0007 ns | 1.00 | 0.00 | | SpanGet | 9 | 4.2915 ns | 0.0005 ns | 0.0005 ns | 1.49 | 0.00 | | | | | | | | | | ArrayGetWithVar | 10 | 4.6168 ns | 0.0045 ns | 0.0042 ns | 1.40 | 0.00 | | ArrayGetWithField | 10 | 3.3040 ns | 0.0007 ns | 0.0006 ns | 1.00 | 0.00 | | SpanGet | 10 | 4.3824 ns | 0.0087 ns | 0.0082 ns | 1.33 | 0.00 | | | | | | | | | | ArrayGetWithVar | 11 | 5.0594 ns | 0.0063 ns | 0.0049 ns | 1.35 | 0.00 | | ArrayGetWithField | 11 | 3.7469 ns | 0.0008 ns | 0.0006 ns | 1.00 | 0.00 | | SpanGet | 11 | 4.7152 ns | 0.0148 ns | 0.0138 ns | 1.26 | 0.00 | | | | | | | | | | ArrayGetWithVar | 12 | 5.1340 ns | 0.0012 ns | 0.0010 ns | 1.26 | 0.00 | | ArrayGetWithField | 12 | 4.0666 ns | 0.0080 ns | 0.0071 ns | 1.00 | 0.00 | | SpanGet | 12 | 5.0472 ns | 0.0073 ns | 0.0069 ns | 1.24 | 0.00 | | | | | | | | | | ArrayGetWithVar | 13 | 5.6316 ns | 0.0015 ns | 0.0012 ns | 1.28 | 0.01 | | ArrayGetWithField | 13 | 4.3903 ns | 0.0249 ns | 0.0221 ns | 1.00 | 0.00 | | SpanGet | 13 | 5.3302 ns | 0.0088 ns | 0.0078 ns | 1.21 | 0.01 | | | | | | | | | | ArrayGetWithVar | 14 | 5.8691 ns | 0.0060 ns | 0.0056 ns | 1.22 | 0.00 | | ArrayGetWithField | 14 | 4.7932 ns | 0.0059 ns | 0.0056 ns | 1.00 | 0.00 | | SpanGet | 14 | 5.6502 ns | 0.0179 ns | 0.0158 ns | 1.18 | 0.00 | | | | | | | | | | ArrayGetWithVar | 15 | 6.6377 ns | 0.0028 ns | 0.0022 ns | 1.27 | 0.00 | | ArrayGetWithField | 15 | 5.2252 ns | 0.0014 ns | 0.0013 ns | 1.00 | 0.00 | | SpanGet | 15 | 5.9511 ns | 0.0158 ns | 0.0148 ns | 1.14 | 0.00 | | | | | | | | | | ArrayGetWithVar | 16 | 6.8981 ns | 0.0119 ns | 0.0112 ns | 1.24 | 0.00 | | ArrayGetWithField | 16 | 5.5505 ns | 0.0114 ns | 0.0106 ns | 1.00 | 0.00 | | SpanGet | 16 | 6.2346 ns | 0.0200 ns | 0.0177 ns | 1.12 | 0.00 | | | | | | | | | | ArrayGetWithVar | 17 | 7.7612 ns | 0.0088 ns | 0.0078 ns | 1.33 | 0.00 | | ArrayGetWithField | 17 | 5.8474 ns | 0.0084 ns | 0.0078 ns | 1.00 | 0.00 | | SpanGet | 17 | 6.5241 ns | 0.0204 ns | 0.0191 ns | 1.12 | 0.00 | | | | | | | | | | ArrayGetWithVar | 18 | 8.0601 ns | 0.0168 ns | 0.0149 ns | 1.24 | 0.02 | | ArrayGetWithField | 18 | 6.4858 ns | 0.1023 ns | 0.0957 ns | 1.00 | 0.00 | | SpanGet | 18 | 6.8394 ns | 0.0342 ns | 0.0320 ns | 1.05 | 0.02 | | | | | | | | | | ArrayGetWithVar | 19 | 8.5406 ns | 0.0016 ns | 0.0013 ns | 1.27 | 0.00 | | ArrayGetWithField | 19 | 6.7132 ns | 0.0154 ns | 0.0128 ns | 1.00 | 0.00 | | SpanGet | 19 | 7.1487 ns | 0.0293 ns | 0.0274 ns | 1.06 | 0.00 | | | | | | | | | | ArrayGetWithVar | 20 | 8.8478 ns | 0.0129 ns | 0.0121 ns | 1.26 | 0.00 | | ArrayGetWithField | 20 | 7.0262 ns | 0.0066 ns | 0.0058 ns | 1.00 | 0.00 | | SpanGet | 20 | 7.4524 ns | 0.0215 ns | 0.0190 ns | 1.06 | 0.00 | | | | | | | | | | ArrayGetWithVar | 30 | 12.6107 ns | 0.0573 ns | 0.0536 ns | 1.18 | 0.01 | | ArrayGetWithField | 30 | 10.7281 ns | 0.0160 ns | 0.0150 ns | 1.00 | 0.00 | | SpanGet | 30 | 10.5565 ns | 0.0429 ns | 0.0380 ns | 0.98 | 0.00 | | | | | | | | | | ArrayGetWithVar | 32 | 13.2197 ns | 0.0958 ns | 0.0896 ns | 1.15 | 0.01 | | ArrayGetWithField | 32 | 11.5303 ns | 0.0275 ns | 0.0244 ns | 1.00 | 0.00 | | SpanGet | 32 | 11.7189 ns | 0.0331 ns | 0.0309 ns | 1.02 | 0.00 | | | | | | | | | | ArrayGetWithVar | 40 | 17.1164 ns | 0.0674 ns | 0.0598 ns | 1.04 | 0.00 | | ArrayGetWithField | 40 | 16.4160 ns | 0.0464 ns | 0.0434 ns | 1.00 | 0.00 | | SpanGet | 40 | 14.8238 ns | 0.0468 ns | 0.0438 ns | 0.90 | 0.00 | | | | | | | | | | ArrayGetWithVar | 50 | 18.5728 ns | 0.0593 ns | 0.0554 ns | 1.02 | 0.00 | | ArrayGetWithField | 50 | 18.1323 ns | 0.0233 ns | 0.0218 ns | 1.00 | 0.00 | | SpanGet | 50 | 18.3620 ns | 0.0352 ns | 0.0312 ns | 1.01 | 0.00 | | | | | | | | | | ArrayGetWithVar | 60 | 27.7889 ns | 0.0589 ns | 0.0551 ns | 1.08 | 0.00 | | ArrayGetWithField | 60 | 25.7314 ns | 0.0342 ns | 0.0320 ns | 1.00 | 0.00 | | SpanGet | 60 | 19.3356 ns | 0.0274 ns | 0.0243 ns | 0.75 | 0.00 | | | | | | | | | | ArrayGetWithVar | 80 | 50.0414 ns | 0.3840 ns | 0.3592 ns | 1.16 | 0.01 | | ArrayGetWithField | 80 | 43.3203 ns | 0.0732 ns | 0.0685 ns | 1.00 | 0.00 | | SpanGet | 80 | 46.2991 ns | 0.1615 ns | 0.1348 ns | 1.07 | 0.00 | | | | | | | | | | ArrayGetWithVar | 90 | 30.3271 ns | 0.0299 ns | 0.0250 ns | 0.92 | 0.00 | | ArrayGetWithField | 90 | 32.9228 ns | 0.0448 ns | 0.0397 ns | 1.00 | 0.00 | | SpanGet | 90 | 30.1212 ns | 0.0279 ns | 0.0247 ns | 0.91 | 0.00 | | | | | | | | | | ArrayGetWithVar | 100 | 50.9207 ns | 0.0524 ns | 0.0438 ns | 1.15 | 0.00 | | ArrayGetWithField | 100 | 44.3034 ns | 0.0203 ns | 0.0169 ns | 1.00 | 0.00 | | SpanGet | 100 | 48.1193 ns | 0.0569 ns | 0.0533 ns | 1.09 | 0.00 | | | | | | | | | | ArrayGetWithVar | 128 | 63.5936 ns | 0.0735 ns | 0.0687 ns | 1.17 | 0.00 | | ArrayGetWithField | 128 | 54.3614 ns | 0.0326 ns | 0.0305 ns | 1.00 | 0.00 | | SpanGet | 128 | 59.9921 ns | 0.0440 ns | 0.0390 ns | 1.10 | 0.00 | | | | | | | | | | ArrayGetWithVar | 256 | 101.1193 ns | 0.0666 ns | 0.0556 ns | 1.00 | 0.00 | | ArrayGetWithField | 256 | 101.0048 ns | 0.0942 ns | 0.0835 ns | 1.00 | 0.00 | | SpanGet | 256 | 97.7434 ns | 0.0330 ns | 0.0257 ns | 0.97 | 0.00 | | | | | | | | | | ArrayGetWithVar | 512 | 176.4697 ns | 0.0506 ns | 0.0473 ns | 0.90 | 0.00 | | ArrayGetWithField | 512 | 195.4723 ns | 0.0439 ns | 0.0389 ns | 1.00 | 0.00 | | SpanGet | 512 | 173.3604 ns | 0.0621 ns | 0.0551 ns | 0.89 | 0.00 | | | | | | | | | | ArrayGetWithVar | 1024 | 327.4840 ns | 0.0646 ns | 0.0540 ns | 0.85 | 0.00 | | ArrayGetWithField | 1024 | 385.4179 ns | 0.4587 ns | 0.4066 ns | 1.00 | 0.00 | | SpanGet | 1024 | 324.5606 ns | 0.4749 ns | 0.4210 ns | 0.84 | 0.00 | | | | | | | | | | ArrayGetWithVar | 2048 | 630.3876 ns | 0.4305 ns | 0.4027 ns | 0.82 | 0.00 | | ArrayGetWithField | 2048 | 764.5638 ns | 1.1467 ns | 1.0726 ns | 1.00 | 0.00 | | SpanGet | 2048 | 627.6572 ns | 0.7236 ns | 0.6768 ns | 0.82 | 0.00 | | | | | | | | | | ArrayGetWithVar | 4096 | 1,234.8919 ns | 0.1193 ns | 0.0996 ns | 0.81 | 0.00 | | ArrayGetWithField | 4096 | 1,520.9689 ns | 0.7341 ns | 0.6508 ns | 1.00 | 0.00 | | SpanGet | 4096 | 1,232.3784 ns | 0.6339 ns | 0.5293 ns | 0.81 | 0.00 | | | | | | | | | | ArrayGetWithVar | 8192 | 2,444.7565 ns | 0.4708 ns | 0.3931 ns | 0.81 | 0.00 | | ArrayGetWithField | 8192 | 3,032.8116 ns | 0.4344 ns | 0.3391 ns | 1.00 | 0.00 | | SpanGet | 8192 | 2,442.6178 ns | 0.5773 ns | 0.4821 ns | 0.81 | 0.00 | | | | | | | | | | ArrayGetWithVar | 1000000 | 295,415.8654 ns | 48.2387 ns | 42.7623 ns | 0.80 | 0.00 | | ArrayGetWithField | 1000000 | 369,338.8544 ns | 163.6322 ns | 136.6403 ns | 1.00 | 0.00 | | SpanGet | 1000000 | 295,432.4293 ns | 186.8233 ns | 145.8593 ns | 0.80 | 0.00 | | | | | | | | | | ArrayGetWithVar | 2147483591 | 635,510,534.2000 ns | 1,123,953.3384 ns | 1,051,346.6501 ns | 0.80 | 0.00 | | ArrayGetWithField | 2147483591 | 792,820,286.0714 ns | 158,248.9330 ns | 140,283.5572 ns | 1.00 | 0.00 | | SpanGet | 2147483591 | 634,263,796.3077 ns | 73,366.8521 ns | 61,264.6443 ns | 0.80 | 0.00 | // * Hints * Outliers SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (2.25 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (3.68 ns, 3.69 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (2.26 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (2.55 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (4.29 ns, 4.29 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed, 3 outliers were detected (2.82 ns, 2.83 ns, 2.83 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (3.44 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (4.82 ns..4.83 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (3.38 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (3.84 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed, 2 outliers were detected (5.80 ns, 5.91 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (4.38 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (5.54 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (5.61 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (6.02 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (4.61 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed, 3 outliers were detected (5.79 ns, 5.79 ns, 5.79 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (6.29 ns..6.29 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (4.75 ns, 4.77 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (6.16 ns, 6.17 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (5.18 ns, 5.18 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (6.99 ns..8.17 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (5.62 ns, 5.62 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (7.02 ns, 7.02 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (5.96 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (7.75 ns..7.99 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (6.43 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (7.22 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (7.56 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (8.53 ns..8.54 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (8.17 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (9.68 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (9.99 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 3 outliers were removed (10.44 ns..10.44 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (8.62 ns, 8.93 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (8.93 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (9.38 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed, 2 outliers were detected (12.35 ns, 12.51 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (13.46 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed (19.70 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed, 4 outliers were detected (20.15 ns..20.19 ns, 20.29 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (21.29 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was detected (44.96 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed, 3 outliers were detected (47.84 ns, 48.47 ns, 48.59 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (32.39 ns, 32.48 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (34.93 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (32.13 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed, 3 outliers were detected (52.69 ns, 52.92 ns, 52.93 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (46.28 ns, 46.29 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (63.12 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (103.46 ns, 103.46 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (103.80 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 3 outliers were removed (100.34 ns..100.90 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (202.86 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (176.24 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (330.17 ns, 330.82 ns) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (394.09 ns) SpanVsArrayBenchmarks.SpanGet: Default -> 1 outlier was removed (328.45 ns) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (1.24 us, 1.24 us) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed, 2 outliers were detected (1.52 us, 1.53 us) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 2 outliers were removed (2.45 us, 2.45 us) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 3 outliers were removed (3.04 us..3.04 us) SpanVsArrayBenchmarks.ArrayGetWithVar: Default -> 1 outlier was removed, 2 outliers were detected (295.35 us, 295.66 us) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 2 outliers were removed (369.92 us, 370.16 us) SpanVsArrayBenchmarks.SpanGet: Default -> 3 outliers were removed (296.57 us..306.32 us) SpanVsArrayBenchmarks.ArrayGetWithField: Default -> 1 outlier was removed (793.21 ms) SpanVsArrayBenchmarks.SpanGet: Default -> 2 outliers were removed (634.57 ms, 634.59 ms) // * Legends * TestObjectCount : Value of the 'TestObjectCount' parameter Mean : Arithmetic mean of all measurements Error : Half of 99.9% confidence interval StdDev : Standard deviation of all measurements Ratio : Mean of the ratio distribution ([Current]/[Baseline]) RatioSD : Standard deviation of the ratio distribution ([Current]/[Baseline]) 1 ns : 1 Nanosecond (0.000000001 sec) ************************************************************************************************************************************************* ************************************************************************************************************************************************* ************************************************************************************************************************************************* BenchmarkDotNet=v0.13.3, OS=Windows 11 (10.0.22621.1555) AMD Ryzen 7 4700U with Radeon Graphics, 1 CPU, 8 logical and 8 physical cores .NET SDK=7.0.203 [Host] : .NET 7.0.5 (7.0.523.17405), X64 RyuJIT AVX2 DefaultJob : .NET 7.0.5 (7.0.523.17405), X64 RyuJIT AVX2 | Method | TestObjectCount | Mean | Error | StdDev | Median | Ratio | RatioSD | |------------------ |---------------- |----------------------:|-------------------:|-------------------:|----------------------:|------:|--------:| | ArraySetWithVar | 1 | 1.4697 ns | 0.0243 ns | 0.0227 ns | 1.4777 ns | 4.29 | 0.29 | | ArraySetWithField | 1 | 0.3436 ns | 0.0225 ns | 0.0210 ns | 0.3492 ns | 1.00 | 0.00 | | SpanSet | 1 | 0.5153 ns | 0.0077 ns | 0.0069 ns | 0.5159 ns | 1.50 | 0.09 | | | | | | | | | | | ArraySetWithVar | 2 | 1.7058 ns | 0.0124 ns | 0.0116 ns | 1.7081 ns | 2.44 | 0.02 | | ArraySetWithField | 2 | 0.7001 ns | 0.0017 ns | 0.0013 ns | 0.7000 ns | 1.00 | 0.00 | | SpanSet | 2 | 1.1681 ns | 0.0445 ns | 0.0417 ns | 1.1618 ns | 1.68 | 0.07 | | | | | | | | | | | ArraySetWithVar | 3 | 2.1158 ns | 0.0724 ns | 0.1589 ns | 2.1493 ns | 2.18 | 0.16 | | ArraySetWithField | 3 | 0.9698 ns | 0.0024 ns | 0.0020 ns | 0.9697 ns | 1.00 | 0.00 | | SpanSet | 3 | 1.5822 ns | 0.0164 ns | 0.0153 ns | 1.5835 ns | 1.63 | 0.02 | | | | | | | | | | | ArraySetWithVar | 4 | 2.2945 ns | 0.0055 ns | 0.0049 ns | 2.2936 ns | 1.80 | 0.00 | | ArraySetWithField | 4 | 1.2779 ns | 0.0038 ns | 0.0029 ns | 1.2779 ns | 1.00 | 0.00 | | SpanSet | 4 | 2.0907 ns | 0.0125 ns | 0.0111 ns | 2.0963 ns | 1.64 | 0.01 | | | | | | | | | | | ArraySetWithVar | 5 | 2.7734 ns | 0.0494 ns | 0.0507 ns | 2.7562 ns | 1.60 | 0.03 | | ArraySetWithField | 5 | 1.7355 ns | 0.0096 ns | 0.0080 ns | 1.7390 ns | 1.00 | 0.00 | | SpanSet | 5 | 2.8583 ns | 0.0867 ns | 0.1586 ns | 2.7817 ns | 1.65 | 0.10 | | | | | | | | | | | ArraySetWithVar | 6 | 3.8121 ns | 0.0173 ns | 0.0154 ns | 3.8119 ns | 1.82 | 0.02 | | ArraySetWithField | 6 | 2.0951 ns | 0.0165 ns | 0.0146 ns | 2.0946 ns | 1.00 | 0.00 | | SpanSet | 6 | 3.3108 ns | 0.0354 ns | 0.0331 ns | 3.3259 ns | 1.58 | 0.02 | | | | | | | | | | | ArraySetWithVar | 7 | 3.4567 ns | 0.0165 ns | 0.0129 ns | 3.4596 ns | 1.41 | 0.01 | | ArraySetWithField | 7 | 2.4506 ns | 0.0052 ns | 0.0046 ns | 2.4511 ns | 1.00 | 0.00 | | SpanSet | 7 | 3.6886 ns | 0.0219 ns | 0.0183 ns | 3.6959 ns | 1.51 | 0.01 | | | | | | | | | | | ArraySetWithVar | 8 | 3.8263 ns | 0.0097 ns | 0.0086 ns | 3.8244 ns | 1.40 | 0.01 | | ArraySetWithField | 8 | 2.7420 ns | 0.0113 ns | 0.0106 ns | 2.7401 ns | 1.00 | 0.00 | | SpanSet | 8 | 4.3303 ns | 0.0419 ns | 0.0392 ns | 4.3372 ns | 1.58 | 0.01 | | | | | | | | | | | ArraySetWithVar | 9 | 4.0671 ns | 0.0144 ns | 0.0120 ns | 4.0669 ns | 1.32 | 0.00 | | ArraySetWithField | 9 | 3.0772 ns | 0.0066 ns | 0.0055 ns | 3.0759 ns | 1.00 | 0.00 | | SpanSet | 9 | 4.7950 ns | 0.0458 ns | 0.0429 ns | 4.7805 ns | 1.56 | 0.02 | | | | | | | | | | | ArraySetWithVar | 10 | 5.0931 ns | 0.0349 ns | 0.0326 ns | 5.1000 ns | 1.41 | 0.02 | | ArraySetWithField | 10 | 3.6005 ns | 0.0558 ns | 0.0522 ns | 3.6177 ns | 1.00 | 0.00 | | SpanSet | 10 | 5.3014 ns | 0.1238 ns | 0.1158 ns | 5.2656 ns | 1.47 | 0.04 | | | | | | | | | | | ArraySetWithVar | 11 | 4.6538 ns | 0.1019 ns | 0.0953 ns | 4.6584 ns | 1.27 | 0.03 | | ArraySetWithField | 11 | 3.6546 ns | 0.0123 ns | 0.0115 ns | 3.6556 ns | 1.00 | 0.00 | | SpanSet | 11 | 5.6726 ns | 0.0291 ns | 0.0272 ns | 5.6684 ns | 1.55 | 0.01 | | | | | | | | | | | ArraySetWithVar | 12 | 5.0027 ns | 0.0697 ns | 0.0652 ns | 4.9778 ns | 1.25 | 0.02 | | ArraySetWithField | 12 | 4.0128 ns | 0.0249 ns | 0.0233 ns | 4.0165 ns | 1.00 | 0.00 | | SpanSet | 12 | 6.0483 ns | 0.0539 ns | 0.0421 ns | 6.0564 ns | 1.51 | 0.01 | | | | | | | | | | | ArraySetWithVar | 13 | 5.1638 ns | 0.0386 ns | 0.0342 ns | 5.1679 ns | 1.23 | 0.01 | | ArraySetWithField | 13 | 4.1868 ns | 0.0080 ns | 0.0071 ns | 4.1877 ns | 1.00 | 0.00 | | SpanSet | 13 | 6.8180 ns | 0.1338 ns | 0.1252 ns | 6.8105 ns | 1.63 | 0.03 | | | | | | | | | | | ArraySetWithVar | 14 | 5.3945 ns | 0.0084 ns | 0.0065 ns | 5.3939 ns | 1.17 | 0.00 | | ArraySetWithField | 14 | 4.6050 ns | 0.0163 ns | 0.0136 ns | 4.6079 ns | 1.00 | 0.00 | | SpanSet | 14 | 7.4360 ns | 0.0431 ns | 0.0360 ns | 7.4488 ns | 1.61 | 0.01 | | | | | | | | | | | ArraySetWithVar | 15 | 6.0572 ns | 0.1460 ns | 0.2046 ns | 6.0832 ns | 1.25 | 0.04 | | ArraySetWithField | 15 | 4.8496 ns | 0.0054 ns | 0.0042 ns | 4.8491 ns | 1.00 | 0.00 | | SpanSet | 15 | 7.9418 ns | 0.0164 ns | 0.0137 ns | 7.9376 ns | 1.64 | 0.00 | | | | | | | | | | | ArraySetWithVar | 16 | 6.4385 ns | 0.1580 ns | 0.2412 ns | 6.3191 ns | 1.26 | 0.05 | | ArraySetWithField | 16 | 5.1288 ns | 0.0365 ns | 0.0324 ns | 5.1361 ns | 1.00 | 0.00 | | SpanSet | 16 | 8.8905 ns | 0.0499 ns | 0.0466 ns | 8.8896 ns | 1.73 | 0.01 | | | | | | | | | | | ArraySetWithVar | 17 | 6.6477 ns | 0.1621 ns | 0.1665 ns | 6.6454 ns | 1.23 | 0.04 | | ArraySetWithField | 17 | 5.3947 ns | 0.1035 ns | 0.0864 ns | 5.3538 ns | 1.00 | 0.00 | | SpanSet | 17 | 8.5048 ns | 0.0249 ns | 0.0221 ns | 8.5075 ns | 1.58 | 0.02 | | | | | | | | | | | ArraySetWithVar | 18 | 6.6377 ns | 0.1267 ns | 0.1244 ns | 6.5944 ns | 1.18 | 0.02 | | ArraySetWithField | 18 | 5.6304 ns | 0.0105 ns | 0.0093 ns | 5.6274 ns | 1.00 | 0.00 | | SpanSet | 18 | 8.9234 ns | 0.0360 ns | 0.0319 ns | 8.9253 ns | 1.58 | 0.01 | | | | | | | | | | | ArraySetWithVar | 19 | 7.0242 ns | 0.0154 ns | 0.0120 ns | 7.0265 ns | 1.16 | 0.00 | | ArraySetWithField | 19 | 6.0558 ns | 0.0153 ns | 0.0136 ns | 6.0505 ns | 1.00 | 0.00 | | SpanSet | 19 | 9.6918 ns | 0.0267 ns | 0.0249 ns | 9.6928 ns | 1.60 | 0.01 | | | | | | | | | | | ArraySetWithVar | 20 | 7.3951 ns | 0.1098 ns | 0.1027 ns | 7.3463 ns | 1.17 | 0.01 | | ArraySetWithField | 20 | 6.3081 ns | 0.0147 ns | 0.0123 ns | 6.3062 ns | 1.00 | 0.00 | | SpanSet | 20 | 10.3341 ns | 0.0067 ns | 0.0056 ns | 10.3315 ns | 1.64 | 0.00 | | | | | | | | | | | ArraySetWithVar | 30 | 9.7678 ns | 0.0492 ns | 0.0460 ns | 9.7524 ns | 1.06 | 0.01 | | ArraySetWithField | 30 | 9.2401 ns | 0.0386 ns | 0.0342 ns | 9.2511 ns | 1.00 | 0.00 | | SpanSet | 30 | 15.2144 ns | 0.0390 ns | 0.0345 ns | 15.2198 ns | 1.65 | 0.01 | | | | | | | | | | | ArraySetWithVar | 32 | 11.5139 ns | 0.2307 ns | 0.2158 ns | 11.3850 ns | 1.19 | 0.02 | | ArraySetWithField | 32 | 9.7155 ns | 0.0127 ns | 0.0112 ns | 9.7123 ns | 1.00 | 0.00 | | SpanSet | 32 | 16.0872 ns | 0.0204 ns | 0.0170 ns | 16.0871 ns | 1.66 | 0.00 | | | | | | | | | | | ArraySetWithVar | 40 | 12.2375 ns | 0.0264 ns | 0.0247 ns | 12.2253 ns | 1.01 | 0.00 | | ArraySetWithField | 40 | 12.1236 ns | 0.0144 ns | 0.0134 ns | 12.1221 ns | 1.00 | 0.00 | | SpanSet | 40 | 19.9416 ns | 0.0273 ns | 0.0255 ns | 19.9322 ns | 1.64 | 0.00 | | | | | | | | | | | ArraySetWithVar | 50 | 14.6316 ns | 0.0303 ns | 0.0268 ns | 14.6241 ns | 0.94 | 0.00 | | ArraySetWithField | 50 | 15.5678 ns | 0.0862 ns | 0.0764 ns | 15.5547 ns | 1.00 | 0.00 | | SpanSet | 50 | 24.7167 ns | 0.0153 ns | 0.0119 ns | 24.7160 ns | 1.59 | 0.01 | | | | | | | | | | | ArraySetWithVar | 60 | 17.0088 ns | 0.0186 ns | 0.0165 ns | 17.0064 ns | 0.92 | 0.01 | | ArraySetWithField | 60 | 18.5370 ns | 0.1463 ns | 0.1368 ns | 18.5426 ns | 1.00 | 0.00 | | SpanSet | 60 | 29.5779 ns | 0.1183 ns | 0.1107 ns | 29.6144 ns | 1.60 | 0.01 | | | | | | | | | | | ArraySetWithVar | 80 | 24.1961 ns | 0.1555 ns | 0.1455 ns | 24.1733 ns | 0.91 | 0.01 | | ArraySetWithField | 80 | 26.4982 ns | 0.1534 ns | 0.1435 ns | 26.4651 ns | 1.00 | 0.00 | | SpanSet | 80 | 40.4041 ns | 0.4015 ns | 0.3755 ns | 40.3401 ns | 1.52 | 0.02 | | | | | | | | | | | ArraySetWithVar | 90 | 24.2325 ns | 0.0650 ns | 0.0577 ns | 24.2251 ns | 0.72 | 0.01 | | ArraySetWithField | 90 | 33.6785 ns | 0.2283 ns | 0.2136 ns | 33.7178 ns | 1.00 | 0.00 | | SpanSet | 90 | 43.9471 ns | 0.1354 ns | 0.1057 ns | 43.9477 ns | 1.30 | 0.01 | | | | | | | | | | | ArraySetWithVar | 100 | 34.6069 ns | 0.3842 ns | 0.3593 ns | 34.7487 ns | 0.97 | 0.01 | | ArraySetWithField | 100 | 35.5776 ns | 0.1210 ns | 0.1131 ns | 35.5837 ns | 1.00 | 0.00 | | SpanSet | 100 | 53.7344 ns | 0.1538 ns | 0.1439 ns | 53.7185 ns | 1.51 | 0.01 | | | | | | | | | | | ArraySetWithVar | 128 | 41.4045 ns | 0.4361 ns | 0.4079 ns | 41.5116 ns | 0.95 | 0.01 | | ArraySetWithField | 128 | 43.6934 ns | 0.1310 ns | 0.1162 ns | 43.6749 ns | 1.00 | 0.00 | | SpanSet | 128 | 66.5672 ns | 0.1397 ns | 0.1238 ns | 66.5548 ns | 1.52 | 0.00 | | | | | | | | | | | ArraySetWithVar | 256 | 70.9427 ns | 0.4782 ns | 0.4473 ns | 71.0490 ns | 0.89 | 0.01 | | ArraySetWithField | 256 | 80.0742 ns | 0.2967 ns | 0.2631 ns | 80.0270 ns | 1.00 | 0.00 | | SpanSet | 256 | 127.5915 ns | 0.4899 ns | 0.4343 ns | 127.3657 ns | 1.59 | 0.01 | | | | | | | | | | | ArraySetWithVar | 512 | 132.1828 ns | 0.3919 ns | 0.3474 ns | 132.2670 ns | 0.86 | 0.00 | | ArraySetWithField | 512 | 154.2140 ns | 0.3738 ns | 0.3497 ns | 154.2198 ns | 1.00 | 0.00 | | SpanSet | 512 | 250.3647 ns | 0.5664 ns | 0.5021 ns | 250.0886 ns | 1.62 | 0.00 | | | | | | | | | | | ArraySetWithVar | 1024 | 256.1749 ns | 1.2610 ns | 1.1179 ns | 255.8400 ns | 0.84 | 0.00 | | ArraySetWithField | 1024 | 303.9608 ns | 0.7641 ns | 0.7148 ns | 303.6921 ns | 1.00 | 0.00 | | SpanSet | 1024 | 471.4042 ns | 0.9878 ns | 0.9240 ns | 471.5121 ns | 1.55 | 0.00 | | | | | | | | | | | ArraySetWithVar | 2048 | 501.2071 ns | 1.4541 ns | 1.2890 ns | 500.8381 ns | 0.83 | 0.00 | | ArraySetWithField | 2048 | 600.8989 ns | 2.7570 ns | 2.4440 ns | 600.8161 ns | 1.00 | 0.00 | | SpanSet | 2048 | 935.1442 ns | 1.5942 ns | 1.4912 ns | 934.6576 ns | 1.56 | 0.01 | | | | | | | | | | | ArraySetWithVar | 4096 | 996.5799 ns | 0.9021 ns | 0.7997 ns | 996.5021 ns | 0.83 | 0.00 | | ArraySetWithField | 4096 | 1,201.1907 ns | 4.7698 ns | 4.4616 ns | 1,202.4870 ns | 1.00 | 0.00 | | SpanSet | 4096 | 1,890.3773 ns | 6.1361 ns | 5.7397 ns | 1,890.7349 ns | 1.57 | 0.01 | | | | | | | | | | | ArraySetWithVar | 8192 | 1,987.9107 ns | 8.2600 ns | 6.8975 ns | 1,986.8454 ns | 0.83 | 0.00 | | ArraySetWithField | 8192 | 2,399.1963 ns | 3.6931 ns | 2.8833 ns | 2,398.9801 ns | 1.00 | 0.00 | | SpanSet | 8192 | 3,785.9897 ns | 21.6577 ns | 18.0852 ns | 3,782.0320 ns | 1.58 | 0.01 | | | | | | | | | | | ArraySetWithVar | 1000000 | 1,095,660.7117 ns | 21,714.0404 ns | 33,806.1449 ns | 1,083,141.5039 ns | 0.98 | 0.03 | | ArraySetWithField | 1000000 | 1,111,976.3359 ns | 20,906.9048 ns | 27,910.1174 ns | 1,101,771.0938 ns | 1.00 | 0.00 | | SpanSet | 1000000 | 1,114,171.4583 ns | 16,801.4894 ns | 15,716.1236 ns | 1,117,650.9766 ns | 1.00 | 0.04 | | | | | | | | | | | ArraySetWithVar | 2147483591 | 2,211,687,771.4286 ns | 16,208,703.4177 ns | 14,368,593.3923 ns | 2,215,022,850.0000 ns | 0.99 | 0.01 | | ArraySetWithField | 2147483591 | 2,234,781,915.3846 ns | 14,747,844.4235 ns | 12,315,118.0269 ns | 2,232,597,000.0000 ns | 1.00 | 0.00 | | SpanSet | 2147483591 | 2,256,799,913.3333 ns | 29,236,562.1000 ns | 27,347,898.3280 ns | 2,241,684,800.0000 ns | 1.01 | 0.02 | // * Warnings * MultimodalDistribution SpanVsArrayBenchmarks.ArraySetWithVar: Default -> It seems that the distribution is bimodal (mValue = 3.78) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> It seems that the distribution is bimodal (mValue = 3.5) // * Hints * Outliers SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 2 outliers were detected (2.93 ns, 2.96 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was detected (1.81 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed, 2 outliers were detected (2.01 ns, 2.05 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was detected (3.19 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 3 outliers were removed (2.22 ns..2.28 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed (2.49 ns, 2.49 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was detected (3.06 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (3.82 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 3 outliers were removed, 4 outliers were detected (2.77 ns, 2.79 ns..2.82 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed, 3 outliers were detected (3.57 ns, 3.57 ns, 3.62 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 4 outliers were removed (4.57 ns..4.77 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed, 5 outliers were detected (3.23 ns..3.23 ns, 3.26 ns, 3.27 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (4.84 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (5.37 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (3.72 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 3 outliers were removed, 4 outliers were detected (4.92 ns, 4.99 ns..5.39 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (3.98 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed, 4 outliers were detected (5.15 ns, 5.17 ns, 5.24 ns, 5.25 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (5.47 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 2 outliers were removed (5.63 ns, 5.69 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed (4.62 ns, 4.67 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was detected (7.12 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was detected (5.46 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 3 outliers were removed, 5 outliers were detected (7.48 ns, 7.48 ns, 7.69 ns..8.06 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (6.94 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (5.71 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 3 outliers were removed (6.93 ns..7.40 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed, 3 outliers were detected (6.07 ns, 6.14 ns, 6.14 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed, 5 outliers were detected (8.86 ns..8.92 ns, 8.99 ns, 9.00 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 3 outliers were removed (6.37 ns..6.42 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed (9.52 ns, 9.60 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (6.92 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed (7.52 ns, 7.56 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed, 2 outliers were detected (9.95 ns, 10.07 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 3 outliers were removed (8.68 ns..8.91 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (7.16 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed, 2 outliers were detected (10.35 ns, 10.52 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 3 outliers were removed (8.69 ns..8.92 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (7.64 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was detected (11.12 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed (7.96 ns, 7.97 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed (11.87 ns, 11.88 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed, 3 outliers were detected (10.65 ns, 10.72 ns, 10.81 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (16.84 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (11.28 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed, 3 outliers were detected (17.55 ns, 17.65 ns, 17.65 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (16.20 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (18.37 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 3 outliers were removed (26.29 ns..26.37 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (18.58 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was detected (27.68 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (26.02 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 3 outliers were removed (45.90 ns..45.93 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was detected (35.18 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was detected (36.80 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was detected (41.98 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed, 2 outliers were detected (44.93 ns, 45.65 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (69.12 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (82.86 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (131.98 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed, 2 outliers were detected (133.69 ns, 136.28 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (257.71 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (262.80 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (507.27 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed, 2 outliers were detected (598.19 ns, 612.01 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (1.00 us) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was detected (1.19 us) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 2 outliers were removed (2.04 us, 2.08 us) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 3 outliers were removed (2.42 us..2.44 us) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed (3.85 us, 3.94 us) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 4 outliers were removed (1.22 ms..1.35 ms) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were detected (1.08 ms, 1.08 ms) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed, 2 outliers were detected (2.18 s, 2.26 s) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed (2.28 s, 2.28 s) // * Legends * TestObjectCount : Value of the 'TestObjectCount' parameter Mean : Arithmetic mean of all measurements Error : Half of 99.9% confidence interval StdDev : Standard deviation of all measurements Median : Value separating the higher half of all measurements (50th percentile) Ratio : Mean of the ratio distribution ([Current]/[Baseline]) RatioSD : Standard deviation of the ratio distribution ([Current]/[Baseline]) 1 ns : 1 Nanosecond (0.000000001 sec) ************************************************************************************************************************************************* ************************************************************************************************************************************************* ************************************************************************************************************************************************* BenchmarkDotNet=v0.13.3, OS=ubuntu 20.04 Intel Xeon Platinum 8272CL CPU 2.60GHz, 1 CPU, 4 logical and 2 physical cores .NET SDK=7.0.203 [Host] : .NET 7.0.5 (7.0.523.17405), X64 RyuJIT AVX2 DefaultJob : .NET 7.0.5 (7.0.523.17405), X64 RyuJIT AVX2 | Method | TestObjectCount | Mean | Error | StdDev | Median | Ratio | RatioSD | |------------------ |---------------- |------------------------:|----------------------:|----------------------:|------------------------:|------:|--------:| | ArraySetWithVar | 1 | 1.6005 ns | 0.0025 ns | 0.0022 ns | 1.6007 ns | 4.61 | 0.03 | | ArraySetWithField | 1 | 0.3466 ns | 0.0027 ns | 0.0025 ns | 0.3478 ns | 1.00 | 0.00 | | SpanSet | 1 | 0.7008 ns | 0.0007 ns | 0.0006 ns | 0.7008 ns | 2.02 | 0.01 | | | | | | | | | | | ArraySetWithVar | 2 | 1.9617 ns | 0.0028 ns | 0.0026 ns | 1.9621 ns | 2.97 | 0.01 | | ArraySetWithField | 2 | 0.6612 ns | 0.0016 ns | 0.0013 ns | 0.6610 ns | 1.00 | 0.00 | | SpanSet | 2 | 0.9224 ns | 0.0009 ns | 0.0009 ns | 0.9223 ns | 1.40 | 0.00 | | | | | | | | | | | ArraySetWithVar | 3 | 3.9180 ns | 0.0178 ns | 0.0166 ns | 3.9195 ns | 3.07 | 0.02 | | ArraySetWithField | 3 | 1.2773 ns | 0.0067 ns | 0.0056 ns | 1.2749 ns | 1.00 | 0.00 | | SpanSet | 3 | 1.6728 ns | 0.0065 ns | 0.0060 ns | 1.6733 ns | 1.31 | 0.01 | | | | | | | | | | | ArraySetWithVar | 4 | 3.0629 ns | 0.0035 ns | 0.0032 ns | 3.0636 ns | 1.66 | 0.00 | | ArraySetWithField | 4 | 1.8461 ns | 0.0032 ns | 0.0030 ns | 1.8457 ns | 1.00 | 0.00 | | SpanSet | 4 | 2.2457 ns | 0.0045 ns | 0.0039 ns | 2.2458 ns | 1.22 | 0.00 | | | | | | | | | | | ArraySetWithVar | 5 | 3.9794 ns | 0.0025 ns | 0.0022 ns | 3.9800 ns | 1.32 | 0.05 | | ArraySetWithField | 5 | 3.0059 ns | 0.0939 ns | 0.1153 ns | 3.0882 ns | 1.00 | 0.00 | | SpanSet | 5 | 3.1000 ns | 0.0028 ns | 0.0023 ns | 3.0997 ns | 1.03 | 0.04 | | | | | | | | | | | ArraySetWithVar | 6 | 3.5894 ns | 0.0089 ns | 0.0079 ns | 3.5899 ns | 1.49 | 0.02 | | ArraySetWithField | 6 | 2.4166 ns | 0.0354 ns | 0.0331 ns | 2.4147 ns | 1.00 | 0.00 | | SpanSet | 6 | 2.7727 ns | 0.0181 ns | 0.0161 ns | 2.7759 ns | 1.15 | 0.02 | | | | | | | | | | | ArraySetWithVar | 7 | 3.8705 ns | 0.0090 ns | 0.0084 ns | 3.8673 ns | 1.16 | 0.00 | | ArraySetWithField | 7 | 3.3283 ns | 0.0074 ns | 0.0069 ns | 3.3268 ns | 1.00 | 0.00 | | SpanSet | 7 | 3.1766 ns | 0.0102 ns | 0.0085 ns | 3.1786 ns | 0.95 | 0.00 | | | | | | | | | | | ArraySetWithVar | 8 | 4.1455 ns | 0.0030 ns | 0.0028 ns | 4.1448 ns | 1.30 | 0.00 | | ArraySetWithField | 8 | 3.1821 ns | 0.0027 ns | 0.0024 ns | 3.1821 ns | 1.00 | 0.00 | | SpanSet | 8 | 3.6841 ns | 0.0079 ns | 0.0074 ns | 3.6839 ns | 1.16 | 0.00 | | | | | | | | | | | ArraySetWithVar | 9 | 4.4378 ns | 0.0022 ns | 0.0019 ns | 4.4377 ns | 1.14 | 0.00 | | ArraySetWithField | 9 | 3.8759 ns | 0.0029 ns | 0.0027 ns | 3.8764 ns | 1.00 | 0.00 | | SpanSet | 9 | 4.1472 ns | 0.0158 ns | 0.0147 ns | 4.1470 ns | 1.07 | 0.00 | | | | | | | | | | | ArraySetWithVar | 10 | 4.7189 ns | 0.0038 ns | 0.0032 ns | 4.7184 ns | 1.15 | 0.00 | | ArraySetWithField | 10 | 4.1148 ns | 0.0029 ns | 0.0024 ns | 4.1144 ns | 1.00 | 0.00 | | SpanSet | 10 | 4.4050 ns | 0.0279 ns | 0.0233 ns | 4.3943 ns | 1.07 | 0.01 | | | | | | | | | | | ArraySetWithVar | 11 | 5.0961 ns | 0.0074 ns | 0.0062 ns | 5.0969 ns | 1.03 | 0.00 | | ArraySetWithField | 11 | 4.9518 ns | 0.0044 ns | 0.0039 ns | 4.9520 ns | 1.00 | 0.00 | | SpanSet | 11 | 4.9052 ns | 0.0329 ns | 0.0275 ns | 4.8949 ns | 0.99 | 0.01 | | | | | | | | | | | ArraySetWithVar | 12 | 5.2174 ns | 0.0074 ns | 0.0066 ns | 5.2167 ns | 0.92 | 0.00 | | ArraySetWithField | 12 | 5.6778 ns | 0.0081 ns | 0.0076 ns | 5.6778 ns | 1.00 | 0.00 | | SpanSet | 12 | 5.4086 ns | 0.0486 ns | 0.0455 ns | 5.4007 ns | 0.95 | 0.01 | | | | | | | | | | | ArraySetWithVar | 13 | 5.6888 ns | 0.0095 ns | 0.0084 ns | 5.6875 ns | 0.94 | 0.00 | | ArraySetWithField | 13 | 6.0615 ns | 0.0056 ns | 0.0049 ns | 6.0600 ns | 1.00 | 0.00 | | SpanSet | 13 | 5.7281 ns | 0.0331 ns | 0.0309 ns | 5.7292 ns | 0.94 | 0.01 | | | | | | | | | | | ArraySetWithVar | 14 | 5.8935 ns | 0.0120 ns | 0.0106 ns | 5.8901 ns | 0.93 | 0.00 | | ArraySetWithField | 14 | 6.3079 ns | 0.0156 ns | 0.0146 ns | 6.3124 ns | 1.00 | 0.00 | | SpanSet | 14 | 6.0179 ns | 0.0182 ns | 0.0170 ns | 6.0210 ns | 0.95 | 0.00 | | | | | | | | | | | ArraySetWithVar | 15 | 6.6929 ns | 0.0119 ns | 0.0112 ns | 6.6895 ns | 1.00 | 0.00 | | ArraySetWithField | 15 | 6.6939 ns | 0.0056 ns | 0.0050 ns | 6.6924 ns | 1.00 | 0.00 | | SpanSet | 15 | 6.5041 ns | 0.0192 ns | 0.0170 ns | 6.5039 ns | 0.97 | 0.00 | | | | | | | | | | | ArraySetWithVar | 16 | 6.9466 ns | 0.0123 ns | 0.0115 ns | 6.9451 ns | 0.99 | 0.00 | | ArraySetWithField | 16 | 6.9918 ns | 0.0161 ns | 0.0126 ns | 6.9904 ns | 1.00 | 0.00 | | SpanSet | 16 | 6.8335 ns | 0.0129 ns | 0.0115 ns | 6.8350 ns | 0.98 | 0.00 | | | | | | | | | | | ArraySetWithVar | 17 | 7.8803 ns | 0.1539 ns | 0.1364 ns | 7.8157 ns | 1.07 | 0.02 | | ArraySetWithField | 17 | 7.3937 ns | 0.0072 ns | 0.0067 ns | 7.3923 ns | 1.00 | 0.00 | | SpanSet | 17 | 7.3889 ns | 0.0295 ns | 0.0276 ns | 7.3834 ns | 1.00 | 0.00 | | | | | | | | | | | ArraySetWithVar | 18 | 8.0929 ns | 0.0084 ns | 0.0070 ns | 8.0907 ns | 1.04 | 0.00 | | ArraySetWithField | 18 | 7.8115 ns | 0.0064 ns | 0.0057 ns | 7.8126 ns | 1.00 | 0.00 | | SpanSet | 18 | 7.8917 ns | 0.1759 ns | 0.1646 ns | 7.8150 ns | 1.01 | 0.02 | | | | | | | | | | | ArraySetWithVar | 19 | 8.5985 ns | 0.0268 ns | 0.0237 ns | 8.5871 ns | 1.05 | 0.02 | | ArraySetWithField | 19 | 8.2165 ns | 0.1507 ns | 0.1410 ns | 8.1337 ns | 1.00 | 0.00 | | SpanSet | 19 | 8.4661 ns | 0.2031 ns | 0.2494 ns | 8.3056 ns | 1.04 | 0.03 | | | | | | | | | | | ArraySetWithVar | 20 | 8.8796 ns | 0.0080 ns | 0.0075 ns | 8.8776 ns | 1.03 | 0.01 | | ArraySetWithField | 20 | 8.6620 ns | 0.0694 ns | 0.0615 ns | 8.6587 ns | 1.00 | 0.00 | | SpanSet | 20 | 8.5786 ns | 0.0131 ns | 0.0123 ns | 8.5786 ns | 0.99 | 0.01 | | | | | | | | | | | ArraySetWithVar | 30 | 12.2340 ns | 0.0405 ns | 0.0359 ns | 12.2361 ns | 0.93 | 0.00 | | ArraySetWithField | 30 | 13.0996 ns | 0.0613 ns | 0.0543 ns | 13.1167 ns | 1.00 | 0.00 | | SpanSet | 30 | 12.9861 ns | 0.0075 ns | 0.0070 ns | 12.9860 ns | 0.99 | 0.00 | | | | | | | | | | | ArraySetWithVar | 32 | 13.0265 ns | 0.0452 ns | 0.0423 ns | 13.0312 ns | 0.81 | 0.01 | | ArraySetWithField | 32 | 16.0182 ns | 0.1015 ns | 0.0949 ns | 15.9814 ns | 1.00 | 0.00 | | SpanSet | 32 | 13.9318 ns | 0.0134 ns | 0.0126 ns | 13.9300 ns | 0.87 | 0.01 | | | | | | | | | | | ArraySetWithVar | 40 | 15.9772 ns | 0.0802 ns | 0.0750 ns | 15.9619 ns | 0.81 | 0.00 | | ArraySetWithField | 40 | 19.8427 ns | 0.0528 ns | 0.0494 ns | 19.8337 ns | 1.00 | 0.00 | | SpanSet | 40 | 18.5625 ns | 0.0147 ns | 0.0138 ns | 18.5616 ns | 0.94 | 0.00 | | | | | | | | | | | ArraySetWithVar | 50 | 19.0897 ns | 0.0472 ns | 0.0442 ns | 19.1012 ns | 0.80 | 0.00 | | ArraySetWithField | 50 | 23.8520 ns | 0.0708 ns | 0.0662 ns | 23.8558 ns | 1.00 | 0.00 | | SpanSet | 50 | 23.5046 ns | 0.0227 ns | 0.0201 ns | 23.4986 ns | 0.99 | 0.00 | | | | | | | | | | | ArraySetWithVar | 60 | 23.4799 ns | 0.1172 ns | 0.1096 ns | 23.4780 ns | 0.87 | 0.00 | | ArraySetWithField | 60 | 26.8609 ns | 0.0311 ns | 0.0243 ns | 26.8626 ns | 1.00 | 0.00 | | SpanSet | 60 | 29.1054 ns | 0.0204 ns | 0.0181 ns | 29.1026 ns | 1.08 | 0.00 | | | | | | | | | | | ArraySetWithVar | 80 | 50.2605 ns | 0.1258 ns | 0.1115 ns | 50.2455 ns | 1.07 | 0.00 | | ArraySetWithField | 80 | 46.8658 ns | 0.0728 ns | 0.0645 ns | 46.8692 ns | 1.00 | 0.00 | | SpanSet | 80 | 51.4484 ns | 0.0914 ns | 0.0855 ns | 51.4708 ns | 1.10 | 0.00 | | | | | | | | | | | ArraySetWithVar | 90 | 36.7051 ns | 0.1824 ns | 0.1706 ns | 36.7614 ns | 0.92 | 0.00 | | ArraySetWithField | 90 | 39.6823 ns | 0.0930 ns | 0.0870 ns | 39.6612 ns | 1.00 | 0.00 | | SpanSet | 90 | 43.4244 ns | 0.0195 ns | 0.0182 ns | 43.4271 ns | 1.09 | 0.00 | | | | | | | | | | | ArraySetWithVar | 100 | 51.3160 ns | 0.0568 ns | 0.0504 ns | 51.3058 ns | 1.00 | 0.00 | | ArraySetWithField | 100 | 51.3570 ns | 0.0377 ns | 0.0353 ns | 51.3562 ns | 1.00 | 0.00 | | SpanSet | 100 | 57.7251 ns | 0.0708 ns | 0.0662 ns | 57.7026 ns | 1.12 | 0.00 | | | | | | | | | | | ArraySetWithVar | 128 | 61.5201 ns | 0.0489 ns | 0.0434 ns | 61.5210 ns | 0.97 | 0.00 | | ArraySetWithField | 128 | 63.5051 ns | 0.0859 ns | 0.0804 ns | 63.5097 ns | 1.00 | 0.00 | | SpanSet | 128 | 71.3592 ns | 0.1269 ns | 0.1187 ns | 71.3527 ns | 1.12 | 0.00 | | | | | | | | | | | ArraySetWithVar | 256 | 105.8192 ns | 0.0383 ns | 0.0358 ns | 105.8335 ns | 0.88 | 0.00 | | ArraySetWithField | 256 | 119.9394 ns | 0.0760 ns | 0.0711 ns | 119.9179 ns | 1.00 | 0.00 | | SpanSet | 256 | 135.2443 ns | 0.1709 ns | 0.1599 ns | 135.2831 ns | 1.13 | 0.00 | | | | | | | | | | | ArraySetWithVar | 512 | 210.0185 ns | 0.1510 ns | 0.1339 ns | 209.9837 ns | 0.90 | 0.00 | | ArraySetWithField | 512 | 233.1248 ns | 0.0516 ns | 0.0431 ns | 233.1158 ns | 1.00 | 0.00 | | SpanSet | 512 | 263.0390 ns | 0.1591 ns | 0.1410 ns | 263.0316 ns | 1.13 | 0.00 | | | | | | | | | | | ArraySetWithVar | 1024 | 417.8774 ns | 0.2947 ns | 0.2613 ns | 417.9022 ns | 0.91 | 0.00 | | ArraySetWithField | 1024 | 460.3398 ns | 0.1941 ns | 0.1516 ns | 460.3139 ns | 1.00 | 0.00 | | SpanSet | 1024 | 518.9574 ns | 0.3053 ns | 0.2706 ns | 518.8852 ns | 1.13 | 0.00 | | | | | | | | | | | ArraySetWithVar | 2048 | 835.0463 ns | 0.5355 ns | 0.4747 ns | 835.1100 ns | 0.91 | 0.00 | | ArraySetWithField | 2048 | 915.4347 ns | 0.6474 ns | 0.5406 ns | 915.4247 ns | 1.00 | 0.00 | | SpanSet | 2048 | 1,031.4134 ns | 0.7092 ns | 0.6634 ns | 1,031.5475 ns | 1.13 | 0.00 | | | | | | | | | | | ArraySetWithVar | 4096 | 1,711.6639 ns | 0.6226 ns | 0.5824 ns | 1,711.7812 ns | 0.94 | 0.00 | | ArraySetWithField | 4096 | 1,830.3076 ns | 0.4474 ns | 0.3966 ns | 1,830.2355 ns | 1.00 | 0.00 | | SpanSet | 4096 | 2,061.5471 ns | 1.6995 ns | 1.5066 ns | 2,061.7563 ns | 1.13 | 0.00 | | | | | | | | | | | ArraySetWithVar | 8192 | 3,414.7095 ns | 1.2613 ns | 1.1798 ns | 3,414.6534 ns | 0.94 | 0.00 | | ArraySetWithField | 8192 | 3,645.9164 ns | 1.4002 ns | 1.3097 ns | 3,645.9304 ns | 1.00 | 0.00 | | SpanSet | 8192 | 4,107.2606 ns | 3.4648 ns | 3.2409 ns | 4,107.4933 ns | 1.13 | 0.00 | | | | | | | | | | | ArraySetWithVar | 1000000 | 420,702.1225 ns | 255.2887 ns | 226.3068 ns | 420,727.8545 ns | 0.95 | 0.00 | | ArraySetWithField | 1000000 | 444,452.6199 ns | 402.2439 ns | 356.5787 ns | 444,416.0256 ns | 1.00 | 0.00 | | SpanSet | 1000000 | 500,024.9671 ns | 1,037.9277 ns | 970.8782 ns | 500,189.8135 ns | 1.12 | 0.00 | | | | | | | | | | | ArraySetWithVar | 2147483591 | 238,492,391,914.8000 ns | 4,592,687,023.3708 ns | 4,296,002,291.1676 ns | 239,458,354,055.0000 ns | 0.97 | 0.03 | | ArraySetWithField | 2147483591 | 244,774,507,284.3333 ns | 4,025,896,310.4222 ns | 3,765,825,906.6134 ns | 246,203,799,599.0000 ns | 1.00 | 0.00 | | SpanSet | 2147483591 | 225,900,352,939.8750 ns | 4,408,307,941.2510 ns | 5,732,045,514.6553 ns | 224,187,746,770.5000 ns | 0.92 | 0.03 | // * Hints * Outliers SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (3.48 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed (2.57 ns, 2.57 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed (2.53 ns, 2.53 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed (3.17 ns, 3.22 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (4.13 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (5.87 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed (4.97 ns, 4.98 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (5.48 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were detected (4.20 ns, 4.23 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (4.76 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed (5.06 ns, 5.08 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (5.10 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 2 outliers were removed (6.31 ns, 6.32 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 2 outliers were removed (6.60 ns, 6.60 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed (5.99 ns, 6.00 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed (6.41 ns, 6.45 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 2 outliers were removed, 3 outliers were detected (6.95 ns, 6.98 ns, 6.98 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (6.83 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 2 outliers were removed (7.06 ns, 7.20 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (7.11 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (7.58 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (7.97 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (7.80 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (8.60 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (8.42 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 3 outliers were removed (8.94 ns..9.13 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (8.74 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (10.15 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 2 outliers were removed (9.99 ns, 10.00 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (9.70 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (10.55 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (10.72 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (14.22 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed, 4 outliers were detected (14.86 ns..14.89 ns, 15.08 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was detected (25.53 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (25.45 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 3 outliers were removed (28.86 ns..28.99 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (31.04 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (52.93 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (48.99 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (53.44 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was detected (53.14 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (64.12 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (212.83 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed (235.92 ns, 237.35 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed, 2 outliers were detected (265.18 ns, 265.83 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed (421.48 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 3 outliers were removed (463.76 ns..469.66 ns) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (522.77 ns) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed, 2 outliers were detected (836.49 ns, 839.38 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 2 outliers were removed (919.44 ns, 941.01 ns) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (1.84 us) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (2.07 us) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was detected (4.10 us) SpanVsArrayBenchmarks.ArraySetWithVar: Default -> 1 outlier was removed, 2 outliers were detected (420.17 us, 421.17 us) SpanVsArrayBenchmarks.ArraySetWithField: Default -> 1 outlier was removed (445.30 us) SpanVsArrayBenchmarks.SpanSet: Default -> 1 outlier was removed (243.93 s) // * Legends * TestObjectCount : Value of the 'TestObjectCount' parameter Mean : Arithmetic mean of all measurements Error : Half of 99.9% confidence interval StdDev : Standard deviation of all measurements Median : Value separating the higher half of all measurements (50th percentile) Ratio : Mean of the ratio distribution ([Current]/[Baseline]) RatioSD : Standard deviation of the ratio distribution ([Current]/[Baseline]) 1 ns : 1 Nanosecond (0.000000001 sec)