Benchmark results
Auto-generated by BenchmarkDotNet on 2026-09-14.
Do not edit by hand - this file is fully overwritten on every run.
Live historical dashboard: https://masesgroup.com/benchmark-data/
bulk-ubuntu-22.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
ForceRawMemory |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeByteArrayDirect |
1024 |
True |
False |
1.085 μs |
0.0037 μs |
0.0035 μs |
1.00 |
0.00 |
0.0153 |
- |
- |
1.09 KB |
1.00 |
| GetArrayViaStreamChunked |
1024 |
True |
False |
1.658 μs |
0.0331 μs |
0.0394 μs |
1.53 |
0.04 |
0.0801 |
- |
- |
5.26 KB |
4.81 |
| GetArrayViaStreamSpan |
1024 |
True |
False |
1.350 μs |
0.0039 μs |
0.0037 μs |
1.24 |
0.01 |
0.0172 |
- |
- |
1.23 KB |
1.13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
1048576 |
True |
False |
187.578 μs |
3.6972 μs |
4.4013 μs |
1.00 |
0.03 |
169.9219 |
169.9219 |
169.9219 |
1025.39 KB |
1.00 |
| GetArrayViaStreamChunked |
1048576 |
True |
False |
222.988 μs |
1.6430 μs |
1.5368 μs |
1.19 |
0.03 |
207.0313 |
207.0313 |
207.0313 |
1029.12 KB |
1.00 |
| GetArrayViaStreamSpan |
1048576 |
True |
False |
192.200 μs |
3.6711 μs |
4.3702 μs |
1.03 |
0.03 |
171.6309 |
171.6309 |
171.6309 |
1025.51 KB |
1.00 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
104857600 |
True |
False |
16,433.668 μs |
125.9640 μs |
111.6638 μs |
1.00 |
0.01 |
312.5000 |
312.5000 |
312.5000 |
102400.29 KB |
1.00 |
| GetArrayViaStreamChunked |
104857600 |
True |
False |
16,654.965 μs |
272.0423 μs |
323.8470 μs |
1.01 |
0.02 |
312.5000 |
312.5000 |
312.5000 |
102404.46 KB |
1.00 |
| GetArrayViaStreamSpan |
104857600 |
True |
False |
17,184.516 μs |
340.3404 μs |
788.7908 μs |
1.05 |
0.05 |
312.5000 |
312.5000 |
312.5000 |
102400.43 KB |
1.00 |
bulk-ubuntu-22.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| GetByteBufferToArray |
10 |
False |
3.010 μs |
0.0271 μs |
0.0254 μs |
1.00 |
0.01 |
0.0076 |
0.0038 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
False |
3.238 μs |
0.0166 μs |
0.0139 μs |
1.08 |
0.01 |
0.0153 |
0.0114 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
False |
3.367 μs |
0.0495 μs |
0.0439 μs |
1.12 |
0.02 |
0.0687 |
0.0648 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
False |
1.824 μs |
0.0093 μs |
0.0077 μs |
0.61 |
0.01 |
0.0038 |
- |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10 |
True |
2.969 μs |
0.0113 μs |
0.0100 μs |
1.00 |
0.00 |
0.0076 |
0.0038 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
True |
3.292 μs |
0.0183 μs |
0.0171 μs |
1.11 |
0.01 |
0.0153 |
0.0114 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
True |
3.556 μs |
0.0126 μs |
0.0118 μs |
1.20 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
True |
1.900 μs |
0.0065 μs |
0.0061 μs |
0.64 |
0.00 |
0.0038 |
- |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
False |
2.948 μs |
0.0134 μs |
0.0125 μs |
1.00 |
0.01 |
0.0076 |
0.0038 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
False |
3.166 μs |
0.0460 μs |
0.0431 μs |
1.07 |
0.01 |
0.0153 |
0.0114 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
False |
3.433 μs |
0.0450 μs |
0.0421 μs |
1.16 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
False |
1.896 μs |
0.0081 μs |
0.0076 μs |
0.64 |
0.00 |
0.0038 |
- |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
True |
2.906 μs |
0.0190 μs |
0.0177 μs |
1.00 |
0.01 |
0.0076 |
0.0038 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
True |
3.091 μs |
0.0354 μs |
0.0331 μs |
1.06 |
0.01 |
0.0153 |
0.0114 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
True |
3.398 μs |
0.0155 μs |
0.0130 μs |
1.17 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
True |
1.885 μs |
0.0152 μs |
0.0135 μs |
0.65 |
0.01 |
0.0038 |
- |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
False |
3.333 μs |
0.0144 μs |
0.0134 μs |
1.00 |
0.01 |
0.0229 |
0.0191 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
False |
3.565 μs |
0.0376 μs |
0.0352 μs |
1.07 |
0.01 |
0.0420 |
0.0381 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
False |
3.552 μs |
0.0320 μs |
0.0300 μs |
1.07 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
False |
1.877 μs |
0.0095 μs |
0.0089 μs |
0.56 |
0.00 |
0.0038 |
- |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
True |
4.557 μs |
0.0537 μs |
0.0502 μs |
1.00 |
0.02 |
0.0229 |
0.0153 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
True |
3.589 μs |
0.0653 μs |
0.0611 μs |
0.79 |
0.02 |
0.0420 |
0.0381 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
True |
3.609 μs |
0.0476 μs |
0.0446 μs |
0.79 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
True |
1.881 μs |
0.0059 μs |
0.0049 μs |
0.41 |
0.00 |
0.0038 |
- |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
False |
4.795 μs |
0.0210 μs |
0.0196 μs |
1.00 |
0.01 |
0.1602 |
0.1526 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
False |
5.649 μs |
0.0222 μs |
0.0208 μs |
1.18 |
0.01 |
0.3128 |
0.3052 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
False |
4.354 μs |
0.0299 μs |
0.0279 μs |
0.91 |
0.01 |
0.0687 |
0.0610 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
False |
2.409 μs |
0.0058 μs |
0.0054 μs |
0.50 |
0.00 |
0.0038 |
- |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
True |
4.759 μs |
0.0118 μs |
0.0099 μs |
1.00 |
0.00 |
0.1602 |
0.1526 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
True |
5.831 μs |
0.0711 μs |
0.0665 μs |
1.23 |
0.01 |
0.3128 |
0.3052 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
True |
4.361 μs |
0.0474 μs |
0.0444 μs |
0.92 |
0.01 |
0.0687 |
0.0610 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
True |
2.468 μs |
0.0135 μs |
0.0126 μs |
0.52 |
0.00 |
0.0038 |
- |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
False |
66.027 μs |
0.2970 μs |
0.2778 μs |
1.00 |
0.01 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
False |
80.065 μs |
0.1886 μs |
0.1473 μs |
1.21 |
0.01 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
False |
11.679 μs |
0.0428 μs |
0.0400 μs |
0.18 |
0.00 |
0.0610 |
0.0458 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
False |
7.600 μs |
0.0025 μs |
0.0020 μs |
0.12 |
0.00 |
- |
- |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
True |
65.995 μs |
0.8501 μs |
0.7952 μs |
1.00 |
0.02 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
True |
81.519 μs |
0.9937 μs |
0.9295 μs |
1.24 |
0.02 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
True |
11.975 μs |
0.0243 μs |
0.0216 μs |
0.18 |
0.00 |
0.0610 |
0.0458 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
True |
7.387 μs |
0.0081 μs |
0.0076 μs |
0.11 |
0.00 |
- |
- |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
False |
270.892 μs |
4.9537 μs |
4.6337 μs |
1.00 |
0.02 |
200.6836 |
200.6836 |
200.6836 |
1050259 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
False |
608.813 μs |
11.8498 μs |
20.4404 μs |
2.25 |
0.08 |
499.0234 |
499.0234 |
499.0234 |
3015867 B |
2.872 |
| GetByteBufferStreamChunked |
1048576 |
False |
99.729 μs |
0.2585 μs |
0.2418 μs |
0.37 |
0.01 |
- |
- |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
False |
79.043 μs |
0.5966 μs |
0.5288 μs |
0.29 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
True |
272.598 μs |
5.4018 μs |
6.8316 μs |
1.00 |
0.03 |
205.5664 |
205.5664 |
205.5664 |
1050170 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
True |
610.153 μs |
11.2130 μs |
10.4886 μs |
2.24 |
0.07 |
500.0000 |
500.0000 |
500.0000 |
3015809 B |
2.872 |
| GetByteBufferStreamChunked |
1048576 |
True |
101.005 μs |
0.2612 μs |
0.2316 μs |
0.37 |
0.01 |
- |
- |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
True |
77.157 μs |
0.3507 μs |
0.3109 μs |
0.28 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
False |
2,372.045 μs |
46.8799 μs |
52.1069 μs |
1.00 |
0.03 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
False |
8,799.137 μs |
74.2696 μs |
65.8381 μs |
3.71 |
0.08 |
968.7500 |
968.7500 |
968.7500 |
43910699 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
False |
969.926 μs |
8.0369 μs |
7.1245 μs |
0.41 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
False |
796.702 μs |
5.9755 μs |
5.5895 μs |
0.34 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
True |
2,390.420 μs |
46.5027 μs |
69.6030 μs |
1.00 |
0.04 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
True |
8,635.462 μs |
168.5260 μs |
194.0748 μs |
3.62 |
0.13 |
968.7500 |
968.7500 |
968.7500 |
43910699 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
True |
979.695 μs |
5.1452 μs |
4.5611 μs |
0.41 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
True |
812.336 μs |
15.9205 μs |
19.5519 μs |
0.34 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
False |
23,003.200 μs |
435.9394 μs |
678.7052 μs |
1.00 |
0.04 |
312.5000 |
312.5000 |
312.5000 |
104858362 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
False |
49,613.002 μs |
991.3350 μs |
1,453.0861 μs |
2.16 |
0.09 |
800.0000 |
800.0000 |
800.0000 |
373163519 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
False |
14,773.891 μs |
290.5453 μs |
508.8667 μs |
0.64 |
0.03 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
False |
14,318.639 μs |
272.2792 μs |
726.7683 μs |
0.62 |
0.04 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
True |
22,572.362 μs |
436.1180 μs |
611.3765 μs |
1.00 |
0.04 |
312.5000 |
312.5000 |
312.5000 |
104858362 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
True |
51,038.406 μs |
847.1770 μs |
792.4499 μs |
2.26 |
0.07 |
818.1818 |
818.1818 |
818.1818 |
373163532 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
True |
15,405.878 μs |
307.5371 μs |
287.6704 μs |
0.68 |
0.02 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
True |
14,014.093 μs |
277.4710 μs |
721.1842 μs |
0.62 |
0.04 |
- |
- |
- |
400 B |
0.000 |
bulk-ubuntu-22.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
ForceRawMemory |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeByteArrayDirect |
1024 |
True |
False |
1.087 μs |
0.0020 μs |
0.0018 μs |
1.00 |
0.00 |
0.0153 |
- |
- |
1.09 KB |
1.00 |
| GetArrayViaStreamChunked |
1024 |
True |
False |
1.604 μs |
0.0295 μs |
0.0276 μs |
1.48 |
0.02 |
0.0801 |
- |
- |
5.26 KB |
4.81 |
| GetArrayViaStreamSpan |
1024 |
True |
False |
1.314 μs |
0.0118 μs |
0.0111 μs |
1.21 |
0.01 |
0.0172 |
- |
- |
1.23 KB |
1.13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
1048576 |
True |
False |
191.864 μs |
2.6223 μs |
2.4529 μs |
1.00 |
0.02 |
142.8223 |
142.8223 |
142.8223 |
1025.14 KB |
1.00 |
| GetArrayViaStreamChunked |
1048576 |
True |
False |
218.369 μs |
3.3765 μs |
3.1583 μs |
1.14 |
0.02 |
149.6582 |
149.6582 |
149.6582 |
1029.08 KB |
1.00 |
| GetArrayViaStreamSpan |
1048576 |
True |
False |
187.325 μs |
2.3107 μs |
2.1614 μs |
0.98 |
0.02 |
142.8223 |
142.8223 |
142.8223 |
1025.24 KB |
1.00 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
104857600 |
True |
False |
16,922.138 μs |
321.9074 μs |
316.1561 μs |
1.00 |
0.03 |
312.5000 |
312.5000 |
312.5000 |
102400.29 KB |
1.00 |
| GetArrayViaStreamChunked |
104857600 |
True |
False |
16,094.095 μs |
87.9396 μs |
82.2587 μs |
0.95 |
0.02 |
312.5000 |
312.5000 |
312.5000 |
102404.46 KB |
1.00 |
| GetArrayViaStreamSpan |
104857600 |
True |
False |
16,886.317 μs |
322.6316 μs |
396.2206 μs |
1.00 |
0.03 |
312.5000 |
312.5000 |
312.5000 |
102400.44 KB |
1.00 |
bulk-ubuntu-22.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| GetByteBufferToArray |
10 |
False |
3.054 μs |
0.0050 μs |
0.0044 μs |
1.00 |
0.00 |
0.0076 |
0.0038 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
False |
3.223 μs |
0.0192 μs |
0.0180 μs |
1.06 |
0.01 |
0.0153 |
0.0114 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
False |
3.455 μs |
0.0099 μs |
0.0092 μs |
1.13 |
0.00 |
0.0687 |
0.0648 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
False |
1.946 μs |
0.0031 μs |
0.0026 μs |
0.64 |
0.00 |
0.0038 |
- |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10 |
True |
3.061 μs |
0.0172 μs |
0.0161 μs |
1.00 |
0.01 |
0.0076 |
0.0038 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
True |
3.343 μs |
0.0283 μs |
0.0251 μs |
1.09 |
0.01 |
0.0153 |
0.0114 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
True |
3.677 μs |
0.0699 μs |
0.0653 μs |
1.20 |
0.02 |
0.0687 |
0.0648 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
True |
1.976 μs |
0.0152 μs |
0.0142 μs |
0.65 |
0.01 |
0.0038 |
- |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
False |
3.069 μs |
0.0118 μs |
0.0110 μs |
1.00 |
0.00 |
0.0076 |
0.0038 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
False |
3.276 μs |
0.0118 μs |
0.0105 μs |
1.07 |
0.00 |
0.0153 |
0.0114 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
False |
3.536 μs |
0.0253 μs |
0.0237 μs |
1.15 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
False |
1.955 μs |
0.0112 μs |
0.0104 μs |
0.64 |
0.00 |
0.0038 |
- |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
True |
2.999 μs |
0.0227 μs |
0.0212 μs |
1.00 |
0.01 |
0.0076 |
0.0038 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
True |
3.323 μs |
0.0294 μs |
0.0275 μs |
1.11 |
0.01 |
0.0153 |
0.0114 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
True |
3.546 μs |
0.0301 μs |
0.0282 μs |
1.18 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
True |
2.004 μs |
0.0085 μs |
0.0080 μs |
0.67 |
0.01 |
0.0038 |
- |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
False |
3.275 μs |
0.0239 μs |
0.0223 μs |
1.00 |
0.01 |
0.0229 |
0.0191 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
False |
3.602 μs |
0.0086 μs |
0.0076 μs |
1.10 |
0.01 |
0.0420 |
0.0381 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
False |
3.514 μs |
0.0483 μs |
0.0452 μs |
1.07 |
0.02 |
0.0687 |
0.0648 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
False |
2.013 μs |
0.0094 μs |
0.0088 μs |
0.61 |
0.00 |
0.0038 |
- |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
True |
3.457 μs |
0.0367 μs |
0.0325 μs |
1.00 |
0.01 |
0.0229 |
0.0191 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
True |
3.797 μs |
0.0656 μs |
0.0613 μs |
1.10 |
0.02 |
0.0420 |
0.0381 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
True |
3.510 μs |
0.0124 μs |
0.0110 μs |
1.02 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
True |
1.976 μs |
0.0133 μs |
0.0125 μs |
0.57 |
0.01 |
0.0038 |
- |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
False |
4.753 μs |
0.0423 μs |
0.0396 μs |
1.00 |
0.01 |
0.1602 |
0.1526 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
False |
5.759 μs |
0.0893 μs |
0.0835 μs |
1.21 |
0.02 |
0.3128 |
0.3052 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
False |
4.297 μs |
0.0444 μs |
0.0416 μs |
0.90 |
0.01 |
0.0687 |
0.0610 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
False |
2.514 μs |
0.0096 μs |
0.0085 μs |
0.53 |
0.00 |
0.0038 |
- |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
True |
4.726 μs |
0.0509 μs |
0.0476 μs |
1.00 |
0.01 |
0.1602 |
0.1526 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
True |
5.633 μs |
0.0742 μs |
0.0694 μs |
1.19 |
0.02 |
0.3128 |
0.3052 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
True |
4.316 μs |
0.0422 μs |
0.0395 μs |
0.91 |
0.01 |
0.0687 |
0.0610 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
True |
2.538 μs |
0.0172 μs |
0.0161 μs |
0.54 |
0.01 |
0.0038 |
- |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
False |
71.066 μs |
0.2925 μs |
0.2736 μs |
1.00 |
0.01 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
False |
85.313 μs |
1.4441 μs |
1.3508 μs |
1.20 |
0.02 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
False |
11.672 μs |
0.0309 μs |
0.0289 μs |
0.16 |
0.00 |
0.0610 |
0.0458 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
False |
7.845 μs |
0.0152 μs |
0.0142 μs |
0.11 |
0.00 |
- |
- |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
True |
69.226 μs |
0.3635 μs |
0.3400 μs |
1.00 |
0.01 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
True |
87.001 μs |
1.3378 μs |
1.2514 μs |
1.26 |
0.02 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
True |
11.766 μs |
0.0276 μs |
0.0258 μs |
0.17 |
0.00 |
0.0610 |
0.0458 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
True |
7.532 μs |
0.0029 μs |
0.0025 μs |
0.11 |
0.00 |
- |
- |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
False |
273.059 μs |
5.3300 μs |
6.5457 μs |
1.00 |
0.03 |
170.4102 |
170.4102 |
170.4102 |
1050086 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
False |
578.950 μs |
9.8249 μs |
9.1903 μs |
2.12 |
0.06 |
392.5781 |
392.5781 |
392.5781 |
3017274 B |
2.873 |
| GetByteBufferStreamChunked |
1048576 |
False |
98.813 μs |
0.2172 μs |
0.1926 μs |
0.36 |
0.01 |
- |
- |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
False |
76.216 μs |
0.2062 μs |
0.1828 μs |
0.28 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
True |
276.274 μs |
5.3450 μs |
5.4890 μs |
1.00 |
0.03 |
170.8984 |
170.8984 |
170.8984 |
1050087 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
True |
594.761 μs |
9.1001 μs |
8.5122 μs |
2.15 |
0.05 |
385.7422 |
385.7422 |
385.7422 |
3017303 B |
2.873 |
| GetByteBufferStreamChunked |
1048576 |
True |
96.987 μs |
0.1511 μs |
0.1339 μs |
0.35 |
0.01 |
- |
- |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
True |
80.280 μs |
0.5334 μs |
0.4728 μs |
0.29 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
False |
2,378.795 μs |
46.8065 μs |
43.7828 μs |
1.00 |
0.03 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
False |
6,620.625 μs |
124.2687 μs |
116.2410 μs |
2.78 |
0.07 |
648.4375 |
648.4375 |
648.4375 |
43910482 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
False |
928.965 μs |
1.7985 μs |
1.5943 μs |
0.39 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
False |
775.639 μs |
1.2837 μs |
1.1380 μs |
0.33 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
True |
2,298.108 μs |
27.1327 μs |
25.3799 μs |
1.00 |
0.02 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
True |
6,552.652 μs |
91.0394 μs |
85.1583 μs |
2.85 |
0.05 |
687.5000 |
687.5000 |
687.5000 |
43910508 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
True |
935.897 μs |
3.7141 μs |
3.4742 μs |
0.41 |
0.00 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
True |
782.292 μs |
7.5353 μs |
6.2923 μs |
0.34 |
0.00 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
False |
21,704.210 μs |
422.8390 μs |
434.2245 μs |
1.00 |
0.03 |
312.5000 |
312.5000 |
312.5000 |
104858366 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
False |
46,909.106 μs |
845.5735 μs |
790.9500 μs |
2.16 |
0.05 |
545.4545 |
545.4545 |
545.4545 |
373163368 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
False |
13,334.401 μs |
263.4542 μs |
333.1852 μs |
0.61 |
0.02 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
False |
13,305.604 μs |
265.5136 μs |
536.3506 μs |
0.61 |
0.03 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
True |
21,582.438 μs |
337.4320 μs |
315.6341 μs |
1.00 |
0.02 |
312.5000 |
312.5000 |
312.5000 |
104858366 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
True |
47,112.040 μs |
906.5376 μs |
847.9758 μs |
2.18 |
0.05 |
545.4545 |
545.4545 |
545.4545 |
373163368 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
True |
13,131.300 μs |
101.9399 μs |
95.3546 μs |
0.61 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
True |
12,800.532 μs |
167.7375 μs |
156.9018 μs |
0.59 |
0.01 |
- |
- |
- |
400 B |
0.000 |
bulk-ubuntu-22.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
ForceRawMemory |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeByteArrayDirect |
1024 |
True |
False |
892.0 ns |
8.96 ns |
8.38 ns |
1.00 |
0.01 |
0.0668 |
- |
- |
1.09 KB |
1.00 |
| GetArrayViaStreamChunked |
1024 |
True |
False |
1,385.5 ns |
26.33 ns |
28.17 ns |
1.55 |
0.03 |
0.3204 |
- |
- |
5.26 KB |
4.81 |
| GetArrayViaStreamSpan |
1024 |
True |
False |
1,139.7 ns |
13.88 ns |
12.30 ns |
1.28 |
0.02 |
0.0744 |
- |
- |
1.23 KB |
1.13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
1048576 |
True |
False |
225,995.3 ns |
4,362.81 ns |
4,284.87 ns |
1.00 |
0.03 |
222.1680 |
222.1680 |
222.1680 |
1024.59 KB |
1.00 |
| GetArrayViaStreamChunked |
1048576 |
True |
False |
238,790.9 ns |
2,382.29 ns |
2,111.84 ns |
1.06 |
0.02 |
248.0469 |
247.8027 |
247.8027 |
1028.72 KB |
1.00 |
| GetArrayViaStreamSpan |
1048576 |
True |
False |
224,278.7 ns |
4,450.38 ns |
4,162.89 ns |
0.99 |
0.03 |
220.4590 |
220.4590 |
220.4590 |
1024.71 KB |
1.00 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
104857600 |
True |
False |
15,801,082.6 ns |
114,337.09 ns |
106,950.98 ns |
1.00 |
0.01 |
312.5000 |
312.5000 |
312.5000 |
102400.29 KB |
1.00 |
| GetArrayViaStreamChunked |
104857600 |
True |
False |
15,479,575.6 ns |
308,854.44 ns |
498,742.39 ns |
0.98 |
0.03 |
328.1250 |
328.1250 |
328.1250 |
102404.47 KB |
1.00 |
| GetArrayViaStreamSpan |
104857600 |
True |
False |
15,715,342.5 ns |
98,154.60 ns |
91,813.87 ns |
0.99 |
0.01 |
312.5000 |
312.5000 |
312.5000 |
102400.43 KB |
1.00 |
bulk-ubuntu-22.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| GetByteBufferToArray |
10 |
False |
2.410 μs |
0.0243 μs |
0.0228 μs |
1.00 |
0.01 |
0.0343 |
0.0305 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
False |
2.489 μs |
0.0159 μs |
0.0141 μs |
1.03 |
0.01 |
0.0610 |
0.0572 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
False |
2.701 μs |
0.0458 μs |
0.0406 μs |
1.12 |
0.02 |
0.2861 |
0.2823 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
False |
1.564 μs |
0.0132 μs |
0.0123 μs |
0.65 |
0.01 |
0.0229 |
0.0210 |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10 |
True |
2.366 μs |
0.0232 μs |
0.0206 μs |
1.00 |
0.01 |
0.0343 |
0.0305 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
True |
2.480 μs |
0.0250 μs |
0.0234 μs |
1.05 |
0.01 |
0.0610 |
0.0572 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
True |
2.676 μs |
0.0327 μs |
0.0306 μs |
1.13 |
0.02 |
0.2861 |
0.2823 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
True |
1.625 μs |
0.0112 μs |
0.0100 μs |
0.69 |
0.01 |
0.0229 |
0.0210 |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
False |
2.410 μs |
0.0314 μs |
0.0294 μs |
1.00 |
0.02 |
0.0381 |
0.0343 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
False |
2.523 μs |
0.0279 μs |
0.0261 μs |
1.05 |
0.02 |
0.0648 |
0.0610 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
False |
2.671 μs |
0.0326 μs |
0.0289 μs |
1.11 |
0.02 |
0.2861 |
0.2823 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
False |
1.585 μs |
0.0145 μs |
0.0136 μs |
0.66 |
0.01 |
0.0229 |
0.0210 |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
True |
2.417 μs |
0.0153 μs |
0.0128 μs |
1.00 |
0.01 |
0.0381 |
0.0343 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
True |
2.535 μs |
0.0210 μs |
0.0186 μs |
1.05 |
0.01 |
0.0648 |
0.0610 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
True |
2.701 μs |
0.0241 μs |
0.0236 μs |
1.12 |
0.01 |
0.2861 |
0.2823 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
True |
1.613 μs |
0.0119 μs |
0.0106 μs |
0.67 |
0.01 |
0.0229 |
0.0210 |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
False |
2.608 μs |
0.0366 μs |
0.0325 μs |
1.00 |
0.02 |
0.0916 |
0.0877 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
False |
2.750 μs |
0.0353 μs |
0.0330 μs |
1.05 |
0.02 |
0.1678 |
0.1640 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
False |
2.745 μs |
0.0515 μs |
0.0457 μs |
1.05 |
0.02 |
0.2861 |
0.2823 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
False |
1.650 μs |
0.0110 μs |
0.0103 μs |
0.63 |
0.01 |
0.0229 |
0.0210 |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
True |
2.581 μs |
0.0326 μs |
0.0305 μs |
1.00 |
0.02 |
0.0916 |
0.0877 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
True |
2.704 μs |
0.0313 μs |
0.0293 μs |
1.05 |
0.02 |
0.1678 |
0.1640 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
True |
2.733 μs |
0.0402 μs |
0.0357 μs |
1.06 |
0.02 |
0.2861 |
0.2823 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
True |
1.603 μs |
0.0208 μs |
0.0185 μs |
0.62 |
0.01 |
0.0229 |
0.0210 |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
False |
3.612 μs |
0.0721 μs |
0.0675 μs |
1.00 |
0.03 |
0.6447 |
0.6409 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
False |
4.326 μs |
0.0581 μs |
0.0543 μs |
1.20 |
0.03 |
1.2665 |
0.6256 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
False |
3.283 μs |
0.0273 μs |
0.0242 μs |
0.91 |
0.02 |
0.2861 |
0.2823 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
False |
2.020 μs |
0.0118 μs |
0.0099 μs |
0.56 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
True |
3.592 μs |
0.0630 μs |
0.0589 μs |
1.00 |
0.02 |
0.6409 |
0.6332 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
True |
4.383 μs |
0.0711 μs |
0.0630 μs |
1.22 |
0.03 |
1.2665 |
0.6256 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
True |
3.283 μs |
0.0189 μs |
0.0168 μs |
0.91 |
0.02 |
0.2861 |
0.2823 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
True |
2.003 μs |
0.0231 μs |
0.0216 μs |
0.56 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
False |
71.381 μs |
0.5479 μs |
0.4857 μs |
1.00 |
0.01 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
False |
89.969 μs |
1.3058 μs |
1.2214 μs |
1.26 |
0.02 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
False |
8.287 μs |
0.1555 μs |
0.1455 μs |
0.12 |
0.00 |
0.2747 |
0.2594 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
False |
5.473 μs |
0.0290 μs |
0.0257 μs |
0.08 |
0.00 |
0.0229 |
0.0153 |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
True |
71.687 μs |
0.5161 μs |
0.4828 μs |
1.00 |
0.01 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
True |
88.836 μs |
0.5341 μs |
0.4735 μs |
1.24 |
0.01 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
True |
8.174 μs |
0.0717 μs |
0.0670 μs |
0.11 |
0.00 |
0.2747 |
0.2594 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
True |
5.481 μs |
0.0202 μs |
0.0158 μs |
0.08 |
0.00 |
0.0229 |
0.0153 |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
False |
288.375 μs |
7.0117 μs |
20.5641 μs |
1.00 |
0.10 |
238.7695 |
238.7695 |
238.7695 |
1049298 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
False |
519.362 μs |
10.3462 μs |
21.8237 μs |
1.81 |
0.15 |
582.0313 |
582.0313 |
582.0313 |
3015895 B |
2.874 |
| GetByteBufferStreamChunked |
1048576 |
False |
64.854 μs |
0.5199 μs |
0.4864 μs |
0.23 |
0.02 |
0.2441 |
0.1221 |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
False |
47.830 μs |
0.2633 μs |
0.2334 μs |
0.17 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
True |
284.563 μs |
5.6434 μs |
14.1581 μs |
1.00 |
0.07 |
234.8633 |
234.8633 |
234.8633 |
1049288 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
True |
517.394 μs |
10.2699 μs |
13.7101 μs |
1.82 |
0.10 |
590.8203 |
590.8203 |
590.8203 |
3015944 B |
2.874 |
| GetByteBufferStreamChunked |
1048576 |
True |
63.724 μs |
0.5513 μs |
0.5157 μs |
0.22 |
0.01 |
0.2441 |
0.1221 |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
True |
48.266 μs |
0.2526 μs |
0.2363 μs |
0.17 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
False |
4,117.138 μs |
85.5112 μs |
252.1317 μs |
1.00 |
0.09 |
328.1250 |
328.1250 |
328.1250 |
10486533 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
False |
18,611.326 μs |
123.2822 μs |
109.2864 μs |
4.54 |
0.28 |
937.5000 |
937.5000 |
937.5000 |
43910678 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
False |
782.921 μs |
6.7953 μs |
6.0239 μs |
0.19 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
False |
658.962 μs |
9.4323 μs |
8.8230 μs |
0.16 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
True |
4,115.832 μs |
92.0516 μs |
271.4164 μs |
1.00 |
0.09 |
328.1250 |
328.1250 |
328.1250 |
10486533 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
True |
18,585.899 μs |
362.5035 μs |
471.3569 μs |
4.53 |
0.31 |
937.5000 |
937.5000 |
937.5000 |
43910678 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
True |
770.903 μs |
10.9876 μs |
10.2778 μs |
0.19 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
True |
728.814 μs |
9.6070 μs |
8.0223 μs |
0.18 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
False |
22,242.578 μs |
143.8828 μs |
127.5484 μs |
1.00 |
0.01 |
312.5000 |
312.5000 |
312.5000 |
104858362 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
False |
74,819.197 μs |
622.6920 μs |
519.9760 μs |
3.36 |
0.03 |
750.0000 |
750.0000 |
750.0000 |
373163488 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
False |
13,569.589 μs |
141.6934 μs |
132.5401 μs |
0.61 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
False |
12,161.414 μs |
59.6775 μs |
49.8334 μs |
0.55 |
0.00 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
True |
22,225.952 μs |
236.9468 μs |
210.0472 μs |
1.00 |
0.01 |
312.5000 |
312.5000 |
312.5000 |
104858362 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
True |
74,585.677 μs |
648.8880 μs |
606.9702 μs |
3.36 |
0.04 |
750.0000 |
750.0000 |
750.0000 |
373163488 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
True |
13,588.976 μs |
130.4314 μs |
108.9161 μs |
0.61 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
True |
12,194.667 μs |
37.6170 μs |
29.3689 μs |
0.55 |
0.01 |
- |
- |
- |
400 B |
0.000 |
bulk-ubuntu-22.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
ForceRawMemory |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeByteArrayDirect |
1024 |
True |
False |
1.234 μs |
0.0149 μs |
0.0139 μs |
1.00 |
0.02 |
0.0668 |
- |
- |
1.09 KB |
1.00 |
| GetArrayViaStreamChunked |
1024 |
True |
False |
1.891 μs |
0.0375 μs |
0.0847 μs |
1.53 |
0.07 |
0.3204 |
- |
- |
5.26 KB |
4.81 |
| GetArrayViaStreamSpan |
1024 |
True |
False |
1.608 μs |
0.0317 μs |
0.0340 μs |
1.30 |
0.03 |
0.0744 |
- |
- |
1.23 KB |
1.13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
1048576 |
True |
False |
287.008 μs |
3.3496 μs |
2.9693 μs |
1.00 |
0.01 |
212.4023 |
212.4023 |
212.4023 |
1024.71 KB |
1.00 |
| GetArrayViaStreamChunked |
1048576 |
True |
False |
311.285 μs |
2.9888 μs |
2.7958 μs |
1.08 |
0.01 |
246.5820 |
246.5820 |
246.5820 |
1028.92 KB |
1.00 |
| GetArrayViaStreamSpan |
1048576 |
True |
False |
295.212 μs |
5.7767 μs |
5.9322 μs |
1.03 |
0.02 |
217.2852 |
217.2852 |
217.2852 |
1024.64 KB |
1.00 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
104857600 |
True |
False |
18,650.417 μs |
226.1492 μs |
200.4753 μs |
1.00 |
0.01 |
312.5000 |
312.5000 |
312.5000 |
102400.29 KB |
1.00 |
| GetArrayViaStreamChunked |
104857600 |
True |
False |
19,296.604 μs |
384.5184 μs |
943.2303 μs |
1.03 |
0.05 |
312.5000 |
312.5000 |
312.5000 |
102404.46 KB |
1.00 |
| GetArrayViaStreamSpan |
104857600 |
True |
False |
18,382.831 μs |
365.1649 μs |
831.6654 μs |
0.99 |
0.05 |
312.5000 |
312.5000 |
312.5000 |
102400.44 KB |
1.00 |
bulk-ubuntu-22.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
UseCriticalMethods |
Mean |
Error |
StdDev |
Median |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| GetByteBufferToArray |
10 |
False |
3.455 μs |
0.0530 μs |
0.0470 μs |
3.441 μs |
1.00 |
0.02 |
0.0343 |
0.0305 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
False |
3.623 μs |
0.0717 μs |
0.0982 μs |
3.618 μs |
1.05 |
0.03 |
0.0610 |
0.0572 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
False |
3.934 μs |
0.0661 μs |
0.0586 μs |
3.946 μs |
1.14 |
0.02 |
0.2823 |
0.2747 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
False |
2.236 μs |
0.0196 μs |
0.0183 μs |
2.231 μs |
0.65 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10 |
True |
3.354 μs |
0.0368 μs |
0.0326 μs |
3.348 μs |
1.00 |
0.01 |
0.0343 |
0.0305 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
True |
3.798 μs |
0.0751 μs |
0.0803 μs |
3.782 μs |
1.13 |
0.03 |
0.0610 |
0.0534 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
True |
4.223 μs |
0.0819 μs |
0.1035 μs |
4.233 μs |
1.26 |
0.03 |
0.2823 |
0.2747 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
True |
2.388 μs |
0.0397 μs |
0.0352 μs |
2.384 μs |
0.71 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
False |
3.435 μs |
0.0678 μs |
0.0634 μs |
3.447 μs |
1.00 |
0.03 |
0.0381 |
0.0343 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
False |
3.682 μs |
0.0736 μs |
0.0723 μs |
3.661 μs |
1.07 |
0.03 |
0.0648 |
0.0610 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
False |
3.998 μs |
0.0645 μs |
0.0603 μs |
4.002 μs |
1.16 |
0.03 |
0.2823 |
0.2747 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
False |
2.276 μs |
0.0377 μs |
0.0352 μs |
2.281 μs |
0.66 |
0.02 |
0.0229 |
0.0191 |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
True |
3.387 μs |
0.0387 μs |
0.0302 μs |
3.395 μs |
1.00 |
0.01 |
0.0381 |
0.0343 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
True |
3.779 μs |
0.0638 μs |
0.0533 μs |
3.778 μs |
1.12 |
0.02 |
0.0648 |
0.0610 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
True |
4.212 μs |
0.0637 μs |
0.0532 μs |
4.236 μs |
1.24 |
0.02 |
0.2823 |
0.2747 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
True |
2.328 μs |
0.0435 μs |
0.0407 μs |
2.328 μs |
0.69 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
False |
4.047 μs |
0.0787 μs |
0.1103 μs |
4.064 μs |
1.00 |
0.04 |
0.0916 |
0.0839 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
False |
4.538 μs |
0.0744 μs |
0.0659 μs |
4.562 μs |
1.12 |
0.03 |
0.1678 |
0.1602 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
False |
4.386 μs |
0.0865 μs |
0.0926 μs |
4.362 μs |
1.08 |
0.04 |
0.2823 |
0.2747 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
False |
2.378 μs |
0.0437 μs |
0.0387 μs |
2.362 μs |
0.59 |
0.02 |
0.0229 |
0.0191 |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
True |
3.976 μs |
0.0477 μs |
0.0423 μs |
3.991 μs |
1.00 |
0.01 |
0.0916 |
0.0839 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
True |
4.486 μs |
0.0617 μs |
0.0547 μs |
4.484 μs |
1.13 |
0.02 |
0.1678 |
0.1602 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
True |
4.253 μs |
0.0827 μs |
0.1185 μs |
4.223 μs |
1.07 |
0.03 |
0.2823 |
0.2747 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
True |
2.387 μs |
0.0352 μs |
0.0329 μs |
2.374 μs |
0.60 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
False |
5.278 μs |
0.0291 μs |
0.0227 μs |
5.278 μs |
1.00 |
0.01 |
0.6409 |
0.6332 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
False |
7.363 μs |
0.1147 μs |
0.0958 μs |
7.390 μs |
1.40 |
0.02 |
1.2665 |
0.6256 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
False |
5.129 μs |
0.0928 μs |
0.0868 μs |
5.110 μs |
0.97 |
0.02 |
0.2823 |
0.2747 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
False |
2.852 μs |
0.0312 μs |
0.0292 μs |
2.848 μs |
0.54 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
True |
5.729 μs |
0.0891 μs |
0.0833 μs |
5.723 μs |
1.00 |
0.02 |
0.6409 |
0.6332 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
True |
7.125 μs |
0.1398 μs |
0.1610 μs |
7.152 μs |
1.24 |
0.03 |
1.2665 |
0.6256 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
True |
5.080 μs |
0.1016 μs |
0.1210 μs |
5.034 μs |
0.89 |
0.02 |
0.2823 |
0.2747 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
True |
2.859 μs |
0.0446 μs |
0.0396 μs |
2.868 μs |
0.50 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
False |
108.259 μs |
2.0540 μs |
2.0173 μs |
108.090 μs |
1.00 |
0.03 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
False |
130.779 μs |
1.9434 μs |
1.8179 μs |
130.284 μs |
1.21 |
0.03 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
False |
11.532 μs |
0.1149 μs |
0.1075 μs |
11.517 μs |
0.11 |
0.00 |
0.2747 |
0.2594 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
False |
7.349 μs |
0.0636 μs |
0.0531 μs |
7.360 μs |
0.07 |
0.00 |
0.0229 |
0.0153 |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
True |
99.866 μs |
1.9151 μs |
2.2055 μs |
99.278 μs |
1.00 |
0.03 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
True |
127.571 μs |
1.8902 μs |
1.7681 μs |
127.494 μs |
1.28 |
0.03 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
True |
11.722 μs |
0.0869 μs |
0.0725 μs |
11.719 μs |
0.12 |
0.00 |
0.2747 |
0.2594 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
True |
7.442 μs |
0.0580 μs |
0.0514 μs |
7.442 μs |
0.07 |
0.00 |
0.0229 |
0.0153 |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
False |
419.773 μs |
11.2375 μs |
32.9575 μs |
421.131 μs |
1.01 |
0.11 |
215.8203 |
215.8203 |
215.8203 |
1049586 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
False |
768.561 μs |
14.7832 μs |
35.1339 μs |
764.234 μs |
1.84 |
0.17 |
558.5938 |
558.5938 |
558.5938 |
3015947 B |
2.873 |
| GetByteBufferStreamChunked |
1048576 |
False |
90.035 μs |
0.8654 μs |
0.7671 μs |
89.903 μs |
0.22 |
0.02 |
0.2441 |
0.1221 |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
False |
65.406 μs |
0.6182 μs |
0.5783 μs |
65.447 μs |
0.16 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
True |
449.511 μs |
21.6763 μs |
63.9129 μs |
467.125 μs |
1.02 |
0.21 |
217.7734 |
217.7734 |
217.7734 |
1049292 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
True |
757.780 μs |
15.0385 μs |
31.3909 μs |
750.459 μs |
1.72 |
0.26 |
551.7578 |
551.7578 |
551.7578 |
3015962 B |
2.874 |
| GetByteBufferStreamChunked |
1048576 |
True |
90.398 μs |
0.8888 μs |
0.7879 μs |
90.240 μs |
0.21 |
0.03 |
0.2441 |
0.1221 |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
True |
64.471 μs |
0.8383 μs |
0.7432 μs |
64.362 μs |
0.15 |
0.02 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
False |
5,170.129 μs |
103.2193 μs |
249.2862 μs |
5,177.670 μs |
1.00 |
0.07 |
328.1250 |
328.1250 |
328.1250 |
10486533 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
False |
14,912.899 μs |
181.5357 μs |
160.9267 μs |
14,879.753 μs |
2.89 |
0.14 |
718.7500 |
718.7500 |
718.7500 |
43910545 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
False |
1,142.268 μs |
22.7817 μs |
27.9780 μs |
1,133.412 μs |
0.22 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
False |
1,033.741 μs |
20.3358 μs |
26.4423 μs |
1,027.137 μs |
0.20 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
True |
5,131.714 μs |
100.8850 μs |
141.4267 μs |
5,118.854 μs |
1.00 |
0.04 |
328.1250 |
328.1250 |
328.1250 |
10486533 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
True |
15,019.067 μs |
223.0161 μs |
197.6980 μs |
14,962.781 μs |
2.93 |
0.09 |
718.7500 |
718.7500 |
718.7500 |
43910545 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
True |
1,170.438 μs |
21.4490 μs |
17.9109 μs |
1,172.879 μs |
0.23 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
True |
1,020.580 μs |
12.9674 μs |
11.4953 μs |
1,017.197 μs |
0.20 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
False |
25,478.074 μs |
197.4850 μs |
175.0653 μs |
25,455.045 μs |
1.00 |
0.01 |
312.5000 |
312.5000 |
312.5000 |
104858366 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
False |
85,202.437 μs |
473.1326 μs |
419.4197 μs |
85,018.280 μs |
3.34 |
0.03 |
800.0000 |
800.0000 |
800.0000 |
373163536 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
False |
14,772.798 μs |
284.1318 μs |
265.7771 μs |
14,696.885 μs |
0.58 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
False |
13,695.065 μs |
67.7110 μs |
60.0241 μs |
13,687.920 μs |
0.54 |
0.00 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
True |
25,506.940 μs |
167.7299 μs |
156.8947 μs |
25,489.055 μs |
1.00 |
0.01 |
312.5000 |
312.5000 |
312.5000 |
104858366 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
True |
83,640.469 μs |
562.4147 μs |
469.6418 μs |
83,467.235 μs |
3.28 |
0.03 |
666.6667 |
666.6667 |
666.6667 |
373163448 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
True |
14,606.203 μs |
188.9445 μs |
167.4944 μs |
14,565.980 μs |
0.57 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
True |
13,686.113 μs |
106.3890 μs |
99.5163 μs |
13,712.096 μs |
0.54 |
0.00 |
- |
- |
- |
400 B |
0.000 |
bulk-ubuntu-24.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
ForceRawMemory |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeByteArrayDirect |
1024 |
True |
False |
1.061 μs |
0.0028 μs |
0.0026 μs |
1.00 |
0.00 |
0.0153 |
- |
- |
1.09 KB |
1.00 |
| GetArrayViaStreamChunked |
1024 |
True |
False |
1.765 μs |
0.0248 μs |
0.0232 μs |
1.66 |
0.02 |
0.0801 |
- |
- |
5.26 KB |
4.81 |
| GetArrayViaStreamSpan |
1024 |
True |
False |
1.319 μs |
0.0023 μs |
0.0020 μs |
1.24 |
0.00 |
0.0172 |
- |
- |
1.23 KB |
1.13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
1048576 |
True |
False |
179.050 μs |
3.1184 μs |
4.1630 μs |
1.00 |
0.03 |
170.1660 |
170.1660 |
170.1660 |
1025.39 KB |
1.00 |
| GetArrayViaStreamChunked |
1048576 |
True |
False |
225.652 μs |
2.4012 μs |
2.1286 μs |
1.26 |
0.03 |
197.7539 |
197.7539 |
197.7539 |
1029.16 KB |
1.00 |
| GetArrayViaStreamSpan |
1048576 |
True |
False |
185.439 μs |
3.5826 μs |
4.3998 μs |
1.04 |
0.03 |
168.7012 |
168.7012 |
168.7012 |
1025.51 KB |
1.00 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
104857600 |
True |
False |
17,221.904 μs |
333.1433 μs |
421.3196 μs |
1.00 |
0.03 |
312.5000 |
312.5000 |
312.5000 |
102400.29 KB |
1.00 |
| GetArrayViaStreamChunked |
104857600 |
True |
False |
17,173.710 μs |
341.5450 μs |
607.0960 μs |
1.00 |
0.04 |
312.5000 |
312.5000 |
312.5000 |
102404.46 KB |
1.00 |
| GetArrayViaStreamSpan |
104857600 |
True |
False |
17,868.987 μs |
349.7325 μs |
523.4631 μs |
1.04 |
0.04 |
312.5000 |
312.5000 |
312.5000 |
102400.43 KB |
1.00 |
bulk-ubuntu-24.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| GetByteBufferToArray |
10 |
False |
2.991 μs |
0.0116 μs |
0.0103 μs |
1.00 |
0.00 |
0.0076 |
0.0038 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
False |
3.236 μs |
0.0469 μs |
0.0439 μs |
1.08 |
0.01 |
0.0153 |
0.0114 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
False |
3.646 μs |
0.0729 μs |
0.0868 μs |
1.22 |
0.03 |
0.0687 |
0.0648 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
False |
1.861 μs |
0.0129 μs |
0.0121 μs |
0.62 |
0.00 |
0.0038 |
- |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10 |
True |
2.958 μs |
0.0349 μs |
0.0326 μs |
1.00 |
0.02 |
0.0076 |
0.0038 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
True |
3.211 μs |
0.0617 μs |
0.0686 μs |
1.09 |
0.03 |
0.0153 |
0.0114 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
True |
3.523 μs |
0.0570 μs |
0.0533 μs |
1.19 |
0.02 |
0.0687 |
0.0648 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
True |
1.846 μs |
0.0057 μs |
0.0054 μs |
0.62 |
0.01 |
0.0038 |
- |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
False |
2.902 μs |
0.0135 μs |
0.0113 μs |
1.00 |
0.01 |
0.0076 |
0.0038 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
False |
3.231 μs |
0.0453 μs |
0.0423 μs |
1.11 |
0.01 |
0.0153 |
0.0114 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
False |
3.602 μs |
0.0716 μs |
0.0931 μs |
1.24 |
0.03 |
0.0687 |
0.0648 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
False |
1.986 μs |
0.0162 μs |
0.0151 μs |
0.68 |
0.01 |
0.0038 |
- |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
True |
2.928 μs |
0.0199 μs |
0.0166 μs |
1.00 |
0.01 |
0.0076 |
0.0038 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
True |
3.178 μs |
0.0097 μs |
0.0076 μs |
1.09 |
0.01 |
0.0153 |
0.0114 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
True |
3.588 μs |
0.0702 μs |
0.1051 μs |
1.23 |
0.04 |
0.0687 |
0.0648 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
True |
1.883 μs |
0.0166 μs |
0.0156 μs |
0.64 |
0.01 |
0.0038 |
- |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
False |
3.440 μs |
0.0433 μs |
0.0405 μs |
1.00 |
0.02 |
0.0229 |
0.0191 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
False |
3.600 μs |
0.0694 μs |
0.1039 μs |
1.05 |
0.03 |
0.0420 |
0.0381 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
False |
3.615 μs |
0.0671 μs |
0.0659 μs |
1.05 |
0.02 |
0.0687 |
0.0648 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
False |
1.872 μs |
0.0106 μs |
0.0099 μs |
0.54 |
0.01 |
0.0038 |
- |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
True |
3.259 μs |
0.0621 μs |
0.0638 μs |
1.00 |
0.03 |
0.0229 |
0.0191 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
True |
3.611 μs |
0.0711 μs |
0.0665 μs |
1.11 |
0.03 |
0.0420 |
0.0381 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
True |
3.670 μs |
0.0722 μs |
0.1284 μs |
1.13 |
0.04 |
0.0687 |
0.0648 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
True |
1.867 μs |
0.0118 μs |
0.0110 μs |
0.57 |
0.01 |
0.0038 |
- |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
False |
4.535 μs |
0.0594 μs |
0.0555 μs |
1.00 |
0.02 |
0.1602 |
0.1526 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
False |
5.445 μs |
0.0542 μs |
0.0452 μs |
1.20 |
0.02 |
0.3128 |
0.3052 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
False |
4.396 μs |
0.0570 μs |
0.0533 μs |
0.97 |
0.02 |
0.0687 |
0.0610 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
False |
2.426 μs |
0.0211 μs |
0.0197 μs |
0.54 |
0.01 |
0.0038 |
- |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
True |
4.562 μs |
0.0703 μs |
0.0623 μs |
1.00 |
0.02 |
0.1602 |
0.1526 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
True |
5.431 μs |
0.0918 μs |
0.0859 μs |
1.19 |
0.02 |
0.3128 |
0.3052 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
True |
4.372 μs |
0.0438 μs |
0.0409 μs |
0.96 |
0.02 |
0.0687 |
0.0610 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
True |
2.388 μs |
0.0287 μs |
0.0268 μs |
0.52 |
0.01 |
0.0038 |
- |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
False |
62.017 μs |
0.3460 μs |
0.3236 μs |
1.00 |
0.01 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
False |
76.556 μs |
0.3569 μs |
0.2981 μs |
1.23 |
0.01 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
False |
11.879 μs |
0.0359 μs |
0.0319 μs |
0.19 |
0.00 |
0.0610 |
0.0458 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
False |
7.444 μs |
0.0081 μs |
0.0075 μs |
0.12 |
0.00 |
- |
- |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
True |
61.819 μs |
0.1899 μs |
0.1684 μs |
1.00 |
0.00 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
True |
77.952 μs |
0.5110 μs |
0.4530 μs |
1.26 |
0.01 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
True |
11.689 μs |
0.0648 μs |
0.0606 μs |
0.19 |
0.00 |
0.0610 |
0.0458 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
True |
7.655 μs |
0.0268 μs |
0.0238 μs |
0.12 |
0.00 |
- |
- |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
False |
283.112 μs |
5.6226 μs |
8.2415 μs |
1.00 |
0.04 |
212.4023 |
212.4023 |
212.4023 |
1050047 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
False |
573.371 μs |
11.4340 μs |
22.3011 μs |
2.03 |
0.10 |
500.0000 |
500.0000 |
500.0000 |
3015823 B |
2.872 |
| GetByteBufferStreamChunked |
1048576 |
False |
98.751 μs |
0.2213 μs |
0.2070 μs |
0.35 |
0.01 |
- |
- |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
False |
75.792 μs |
0.4026 μs |
0.3766 μs |
0.27 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
True |
268.038 μs |
5.0259 μs |
4.9361 μs |
1.00 |
0.03 |
217.2852 |
217.2852 |
217.2852 |
1050005 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
True |
588.438 μs |
11.5456 μs |
16.5584 μs |
2.20 |
0.07 |
500.0000 |
500.0000 |
500.0000 |
3015808 B |
2.872 |
| GetByteBufferStreamChunked |
1048576 |
True |
98.164 μs |
0.5935 μs |
0.5551 μs |
0.37 |
0.01 |
- |
- |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
True |
75.959 μs |
0.2590 μs |
0.2163 μs |
0.28 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
False |
2,195.016 μs |
38.6321 μs |
34.2464 μs |
1.00 |
0.02 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
False |
8,377.677 μs |
164.9086 μs |
189.9090 μs |
3.82 |
0.10 |
968.7500 |
968.7500 |
968.7500 |
43910699 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
False |
963.896 μs |
6.2917 μs |
5.2538 μs |
0.44 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
False |
794.725 μs |
6.0460 μs |
5.6554 μs |
0.36 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
True |
2,191.631 μs |
18.6667 μs |
14.5737 μs |
1.00 |
0.01 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
True |
8,439.216 μs |
162.8203 μs |
199.9580 μs |
3.85 |
0.09 |
968.7500 |
968.7500 |
968.7500 |
43910699 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
True |
941.897 μs |
6.9973 μs |
6.5453 μs |
0.43 |
0.00 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
True |
796.103 μs |
7.6313 μs |
7.1383 μs |
0.36 |
0.00 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
False |
21,752.997 μs |
430.2690 μs |
588.9572 μs |
1.00 |
0.04 |
312.5000 |
312.5000 |
312.5000 |
104858362 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
False |
49,640.555 μs |
762.6150 μs |
636.8181 μs |
2.28 |
0.07 |
818.1818 |
818.1818 |
818.1818 |
373163532 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
False |
13,850.133 μs |
170.5594 μs |
159.5414 μs |
0.64 |
0.02 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
False |
14,013.023 μs |
193.6942 μs |
181.1817 μs |
0.64 |
0.02 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
True |
21,899.897 μs |
427.8494 μs |
525.4376 μs |
1.00 |
0.03 |
312.5000 |
312.5000 |
312.5000 |
104858362 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
True |
48,279.934 μs |
862.0379 μs |
806.3508 μs |
2.21 |
0.06 |
818.1818 |
818.1818 |
818.1818 |
373163532 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
True |
14,278.833 μs |
156.2704 μs |
146.1754 μs |
0.65 |
0.02 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
True |
12,749.387 μs |
221.4667 μs |
263.6403 μs |
0.58 |
0.02 |
- |
- |
- |
400 B |
0.000 |
bulk-ubuntu-24.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
ForceRawMemory |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeByteArrayDirect |
1024 |
True |
False |
1.093 μs |
0.0007 μs |
0.0006 μs |
1.00 |
0.00 |
0.0153 |
- |
- |
1.09 KB |
1.00 |
| GetArrayViaStreamChunked |
1024 |
True |
False |
1.734 μs |
0.0133 μs |
0.0125 μs |
1.59 |
0.01 |
0.0801 |
- |
- |
5.26 KB |
4.81 |
| GetArrayViaStreamSpan |
1024 |
True |
False |
1.347 μs |
0.0029 μs |
0.0027 μs |
1.23 |
0.00 |
0.0172 |
- |
- |
1.23 KB |
1.13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
1048576 |
True |
False |
190.400 μs |
2.2721 μs |
2.0141 μs |
1.00 |
0.01 |
142.8223 |
142.8223 |
142.8223 |
1025.17 KB |
1.00 |
| GetArrayViaStreamChunked |
1048576 |
True |
False |
216.163 μs |
3.1887 μs |
2.8267 μs |
1.14 |
0.02 |
149.9023 |
149.9023 |
149.9023 |
1029.14 KB |
1.00 |
| GetArrayViaStreamSpan |
1048576 |
True |
False |
191.678 μs |
3.0406 μs |
2.8441 μs |
1.01 |
0.02 |
143.0664 |
143.0664 |
143.0664 |
1025.25 KB |
1.00 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
104857600 |
True |
False |
16,816.065 μs |
215.2732 μs |
190.8341 μs |
1.00 |
0.02 |
312.5000 |
312.5000 |
312.5000 |
102400.29 KB |
1.00 |
| GetArrayViaStreamChunked |
104857600 |
True |
False |
17,479.837 μs |
284.4757 μs |
266.0987 μs |
1.04 |
0.02 |
312.5000 |
312.5000 |
312.5000 |
102404.46 KB |
1.00 |
| GetArrayViaStreamSpan |
104857600 |
True |
False |
16,839.662 μs |
326.7490 μs |
388.9714 μs |
1.00 |
0.03 |
312.5000 |
312.5000 |
312.5000 |
102400.44 KB |
1.00 |
bulk-ubuntu-24.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| GetByteBufferToArray |
10 |
False |
3.079 μs |
0.0121 μs |
0.0113 μs |
1.00 |
0.01 |
0.0076 |
0.0038 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
False |
3.279 μs |
0.0200 μs |
0.0187 μs |
1.07 |
0.01 |
0.0153 |
0.0114 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
False |
3.579 μs |
0.0249 μs |
0.0233 μs |
1.16 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
False |
1.973 μs |
0.0076 μs |
0.0064 μs |
0.64 |
0.00 |
0.0038 |
- |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10 |
True |
3.057 μs |
0.0142 μs |
0.0133 μs |
1.00 |
0.01 |
0.0076 |
0.0038 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
True |
3.429 μs |
0.0218 μs |
0.0194 μs |
1.12 |
0.01 |
0.0153 |
0.0114 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
True |
3.577 μs |
0.0148 μs |
0.0138 μs |
1.17 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
True |
1.947 μs |
0.0054 μs |
0.0048 μs |
0.64 |
0.00 |
0.0038 |
- |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
False |
3.002 μs |
0.0114 μs |
0.0106 μs |
1.00 |
0.00 |
0.0076 |
0.0038 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
False |
3.288 μs |
0.0117 μs |
0.0109 μs |
1.10 |
0.01 |
0.0153 |
0.0114 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
False |
3.592 μs |
0.0152 μs |
0.0142 μs |
1.20 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
False |
1.932 μs |
0.0130 μs |
0.0121 μs |
0.64 |
0.00 |
0.0038 |
- |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
True |
3.071 μs |
0.0121 μs |
0.0113 μs |
1.00 |
0.01 |
0.0076 |
0.0038 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
True |
3.299 μs |
0.0136 μs |
0.0127 μs |
1.07 |
0.01 |
0.0153 |
0.0114 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
True |
3.576 μs |
0.0323 μs |
0.0287 μs |
1.16 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
True |
2.009 μs |
0.0146 μs |
0.0136 μs |
0.65 |
0.00 |
0.0038 |
- |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
False |
3.495 μs |
0.0254 μs |
0.0238 μs |
1.00 |
0.01 |
0.0229 |
0.0191 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
False |
3.819 μs |
0.0455 μs |
0.0426 μs |
1.09 |
0.01 |
0.0381 |
0.0305 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
False |
3.829 μs |
0.0460 μs |
0.0408 μs |
1.10 |
0.01 |
0.0687 |
0.0610 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
False |
2.063 μs |
0.0128 μs |
0.0120 μs |
0.59 |
0.01 |
0.0038 |
- |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
True |
3.451 μs |
0.0362 μs |
0.0339 μs |
1.00 |
0.01 |
0.0229 |
0.0191 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
True |
3.832 μs |
0.0253 μs |
0.0224 μs |
1.11 |
0.01 |
0.0420 |
0.0381 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
True |
3.658 μs |
0.0236 μs |
0.0221 μs |
1.06 |
0.01 |
0.0687 |
0.0648 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
True |
2.014 μs |
0.0184 μs |
0.0173 μs |
0.58 |
0.01 |
0.0038 |
- |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
False |
4.832 μs |
0.0135 μs |
0.0126 μs |
1.00 |
0.00 |
0.1602 |
0.1526 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
False |
5.904 μs |
0.0563 μs |
0.0526 μs |
1.22 |
0.01 |
0.3128 |
0.3052 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
False |
4.391 μs |
0.0330 μs |
0.0308 μs |
0.91 |
0.01 |
0.0687 |
0.0610 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
False |
2.588 μs |
0.0048 μs |
0.0043 μs |
0.54 |
0.00 |
0.0038 |
- |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
True |
4.726 μs |
0.0203 μs |
0.0190 μs |
1.00 |
0.01 |
0.1602 |
0.1526 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
True |
5.898 μs |
0.0309 μs |
0.0289 μs |
1.25 |
0.01 |
0.3128 |
0.3052 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
True |
4.422 μs |
0.0353 μs |
0.0330 μs |
0.94 |
0.01 |
0.0687 |
0.0610 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
True |
2.581 μs |
0.0162 μs |
0.0151 μs |
0.55 |
0.00 |
0.0038 |
- |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
False |
65.480 μs |
1.2715 μs |
1.6974 μs |
1.00 |
0.04 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
False |
81.787 μs |
0.3842 μs |
0.3406 μs |
1.25 |
0.03 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
False |
11.658 μs |
0.0213 μs |
0.0189 μs |
0.18 |
0.00 |
0.0610 |
0.0458 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
False |
7.944 μs |
0.0471 μs |
0.0441 μs |
0.12 |
0.00 |
- |
- |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
True |
66.431 μs |
0.9225 μs |
0.8629 μs |
1.00 |
0.02 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
True |
82.863 μs |
1.5259 μs |
1.4273 μs |
1.25 |
0.03 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
True |
11.666 μs |
0.0163 μs |
0.0136 μs |
0.18 |
0.00 |
0.0610 |
0.0458 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
True |
7.773 μs |
0.0069 μs |
0.0057 μs |
0.12 |
0.00 |
- |
- |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
False |
274.379 μs |
2.6070 μs |
2.4386 μs |
1.00 |
0.01 |
167.9688 |
167.9688 |
167.9688 |
1050041 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
False |
563.971 μs |
6.4739 μs |
5.7389 μs |
2.06 |
0.03 |
379.8828 |
379.8828 |
379.8828 |
3017235 B |
2.873 |
| GetByteBufferStreamChunked |
1048576 |
False |
97.998 μs |
0.6294 μs |
0.5887 μs |
0.36 |
0.00 |
- |
- |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
False |
76.947 μs |
0.1140 μs |
0.0952 μs |
0.28 |
0.00 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
True |
271.662 μs |
5.4010 μs |
5.3045 μs |
1.00 |
0.03 |
170.4102 |
170.4102 |
170.4102 |
1050104 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
True |
569.082 μs |
8.6876 μs |
7.7014 μs |
2.10 |
0.05 |
401.3672 |
401.3672 |
401.3672 |
3017322 B |
2.873 |
| GetByteBufferStreamChunked |
1048576 |
True |
98.836 μs |
1.0460 μs |
0.9273 μs |
0.36 |
0.01 |
- |
- |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
True |
76.685 μs |
0.3521 μs |
0.3121 μs |
0.28 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
False |
2,360.172 μs |
24.1009 μs |
21.3648 μs |
1.00 |
0.01 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
False |
6,839.749 μs |
117.8901 μs |
104.5065 μs |
2.90 |
0.05 |
734.3750 |
734.3750 |
734.3750 |
43910537 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
False |
980.191 μs |
19.0408 μs |
18.7006 μs |
0.42 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
False |
797.245 μs |
4.7410 μs |
4.2028 μs |
0.34 |
0.00 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
True |
2,354.222 μs |
46.7358 μs |
45.9008 μs |
1.00 |
0.03 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
True |
6,837.001 μs |
86.0924 μs |
71.8911 μs |
2.91 |
0.06 |
710.9375 |
710.9375 |
710.9375 |
43910573 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
True |
960.652 μs |
5.7014 μs |
5.0541 μs |
0.41 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
True |
826.496 μs |
4.8799 μs |
4.5646 μs |
0.35 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
False |
22,558.689 μs |
317.7080 μs |
297.1842 μs |
1.00 |
0.02 |
312.5000 |
312.5000 |
312.5000 |
104858366 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
False |
48,594.587 μs |
524.2621 μs |
464.7447 μs |
2.15 |
0.03 |
600.0000 |
600.0000 |
600.0000 |
373163404 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
False |
14,697.773 μs |
287.7793 μs |
319.8660 μs |
0.65 |
0.02 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
False |
14,237.208 μs |
138.6831 μs |
129.7243 μs |
0.63 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
True |
23,195.718 μs |
355.3047 μs |
296.6955 μs |
1.00 |
0.02 |
312.5000 |
312.5000 |
312.5000 |
104858366 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
True |
50,880.745 μs |
987.3940 μs |
969.7530 μs |
2.19 |
0.05 |
600.0000 |
600.0000 |
600.0000 |
373163404 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
True |
14,727.456 μs |
294.1704 μs |
421.8905 μs |
0.64 |
0.02 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
True |
14,262.868 μs |
272.5696 μs |
324.4747 μs |
0.61 |
0.02 |
- |
- |
- |
400 B |
0.000 |
bulk-ubuntu-24.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
ForceRawMemory |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeByteArrayDirect |
1024 |
True |
False |
1.092 μs |
0.0114 μs |
0.0107 μs |
1.00 |
0.01 |
0.0668 |
- |
- |
1.09 KB |
1.00 |
| GetArrayViaStreamChunked |
1024 |
True |
False |
1.617 μs |
0.0145 μs |
0.0135 μs |
1.48 |
0.02 |
0.3204 |
- |
- |
5.26 KB |
4.81 |
| GetArrayViaStreamSpan |
1024 |
True |
False |
1.339 μs |
0.0098 μs |
0.0092 μs |
1.23 |
0.01 |
0.0744 |
- |
- |
1.23 KB |
1.13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
1048576 |
True |
False |
181.829 μs |
2.9717 μs |
2.7798 μs |
1.00 |
0.02 |
194.8242 |
194.8242 |
194.8242 |
1025.29 KB |
1.00 |
| GetArrayViaStreamChunked |
1048576 |
True |
False |
215.452 μs |
2.3570 μs |
2.2047 μs |
1.19 |
0.02 |
212.6465 |
212.4023 |
212.4023 |
1029.08 KB |
1.00 |
| GetArrayViaStreamSpan |
1048576 |
True |
False |
185.616 μs |
3.5625 μs |
3.8118 μs |
1.02 |
0.03 |
203.6133 |
203.6133 |
203.6133 |
1025.38 KB |
1.00 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
104857600 |
True |
False |
47,058.407 μs |
826.7761 μs |
773.3668 μs |
1.00 |
0.02 |
272.7273 |
272.7273 |
272.7273 |
102400.27 KB |
1.00 |
| GetArrayViaStreamChunked |
104857600 |
True |
False |
52,083.348 μs |
682.2492 μs |
638.1764 μs |
1.11 |
0.02 |
300.0000 |
300.0000 |
300.0000 |
102404.45 KB |
1.00 |
| GetArrayViaStreamSpan |
104857600 |
True |
False |
47,292.862 μs |
686.3013 μs |
641.9667 μs |
1.01 |
0.02 |
272.7273 |
272.7273 |
272.7273 |
102400.41 KB |
1.00 |
bulk-ubuntu-24.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
UseCriticalMethods |
Mean |
Error |
StdDev |
Median |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| GetByteBufferToArray |
10 |
False |
2.788 μs |
0.0098 μs |
0.0081 μs |
2.790 μs |
1.00 |
0.00 |
0.0343 |
0.0305 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
False |
2.822 μs |
0.0153 μs |
0.0136 μs |
2.821 μs |
1.01 |
0.01 |
0.0610 |
0.0572 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
False |
2.945 μs |
0.0157 μs |
0.0123 μs |
2.944 μs |
1.06 |
0.01 |
0.2861 |
0.2823 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
False |
1.821 μs |
0.0115 μs |
0.0107 μs |
1.820 μs |
0.65 |
0.00 |
0.0229 |
0.0210 |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10 |
True |
2.735 μs |
0.0176 μs |
0.0164 μs |
2.737 μs |
1.00 |
0.01 |
0.0343 |
0.0305 |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
True |
2.841 μs |
0.0109 μs |
0.0102 μs |
2.842 μs |
1.04 |
0.01 |
0.0610 |
0.0572 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
True |
2.934 μs |
0.0242 μs |
0.0202 μs |
2.930 μs |
1.07 |
0.01 |
0.2861 |
0.2823 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
True |
1.817 μs |
0.0101 μs |
0.0095 μs |
1.816 μs |
0.66 |
0.01 |
0.0229 |
0.0210 |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
False |
2.751 μs |
0.0206 μs |
0.0193 μs |
2.749 μs |
1.00 |
0.01 |
0.0381 |
0.0343 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
False |
2.817 μs |
0.0148 μs |
0.0139 μs |
2.815 μs |
1.02 |
0.01 |
0.0648 |
0.0610 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
False |
2.972 μs |
0.0179 μs |
0.0168 μs |
2.969 μs |
1.08 |
0.01 |
0.2861 |
0.2823 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
False |
1.841 μs |
0.0116 μs |
0.0109 μs |
1.842 μs |
0.67 |
0.01 |
0.0229 |
0.0210 |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
True |
2.756 μs |
0.0142 μs |
0.0126 μs |
2.754 μs |
1.00 |
0.01 |
0.0381 |
0.0343 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
True |
2.832 μs |
0.0119 μs |
0.0106 μs |
2.833 μs |
1.03 |
0.01 |
0.0648 |
0.0610 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
True |
2.987 μs |
0.0237 μs |
0.0222 μs |
2.979 μs |
1.08 |
0.01 |
0.2861 |
0.2823 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
True |
1.835 μs |
0.0133 μs |
0.0125 μs |
1.837 μs |
0.67 |
0.01 |
0.0229 |
0.0210 |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
False |
2.889 μs |
0.0074 μs |
0.0062 μs |
2.888 μs |
1.00 |
0.00 |
0.0916 |
0.0877 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
False |
3.066 μs |
0.0303 μs |
0.0268 μs |
3.058 μs |
1.06 |
0.01 |
0.1678 |
0.1640 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
False |
3.031 μs |
0.0130 μs |
0.0115 μs |
3.034 μs |
1.05 |
0.00 |
0.2861 |
0.2823 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
False |
1.933 μs |
0.0160 μs |
0.0150 μs |
1.929 μs |
0.67 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
True |
2.894 μs |
0.0164 μs |
0.0146 μs |
2.895 μs |
1.00 |
0.01 |
0.0916 |
0.0877 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
True |
3.014 μs |
0.0270 μs |
0.0240 μs |
3.004 μs |
1.04 |
0.01 |
0.1678 |
0.1640 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
True |
2.996 μs |
0.0112 μs |
0.0099 μs |
2.997 μs |
1.04 |
0.01 |
0.2861 |
0.2823 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
True |
1.881 μs |
0.0146 μs |
0.0129 μs |
1.877 μs |
0.65 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
False |
4.228 μs |
0.0647 μs |
0.0605 μs |
4.210 μs |
1.00 |
0.02 |
0.6409 |
0.6332 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
False |
5.035 μs |
0.0313 μs |
0.0292 μs |
5.040 μs |
1.19 |
0.02 |
1.2665 |
0.6256 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
False |
3.706 μs |
0.0144 μs |
0.0120 μs |
3.708 μs |
0.88 |
0.01 |
0.2861 |
0.2823 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
False |
2.277 μs |
0.0136 μs |
0.0127 μs |
2.274 μs |
0.54 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
True |
4.152 μs |
0.0347 μs |
0.0307 μs |
4.143 μs |
1.00 |
0.01 |
0.6409 |
0.6332 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
True |
4.990 μs |
0.0363 μs |
0.0322 μs |
4.989 μs |
1.20 |
0.01 |
1.2665 |
0.6256 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
True |
3.779 μs |
0.0259 μs |
0.0242 μs |
3.777 μs |
0.91 |
0.01 |
0.2861 |
0.2823 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
True |
2.339 μs |
0.0143 μs |
0.0133 μs |
2.336 μs |
0.56 |
0.01 |
0.0229 |
0.0191 |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
False |
74.032 μs |
0.3276 μs |
0.2904 μs |
73.970 μs |
1.00 |
0.01 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
False |
102.146 μs |
1.0265 μs |
0.9602 μs |
101.978 μs |
1.38 |
0.01 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
False |
12.506 μs |
0.2441 μs |
0.2811 μs |
12.494 μs |
0.17 |
0.00 |
0.2747 |
0.2594 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
False |
6.945 μs |
0.0397 μs |
0.0372 μs |
6.959 μs |
0.09 |
0.00 |
0.0229 |
0.0153 |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
True |
73.067 μs |
0.6342 μs |
0.5296 μs |
72.939 μs |
1.00 |
0.01 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
True |
91.671 μs |
0.4328 μs |
0.3614 μs |
91.716 μs |
1.25 |
0.01 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
True |
13.026 μs |
0.1144 μs |
0.1070 μs |
13.031 μs |
0.18 |
0.00 |
0.2747 |
0.2594 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
True |
6.828 μs |
0.0330 μs |
0.0292 μs |
6.835 μs |
0.09 |
0.00 |
0.0229 |
0.0153 |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
False |
233.747 μs |
7.3065 μs |
21.1976 μs |
231.001 μs |
1.01 |
0.13 |
202.6367 |
202.6367 |
202.6367 |
1049607 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
False |
571.215 μs |
11.3436 μs |
29.6842 μs |
569.771 μs |
2.46 |
0.25 |
530.2734 |
530.2734 |
530.2734 |
3016068 B |
2.874 |
| GetByteBufferStreamChunked |
1048576 |
False |
86.602 μs |
0.5981 μs |
0.4669 μs |
86.626 μs |
0.37 |
0.03 |
0.2441 |
0.1221 |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
False |
65.167 μs |
2.7135 μs |
8.0008 μs |
65.109 μs |
0.28 |
0.04 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
True |
234.251 μs |
6.3817 μs |
18.6158 μs |
233.703 μs |
1.01 |
0.11 |
202.1484 |
202.1484 |
202.1484 |
1049748 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
True |
563.647 μs |
11.1304 μs |
23.9594 μs |
563.565 μs |
2.42 |
0.22 |
552.7344 |
552.7344 |
552.7344 |
3016017 B |
2.873 |
| GetByteBufferStreamChunked |
1048576 |
True |
90.202 μs |
1.7762 μs |
3.2923 μs |
91.593 μs |
0.39 |
0.03 |
0.2441 |
0.1221 |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
True |
65.807 μs |
2.6503 μs |
7.8144 μs |
67.224 μs |
0.28 |
0.04 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
False |
3,355.735 μs |
53.2506 μs |
49.8106 μs |
3,339.709 μs |
1.00 |
0.02 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
False |
15,132.195 μs |
297.1831 μs |
586.6104 μs |
15,284.483 μs |
4.51 |
0.18 |
968.7500 |
968.7500 |
968.7500 |
43910699 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
False |
999.791 μs |
19.4413 μs |
27.2540 μs |
1,008.865 μs |
0.30 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
False |
771.772 μs |
15.9632 μs |
47.0679 μs |
774.917 μs |
0.23 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
True |
3,299.631 μs |
57.6526 μs |
56.6226 μs |
3,295.302 μs |
1.00 |
0.02 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
True |
15,141.352 μs |
299.7737 μs |
555.6498 μs |
15,303.644 μs |
4.59 |
0.18 |
968.7500 |
968.7500 |
968.7500 |
43910699 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
True |
993.540 μs |
11.1171 μs |
8.6795 μs |
997.304 μs |
0.30 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
True |
754.360 μs |
15.0860 μs |
44.0065 μs |
731.263 μs |
0.23 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
False |
57,427.062 μs |
1,034.8999 μs |
968.0460 μs |
57,577.515 μs |
1.00 |
0.02 |
222.2222 |
222.2222 |
222.2222 |
104858304 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
False |
67,072.436 μs |
1,263.2876 μs |
1,181.6800 μs |
67,179.259 μs |
1.17 |
0.03 |
750.0000 |
750.0000 |
750.0000 |
373163488 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
False |
24,042.250 μs |
478.9892 μs |
655.6459 μs |
24,080.641 μs |
0.42 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
False |
19,019.256 μs |
376.6817 μs |
386.8244 μs |
19,106.633 μs |
0.33 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
True |
57,942.850 μs |
782.5630 μs |
732.0099 μs |
58,011.850 μs |
1.00 |
0.02 |
222.2222 |
222.2222 |
222.2222 |
104858304 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
True |
68,111.679 μs |
1,319.5055 μs |
1,715.7300 μs |
68,057.728 μs |
1.18 |
0.03 |
750.0000 |
750.0000 |
750.0000 |
373163488 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
True |
23,454.045 μs |
374.1813 μs |
350.0094 μs |
23,417.514 μs |
0.40 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
True |
18,536.270 μs |
357.6943 μs |
524.3037 μs |
18,559.042 μs |
0.32 |
0.01 |
- |
- |
- |
400 B |
0.000 |
bulk-ubuntu-24.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
ForceRawMemory |
UseCriticalMethods |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeByteArrayDirect |
1024 |
True |
False |
754.9 ns |
8.48 ns |
7.93 ns |
1.00 |
0.01 |
0.0134 |
- |
- |
1.09 KB |
1.00 |
| GetArrayViaStreamChunked |
1024 |
True |
False |
1,121.1 ns |
12.60 ns |
10.52 ns |
1.49 |
0.02 |
0.0629 |
- |
- |
5.26 KB |
4.81 |
| GetArrayViaStreamSpan |
1024 |
True |
False |
914.3 ns |
17.16 ns |
17.62 ns |
1.21 |
0.03 |
0.0143 |
- |
- |
1.23 KB |
1.13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
1048576 |
True |
False |
196,204.0 ns |
3,687.19 ns |
3,268.60 ns |
1.00 |
0.02 |
203.8574 |
203.8574 |
203.8574 |
1024.72 KB |
1.00 |
| GetArrayViaStreamChunked |
1048576 |
True |
False |
210,359.3 ns |
4,024.28 ns |
3,567.42 ns |
1.07 |
0.02 |
225.3418 |
225.3418 |
225.3418 |
1028.93 KB |
1.00 |
| GetArrayViaStreamSpan |
1048576 |
True |
False |
201,966.1 ns |
4,002.06 ns |
3,743.53 ns |
1.03 |
0.02 |
206.0547 |
206.0547 |
206.0547 |
1024.72 KB |
1.00 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeByteArrayDirect |
104857600 |
True |
False |
33,363,405.8 ns |
423,387.10 ns |
375,321.64 ns |
1.00 |
0.02 |
250.0000 |
250.0000 |
250.0000 |
102400.25 KB |
1.00 |
| GetArrayViaStreamChunked |
104857600 |
True |
False |
34,977,854.4 ns |
509,626.56 ns |
476,705.00 ns |
1.05 |
0.02 |
266.6667 |
266.6667 |
266.6667 |
102404.43 KB |
1.00 |
| GetArrayViaStreamSpan |
104857600 |
True |
False |
32,954,917.4 ns |
283,079.42 ns |
236,384.14 ns |
0.99 |
0.01 |
250.0000 |
250.0000 |
250.0000 |
102400.4 KB |
1.00 |
bulk-ubuntu-24.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
UseCriticalMethods |
Mean |
Error |
StdDev |
Median |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| GetByteBufferToArray |
10 |
False |
2.031 μs |
0.0250 μs |
0.0209 μs |
2.037 μs |
1.00 |
0.01 |
0.0038 |
- |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
False |
2.351 μs |
0.0235 μs |
0.0209 μs |
2.347 μs |
1.16 |
0.02 |
0.0114 |
0.0076 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
False |
2.588 μs |
0.0374 μs |
0.0350 μs |
2.585 μs |
1.27 |
0.02 |
0.0572 |
0.0534 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
False |
1.464 μs |
0.0226 μs |
0.0211 μs |
1.457 μs |
0.72 |
0.01 |
0.0038 |
0.0019 |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10 |
True |
1.972 μs |
0.0200 μs |
0.0167 μs |
1.975 μs |
1.00 |
0.01 |
0.0038 |
- |
- |
576 B |
1.00 |
| GetByteBufferStreamNaive |
10 |
True |
2.237 μs |
0.0214 μs |
0.0200 μs |
2.239 μs |
1.13 |
0.01 |
0.0114 |
0.0076 |
- |
1056 B |
1.83 |
| GetByteBufferStreamChunked |
10 |
True |
2.585 μs |
0.0438 μs |
0.0389 μs |
2.581 μs |
1.31 |
0.02 |
0.0572 |
0.0534 |
- |
4792 B |
8.32 |
| GetByteBufferDirectSpan |
10 |
True |
1.453 μs |
0.0220 μs |
0.0206 μs |
1.461 μs |
0.74 |
0.01 |
0.0038 |
0.0019 |
- |
400 B |
0.69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
False |
2.153 μs |
0.0264 μs |
0.0247 μs |
2.155 μs |
1.00 |
0.02 |
0.0076 |
0.0038 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
False |
2.197 μs |
0.0265 μs |
0.0248 μs |
2.191 μs |
1.02 |
0.02 |
0.0114 |
0.0076 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
False |
2.548 μs |
0.0231 μs |
0.0204 μs |
2.548 μs |
1.18 |
0.02 |
0.0572 |
0.0534 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
False |
1.470 μs |
0.0192 μs |
0.0180 μs |
1.473 μs |
0.68 |
0.01 |
0.0038 |
0.0019 |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
100 |
True |
2.138 μs |
0.0288 μs |
0.0270 μs |
2.138 μs |
1.00 |
0.02 |
0.0076 |
0.0038 |
- |
664 B |
1.00 |
| GetByteBufferStreamNaive |
100 |
True |
2.222 μs |
0.0264 μs |
0.0247 μs |
2.224 μs |
1.04 |
0.02 |
0.0114 |
0.0076 |
- |
1144 B |
1.72 |
| GetByteBufferStreamChunked |
100 |
True |
2.585 μs |
0.0163 μs |
0.0136 μs |
2.587 μs |
1.21 |
0.02 |
0.0572 |
0.0534 |
- |
4792 B |
7.22 |
| GetByteBufferDirectSpan |
100 |
True |
1.480 μs |
0.0237 μs |
0.0222 μs |
1.480 μs |
0.69 |
0.01 |
0.0038 |
0.0019 |
- |
400 B |
0.60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
False |
2.270 μs |
0.0363 μs |
0.0340 μs |
2.274 μs |
1.00 |
0.02 |
0.0153 |
0.0114 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
False |
2.592 μs |
0.0386 μs |
0.0322 μs |
2.597 μs |
1.14 |
0.02 |
0.0305 |
0.0267 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
False |
2.694 μs |
0.0534 μs |
0.0831 μs |
2.681 μs |
1.19 |
0.04 |
0.0572 |
0.0534 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
False |
1.491 μs |
0.0168 μs |
0.0157 μs |
1.493 μs |
0.66 |
0.01 |
0.0038 |
0.0019 |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1024 |
True |
2.347 μs |
0.0299 μs |
0.0279 μs |
2.350 μs |
1.00 |
0.02 |
0.0153 |
0.0114 |
- |
1584 B |
1.00 |
| GetByteBufferStreamNaive |
1024 |
True |
2.567 μs |
0.0320 μs |
0.0284 μs |
2.571 μs |
1.09 |
0.02 |
0.0305 |
0.0267 |
- |
2832 B |
1.79 |
| GetByteBufferStreamChunked |
1024 |
True |
2.606 μs |
0.0381 μs |
0.0337 μs |
2.596 μs |
1.11 |
0.02 |
0.0572 |
0.0534 |
- |
4792 B |
3.03 |
| GetByteBufferDirectSpan |
1024 |
True |
1.513 μs |
0.0214 μs |
0.0200 μs |
1.516 μs |
0.64 |
0.01 |
0.0038 |
0.0019 |
- |
400 B |
0.25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
False |
3.358 μs |
0.0344 μs |
0.0321 μs |
3.355 μs |
1.00 |
0.01 |
0.1259 |
0.1221 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
False |
4.030 μs |
0.0360 μs |
0.0320 μs |
4.031 μs |
1.20 |
0.01 |
0.2518 |
0.2441 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
False |
3.319 μs |
0.0463 μs |
0.0433 μs |
3.325 μs |
0.99 |
0.02 |
0.0572 |
0.0534 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
False |
1.771 μs |
0.0214 μs |
0.0200 μs |
1.767 μs |
0.53 |
0.01 |
0.0038 |
0.0019 |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10240 |
True |
3.664 μs |
0.0727 μs |
0.1043 μs |
3.700 μs |
1.00 |
0.04 |
0.1259 |
0.1221 |
- |
10800 B |
1.00 |
| GetByteBufferStreamNaive |
10240 |
True |
4.104 μs |
0.0718 μs |
0.0636 μs |
4.081 μs |
1.12 |
0.04 |
0.2518 |
0.2441 |
- |
21264 B |
1.97 |
| GetByteBufferStreamChunked |
10240 |
True |
3.328 μs |
0.0387 μs |
0.0362 μs |
3.322 μs |
0.91 |
0.03 |
0.0572 |
0.0534 |
- |
4792 B |
0.44 |
| GetByteBufferDirectSpan |
10240 |
True |
1.768 μs |
0.0325 μs |
0.0304 μs |
1.767 μs |
0.48 |
0.02 |
0.0038 |
0.0019 |
- |
400 B |
0.04 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
False |
50.023 μs |
0.1718 μs |
0.1607 μs |
50.009 μs |
1.00 |
0.00 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
False |
67.807 μs |
0.2508 μs |
0.2095 μs |
67.767 μs |
1.36 |
0.01 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
False |
8.516 μs |
0.0476 μs |
0.0446 μs |
8.511 μs |
0.17 |
0.00 |
0.0458 |
0.0305 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
False |
5.893 μs |
0.0323 μs |
0.0286 μs |
5.897 μs |
0.12 |
0.00 |
- |
- |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
102400 |
True |
49.977 μs |
0.1616 μs |
0.1349 μs |
49.994 μs |
1.00 |
0.00 |
32.2266 |
32.2266 |
32.2266 |
102982 B |
1.000 |
| GetByteBufferStreamNaive |
102400 |
True |
68.057 μs |
0.2783 μs |
0.2324 μs |
68.053 μs |
1.36 |
0.01 |
64.4531 |
64.4531 |
64.4531 |
205627 B |
1.997 |
| GetByteBufferStreamChunked |
102400 |
True |
8.434 μs |
0.0741 μs |
0.0693 μs |
8.425 μs |
0.17 |
0.00 |
0.0458 |
0.0305 |
- |
4792 B |
0.047 |
| GetByteBufferDirectSpan |
102400 |
True |
5.892 μs |
0.0412 μs |
0.0365 μs |
5.889 μs |
0.12 |
0.00 |
- |
- |
- |
400 B |
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
False |
265.404 μs |
3.5322 μs |
3.3040 μs |
265.522 μs |
1.00 |
0.02 |
233.8867 |
233.8867 |
233.8867 |
1049530 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
False |
552.977 μs |
7.4131 μs |
6.5715 μs |
552.925 μs |
2.08 |
0.03 |
563.4766 |
563.4766 |
563.4766 |
3015885 B |
2.874 |
| GetByteBufferStreamChunked |
1048576 |
False |
94.459 μs |
1.5845 μs |
1.6954 μs |
94.395 μs |
0.36 |
0.01 |
- |
- |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
False |
89.631 μs |
1.1706 μs |
1.0949 μs |
89.916 μs |
0.34 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
1048576 |
True |
269.045 μs |
3.7141 μs |
3.4742 μs |
269.086 μs |
1.00 |
0.02 |
245.6055 |
245.6055 |
245.6055 |
1049344 B |
1.000 |
| GetByteBufferStreamNaive |
1048576 |
True |
549.177 μs |
8.1080 μs |
7.1875 μs |
550.911 μs |
2.04 |
0.04 |
568.3594 |
568.3594 |
568.3594 |
3015889 B |
2.874 |
| GetByteBufferStreamChunked |
1048576 |
True |
96.030 μs |
1.9029 μs |
3.5742 μs |
94.587 μs |
0.36 |
0.01 |
- |
- |
- |
4792 B |
0.005 |
| GetByteBufferDirectSpan |
1048576 |
True |
90.830 μs |
1.8123 μs |
3.1741 μs |
89.101 μs |
0.34 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
False |
2,839.658 μs |
56.7484 μs |
63.0757 μs |
2,838.231 μs |
1.00 |
0.03 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
False |
8,507.334 μs |
156.8517 μs |
130.9783 μs |
8,501.021 μs |
3.00 |
0.08 |
718.7500 |
718.7500 |
718.7500 |
43910546 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
False |
1,281.096 μs |
22.7189 μs |
21.2513 μs |
1,291.180 μs |
0.45 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
False |
1,265.926 μs |
7.6803 μs |
6.8084 μs |
1,266.902 μs |
0.45 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
10485760 |
True |
2,877.657 μs |
41.6749 μs |
36.9438 μs |
2,883.080 μs |
1.00 |
0.02 |
332.0313 |
332.0313 |
332.0313 |
10486535 B |
1.000 |
| GetByteBufferStreamNaive |
10485760 |
True |
8,591.509 μs |
148.4220 μs |
182.2755 μs |
8,558.692 μs |
2.99 |
0.07 |
1015.6250 |
1015.6250 |
1015.6250 |
43910731 B |
4.187 |
| GetByteBufferStreamChunked |
10485760 |
True |
1,269.945 μs |
22.1636 μs |
28.0299 μs |
1,259.063 μs |
0.44 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
10485760 |
True |
1,234.906 μs |
17.3925 μs |
16.2690 μs |
1,239.017 μs |
0.43 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
False |
46,386.213 μs |
671.8517 μs |
628.4505 μs |
46,420.251 μs |
1.00 |
0.02 |
272.7273 |
272.7273 |
272.7273 |
104858341 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
False |
95,349.431 μs |
599.4574 μs |
560.7329 μs |
95,312.729 μs |
2.06 |
0.03 |
666.6667 |
666.6667 |
666.6667 |
373163448 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
False |
19,482.888 μs |
372.3192 μs |
382.3444 μs |
19,569.139 μs |
0.42 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
False |
17,921.963 μs |
354.9715 μs |
485.8890 μs |
17,849.174 μs |
0.39 |
0.01 |
- |
- |
- |
400 B |
0.000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| GetByteBufferToArray |
104857600 |
True |
46,611.407 μs |
598.1498 μs |
559.5097 μs |
46,634.937 μs |
1.00 |
0.02 |
272.7273 |
272.7273 |
272.7273 |
104858341 B |
1.000 |
| GetByteBufferStreamNaive |
104857600 |
True |
94,321.132 μs |
832.0961 μs |
778.3432 μs |
94,250.695 μs |
2.02 |
0.03 |
666.6667 |
666.6667 |
666.6667 |
373163448 B |
3.559 |
| GetByteBufferStreamChunked |
104857600 |
True |
20,094.837 μs |
396.1322 μs |
486.4859 μs |
20,013.028 μs |
0.43 |
0.01 |
- |
- |
- |
4792 B |
0.000 |
| GetByteBufferDirectSpan |
104857600 |
True |
18,457.276 μs |
364.2422 μs |
799.5205 μs |
18,402.815 μs |
0.40 |
0.02 |
- |
- |
- |
400 B |
0.000 |
core-ubuntu-22.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
548.7 ns |
0.28 ns |
0.23 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,292.0 ns |
15.12 ns |
14.14 ns |
13.29 |
0.03 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,153.2 ns |
1.81 ns |
1.61 ns |
2.10 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,171.1 ns |
1.86 ns |
1.65 ns |
2.13 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,410.7 ns |
46.04 ns |
40.82 ns |
17.15 |
0.07 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
537.3 ns |
0.27 ns |
0.23 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
568,423.0 ns |
1,073.70 ns |
1,004.34 ns |
1,057.83 |
1.86 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,908.7 ns |
2.45 ns |
1.91 ns |
3.55 |
0.00 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,903.3 ns |
5.26 ns |
4.66 ns |
3.54 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
742,455.7 ns |
544.51 ns |
425.12 ns |
1,381.71 |
0.95 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
555.7 ns |
0.26 ns |
0.20 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,970,975.7 ns |
319,526.73 ns |
298,885.50 ns |
106,117.15 |
522.40 |
333.3333 |
222.2222 |
222.2222 |
16001497 B |
51,286.85 |
| InvokeIntArrayFixed |
100000 |
61,201.3 ns |
615.80 ns |
576.02 ns |
110.13 |
1.00 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,367.2 ns |
365.19 ns |
323.73 ns |
110.43 |
0.56 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,051,919.1 ns |
1,469,737.35 ns |
1,374,793.23 ns |
147,650.87 |
2,397.26 |
666.6667 |
500.0000 |
500.0000 |
27894008 B |
89,403.87 |
core-ubuntu-22.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.074 μs |
0.0008 μs |
0.0007 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.075 μs |
0.0007 μs |
0.0005 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.058 μs |
0.0041 μs |
0.0034 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
91.62 ns |
0.041 ns |
0.034 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
114.82 ns |
0.025 ns |
0.022 ns |
1.25 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
114.41 ns |
0.026 ns |
0.022 ns |
1.25 |
- |
- |
0.00 |
| SetInstanceStringField |
688.17 ns |
0.820 ns |
0.767 ns |
7.51 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
118.58 ns |
0.039 ns |
0.033 ns |
1.29 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
115.73 ns |
0.088 ns |
0.082 ns |
1.26 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
108.54 ns |
0.017 ns |
0.016 ns |
1.18 |
- |
- |
0.00 |
| SetStaticStringField |
678.50 ns |
1.175 ns |
1.099 ns |
7.41 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
101.51 ns |
0.022 ns |
0.020 ns |
1.11 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
375.0 ns |
0.10 ns |
0.09 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
387.7 ns |
0.34 ns |
0.32 ns |
1.03 |
- |
- |
NA |
| InvokeStaticWithFeedback |
538.1 ns |
0.26 ns |
0.23 ns |
1.44 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
393.0 ns |
0.23 ns |
0.22 ns |
1.05 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
563.5 ns |
0.40 ns |
0.34 ns |
1.50 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.333 μs |
0.0023 μs |
0.0022 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,060.4 ns |
3.85 ns |
3.41 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,065.0 ns |
6.19 ns |
5.79 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,316.7 ns |
5.58 ns |
4.94 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,960.3 ns |
13.89 ns |
13.00 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
464.6 ns |
0.97 ns |
0.91 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
462.7 ns |
0.62 ns |
0.58 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
691.4 ns |
1.22 ns |
1.08 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,126.3 ns |
11.69 ns |
10.94 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
606.35 ns |
1.081 ns |
0.958 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
605.12 ns |
5.052 ns |
4.726 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
817.81 ns |
0.650 ns |
0.543 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,318.77 ns |
9.991 ns |
9.345 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
50.77 ns |
0.896 ns |
0.838 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
50.79 ns |
0.696 ns |
0.651 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
276.71 ns |
0.482 ns |
0.451 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,554.20 ns |
6.492 ns |
5.755 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
572.8 ns |
1.25 ns |
1.17 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,476.2 ns |
30.16 ns |
28.22 ns |
13.05 |
0.05 |
0.0153 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,158.0 ns |
1.61 ns |
1.43 ns |
2.02 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,170.1 ns |
1.64 ns |
1.45 ns |
2.04 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
10,042.5 ns |
49.32 ns |
41.18 ns |
17.53 |
0.08 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
558.3 ns |
0.46 ns |
0.41 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
571,832.3 ns |
1,036.88 ns |
969.90 ns |
1,024.22 |
1.83 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,877.7 ns |
4.30 ns |
3.81 ns |
3.36 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,901.9 ns |
7.14 ns |
6.68 ns |
3.41 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
753,642.7 ns |
1,563.49 ns |
1,305.59 ns |
1,349.87 |
2.45 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
564.6 ns |
0.57 ns |
0.51 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,838,898.0 ns |
194,296.01 ns |
181,744.61 ns |
104,215.70 |
324.61 |
333.3333 |
222.2222 |
222.2222 |
16001879 B |
51,288.07 |
| InvokeIntArrayFixed |
100000 |
61,916.0 ns |
308.97 ns |
273.90 ns |
109.67 |
0.48 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,458.1 ns |
366.09 ns |
342.44 ns |
108.85 |
0.59 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,843,634.2 ns |
1,118,259.18 ns |
1,046,020.34 ns |
148,504.19 |
1,798.80 |
1000.0000 |
833.3333 |
833.3333 |
27895507 B |
89,408.68 |
core-ubuntu-22.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.093 μs |
0.0015 μs |
0.0012 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.108 μs |
0.0117 μs |
0.0109 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.087 μs |
0.0129 μs |
0.0120 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
91.98 ns |
0.044 ns |
0.037 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
112.08 ns |
0.140 ns |
0.131 ns |
1.22 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
100.42 ns |
0.065 ns |
0.061 ns |
1.09 |
- |
- |
0.00 |
| SetInstanceStringField |
681.92 ns |
1.031 ns |
0.914 ns |
7.41 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
105.54 ns |
0.029 ns |
0.026 ns |
1.15 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
107.96 ns |
0.094 ns |
0.088 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
95.70 ns |
0.032 ns |
0.030 ns |
1.04 |
- |
- |
0.00 |
| SetStaticStringField |
681.70 ns |
1.127 ns |
0.999 ns |
7.41 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
99.11 ns |
0.092 ns |
0.087 ns |
1.08 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
309.1 ns |
0.18 ns |
0.16 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
308.6 ns |
0.20 ns |
0.18 ns |
1.00 |
- |
- |
NA |
| InvokeStaticWithFeedback |
569.2 ns |
0.27 ns |
0.24 ns |
1.84 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
317.8 ns |
0.95 ns |
0.89 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
561.9 ns |
0.57 ns |
0.51 ns |
1.82 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
2.742 μs |
0.0522 μs |
0.0489 μs |
1.00 |
0.02 |
0.0076 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,092.5 ns |
9.27 ns |
8.67 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,065.5 ns |
10.22 ns |
9.56 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,397.9 ns |
11.54 ns |
10.79 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
6,069.0 ns |
102.60 ns |
95.98 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
460.1 ns |
2.83 ns |
2.21 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
463.3 ns |
0.52 ns |
0.41 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
723.0 ns |
8.12 ns |
6.34 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,213.5 ns |
51.51 ns |
48.18 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
599.09 ns |
1.529 ns |
1.355 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
604.44 ns |
1.247 ns |
1.167 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
810.52 ns |
8.340 ns |
7.801 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,784.05 ns |
49.292 ns |
46.108 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
43.90 ns |
0.481 ns |
0.450 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
44.67 ns |
0.027 ns |
0.025 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
257.73 ns |
0.361 ns |
0.338 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
4,146.46 ns |
40.208 ns |
33.575 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
543.9 ns |
0.68 ns |
0.57 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,214.8 ns |
20.90 ns |
19.55 ns |
13.26 |
0.04 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,150.1 ns |
2.28 ns |
2.14 ns |
2.11 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,146.7 ns |
1.47 ns |
1.31 ns |
2.11 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,942.1 ns |
32.91 ns |
30.79 ns |
16.44 |
0.06 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
552.2 ns |
0.37 ns |
0.32 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
570,600.9 ns |
891.81 ns |
834.20 ns |
1,033.38 |
1.58 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,875.6 ns |
2.49 ns |
2.08 ns |
3.40 |
0.00 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,866.3 ns |
3.86 ns |
3.22 ns |
3.38 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
735,187.1 ns |
726.62 ns |
644.13 ns |
1,331.45 |
1.36 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
552.5 ns |
0.33 ns |
0.29 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,128,285.1 ns |
175,193.16 ns |
163,875.79 ns |
107,013.70 |
292.23 |
250.0000 |
125.0000 |
125.0000 |
16001347 B |
51,286.37 |
| InvokeIntArrayFixed |
100000 |
60,898.2 ns |
149.86 ns |
132.85 ns |
110.22 |
0.24 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,827.0 ns |
338.79 ns |
300.33 ns |
110.09 |
0.53 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,754,423.3 ns |
1,644,016.89 ns |
1,537,814.42 ns |
149,773.62 |
2,696.33 |
666.6667 |
500.0000 |
500.0000 |
27894008 B |
89,403.87 |
core-ubuntu-22.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.046 μs |
0.0112 μs |
0.0099 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.059 μs |
0.0106 μs |
0.0100 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.055 μs |
0.0106 μs |
0.0094 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
94.53 ns |
0.028 ns |
0.025 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
110.33 ns |
0.031 ns |
0.028 ns |
1.17 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
103.76 ns |
0.013 ns |
0.012 ns |
1.10 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
682.73 ns |
0.994 ns |
0.930 ns |
7.22 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
107.16 ns |
0.046 ns |
0.041 ns |
1.13 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
107.63 ns |
0.065 ns |
0.051 ns |
1.14 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
97.95 ns |
0.042 ns |
0.037 ns |
1.04 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
680.05 ns |
2.269 ns |
2.122 ns |
7.19 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
101.27 ns |
0.053 ns |
0.050 ns |
1.07 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
311.7 ns |
0.15 ns |
0.14 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
324.5 ns |
0.46 ns |
0.43 ns |
1.04 |
- |
- |
NA |
| InvokeStaticWithFeedback |
545.5 ns |
0.62 ns |
0.55 ns |
1.75 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
324.0 ns |
0.13 ns |
0.12 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
557.0 ns |
0.31 ns |
0.28 ns |
1.79 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.303 μs |
0.0022 μs |
0.0021 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,040.2 ns |
6.47 ns |
6.05 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,042.0 ns |
7.27 ns |
6.45 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,296.5 ns |
8.96 ns |
8.38 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,012.9 ns |
42.99 ns |
40.21 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
448.8 ns |
0.62 ns |
0.58 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
455.2 ns |
2.26 ns |
2.12 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
680.7 ns |
2.58 ns |
2.02 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,118.4 ns |
58.01 ns |
54.26 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
588.38 ns |
0.275 ns |
0.244 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
587.73 ns |
1.676 ns |
1.567 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
794.37 ns |
1.370 ns |
1.144 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,085.61 ns |
19.599 ns |
18.333 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
46.66 ns |
0.922 ns |
1.097 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
44.97 ns |
0.672 ns |
0.774 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
259.01 ns |
0.389 ns |
0.345 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,737.72 ns |
31.720 ns |
28.119 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
562.0 ns |
0.46 ns |
0.41 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,454.0 ns |
32.55 ns |
28.86 ns |
13.26 |
0.05 |
0.0153 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,163.1 ns |
1.57 ns |
1.39 ns |
2.07 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,227.7 ns |
6.51 ns |
6.09 ns |
2.18 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,753.3 ns |
47.50 ns |
44.43 ns |
17.35 |
0.08 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
573.3 ns |
0.55 ns |
0.49 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
561,613.6 ns |
1,343.00 ns |
1,256.25 ns |
979.54 |
2.27 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,878.7 ns |
8.02 ns |
7.51 ns |
3.28 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,898.6 ns |
7.99 ns |
7.48 ns |
3.31 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
739,201.1 ns |
2,225.33 ns |
1,858.25 ns |
1,289.28 |
3.30 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
561.7 ns |
0.79 ns |
0.70 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,969,401.3 ns |
173,910.53 ns |
162,676.01 ns |
104,987.87 |
307.30 |
333.3333 |
222.2222 |
222.2222 |
16001424 B |
51,286.62 |
| InvokeIntArrayFixed |
100000 |
60,969.3 ns |
586.84 ns |
548.93 ns |
108.55 |
0.96 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,196.1 ns |
679.05 ns |
601.96 ns |
108.95 |
1.04 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,598,668.9 ns |
1,554,454.93 ns |
1,377,983.80 ns |
145,276.54 |
2,376.51 |
666.6667 |
500.0000 |
500.0000 |
27894008 B |
89,403.87 |
core-ubuntu-22.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.076 μs |
0.0077 μs |
0.0072 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.087 μs |
0.0080 μs |
0.0075 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.090 μs |
0.0104 μs |
0.0097 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
99.10 ns |
0.056 ns |
0.047 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
117.10 ns |
0.177 ns |
0.157 ns |
1.18 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
108.80 ns |
0.049 ns |
0.046 ns |
1.10 |
- |
- |
0.00 |
| SetInstanceStringField |
679.33 ns |
0.999 ns |
0.935 ns |
6.85 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
110.94 ns |
0.041 ns |
0.035 ns |
1.12 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
111.01 ns |
0.042 ns |
0.035 ns |
1.12 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
98.45 ns |
0.031 ns |
0.029 ns |
0.99 |
- |
- |
0.00 |
| SetStaticStringField |
663.12 ns |
1.127 ns |
1.054 ns |
6.69 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
106.86 ns |
0.048 ns |
0.043 ns |
1.08 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
310.6 ns |
0.15 ns |
0.14 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
313.3 ns |
0.38 ns |
0.35 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
551.6 ns |
0.30 ns |
0.27 ns |
1.78 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
323.6 ns |
0.15 ns |
0.13 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
567.2 ns |
0.30 ns |
0.25 ns |
1.83 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.478 μs |
0.0057 μs |
0.0054 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,061.6 ns |
1.46 ns |
1.14 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,060.1 ns |
8.17 ns |
7.24 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
2,079.9 ns |
32.25 ns |
26.93 ns |
- |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,949.2 ns |
104.10 ns |
97.37 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
462.7 ns |
1.07 ns |
0.84 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
469.3 ns |
1.51 ns |
1.26 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
1,127.8 ns |
21.90 ns |
23.43 ns |
- |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,134.8 ns |
83.90 ns |
74.38 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
595.61 ns |
0.880 ns |
0.687 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
589.42 ns |
1.131 ns |
0.883 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
803.64 ns |
5.309 ns |
4.966 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,432.35 ns |
22.516 ns |
22.113 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
42.62 ns |
0.438 ns |
0.410 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
41.35 ns |
0.035 ns |
0.033 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
256.53 ns |
0.588 ns |
0.550 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,788.95 ns |
31.546 ns |
38.741 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
560.8 ns |
0.39 ns |
0.34 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,976.7 ns |
4.14 ns |
3.46 ns |
12.44 |
0.01 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,181.6 ns |
1.07 ns |
0.95 ns |
2.11 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,200.1 ns |
1.05 ns |
0.93 ns |
2.14 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,500.7 ns |
38.19 ns |
33.85 ns |
16.94 |
0.06 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
550.0 ns |
0.36 ns |
0.32 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
553,215.2 ns |
706.59 ns |
590.03 ns |
1,005.91 |
1.18 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,772.1 ns |
10.12 ns |
8.97 ns |
3.22 |
0.02 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,784.6 ns |
5.48 ns |
5.12 ns |
3.24 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
736,941.8 ns |
485.54 ns |
405.45 ns |
1,339.98 |
1.03 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
568.8 ns |
0.34 ns |
0.30 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,707,461.6 ns |
169,710.30 ns |
158,747.12 ns |
101,454.03 |
275.29 |
333.3333 |
222.2222 |
222.2222 |
16001655 B |
51,287.36 |
| InvokeIntArrayFixed |
100000 |
45,339.3 ns |
450.09 ns |
375.85 ns |
79.71 |
0.64 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
45,321.5 ns |
233.12 ns |
194.67 ns |
79.68 |
0.33 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,171,035.9 ns |
547,151.45 ns |
511,805.81 ns |
142,704.75 |
874.46 |
666.6667 |
500.0000 |
500.0000 |
27894008 B |
89,403.87 |
core-ubuntu-22.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Median |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.086 μs |
0.0111 μs |
0.0104 μs |
1.078 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.091 μs |
0.0085 μs |
0.0080 μs |
1.091 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.080 μs |
0.0096 μs |
0.0090 μs |
1.074 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
92.80 ns |
0.042 ns |
0.037 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
109.43 ns |
0.042 ns |
0.035 ns |
1.18 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
99.10 ns |
0.017 ns |
0.014 ns |
1.07 |
- |
- |
0.00 |
| SetInstanceStringField |
669.91 ns |
0.633 ns |
0.561 ns |
7.22 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
106.93 ns |
0.048 ns |
0.042 ns |
1.15 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
110.42 ns |
0.074 ns |
0.066 ns |
1.19 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
98.42 ns |
0.108 ns |
0.096 ns |
1.06 |
- |
- |
0.00 |
| SetStaticStringField |
666.34 ns |
0.725 ns |
0.642 ns |
7.18 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
102.46 ns |
0.085 ns |
0.080 ns |
1.10 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
303.1 ns |
0.20 ns |
0.18 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
310.5 ns |
0.32 ns |
0.29 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
555.8 ns |
0.44 ns |
0.39 ns |
1.83 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
314.4 ns |
0.30 ns |
0.26 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
561.2 ns |
0.54 ns |
0.48 ns |
1.85 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.310 μs |
0.0012 μs |
0.0010 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,051.5 ns |
6.83 ns |
6.06 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,071.9 ns |
7.06 ns |
6.61 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,299.1 ns |
7.56 ns |
6.70 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,334.9 ns |
37.45 ns |
35.03 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
447.2 ns |
0.23 ns |
0.21 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
467.6 ns |
0.32 ns |
0.25 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
687.2 ns |
2.34 ns |
1.83 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,600.7 ns |
43.23 ns |
40.44 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
594.78 ns |
0.999 ns |
0.834 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
596.62 ns |
2.529 ns |
2.365 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
827.97 ns |
1.014 ns |
0.792 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,208.22 ns |
27.070 ns |
25.321 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
43.77 ns |
0.023 ns |
0.022 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.23 ns |
0.018 ns |
0.015 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
261.27 ns |
0.228 ns |
0.202 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,459.21 ns |
8.425 ns |
7.468 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
542.0 ns |
0.54 ns |
0.48 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,040.4 ns |
15.07 ns |
13.36 ns |
12.99 |
0.03 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,157.4 ns |
2.23 ns |
1.98 ns |
2.14 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,158.0 ns |
1.65 ns |
1.55 ns |
2.14 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,688.7 ns |
23.44 ns |
21.92 ns |
16.03 |
0.04 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
560.1 ns |
0.39 ns |
0.35 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
549,999.3 ns |
965.43 ns |
903.06 ns |
981.97 |
1.67 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,669.5 ns |
8.00 ns |
7.48 ns |
2.98 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,735.8 ns |
5.00 ns |
4.67 ns |
3.10 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
714,251.0 ns |
576.89 ns |
481.73 ns |
1,275.22 |
1.13 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
547.1 ns |
0.60 ns |
0.53 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,599,775.1 ns |
176,215.23 ns |
156,210.21 ns |
107,100.37 |
293.32 |
333.3333 |
222.2222 |
222.2222 |
16002020 B |
51,288.53 |
| InvokeIntArrayFixed |
100000 |
44,442.1 ns |
316.19 ns |
280.29 ns |
81.23 |
0.50 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
44,241.9 ns |
281.49 ns |
249.53 ns |
80.86 |
0.45 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,942,794.5 ns |
747,893.02 ns |
699,579.60 ns |
149,763.43 |
1,246.03 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-22.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.054 μs |
0.0034 μs |
0.0028 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.058 μs |
0.0122 μs |
0.0114 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.056 μs |
0.0103 μs |
0.0096 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
94.56 ns |
0.031 ns |
0.028 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
111.94 ns |
0.040 ns |
0.036 ns |
1.18 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
105.41 ns |
0.015 ns |
0.014 ns |
1.11 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
667.78 ns |
1.208 ns |
1.130 ns |
7.06 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
109.41 ns |
0.064 ns |
0.057 ns |
1.16 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
109.38 ns |
0.028 ns |
0.025 ns |
1.16 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
98.87 ns |
0.012 ns |
0.011 ns |
1.05 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
671.54 ns |
2.627 ns |
2.458 ns |
7.10 |
0.03 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
101.69 ns |
0.039 ns |
0.034 ns |
1.08 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
312.4 ns |
0.37 ns |
0.34 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
312.9 ns |
0.57 ns |
0.53 ns |
1.00 |
- |
- |
NA |
| InvokeStaticWithFeedback |
546.8 ns |
0.33 ns |
0.29 ns |
1.75 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
322.2 ns |
0.15 ns |
0.14 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
550.4 ns |
0.41 ns |
0.36 ns |
1.76 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.339 μs |
0.0029 μs |
0.0028 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,033.4 ns |
7.50 ns |
7.02 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,046.6 ns |
5.64 ns |
5.00 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,252.5 ns |
8.12 ns |
7.59 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,956.8 ns |
47.28 ns |
44.23 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
454.5 ns |
4.20 ns |
3.93 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
429.5 ns |
0.29 ns |
0.24 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
675.2 ns |
1.81 ns |
1.69 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,279.9 ns |
20.05 ns |
18.76 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
582.76 ns |
0.384 ns |
0.321 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
577.89 ns |
0.286 ns |
0.238 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
780.13 ns |
2.436 ns |
1.902 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,141.62 ns |
28.244 ns |
26.419 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
44.27 ns |
0.867 ns |
1.033 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
44.14 ns |
0.817 ns |
0.802 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
260.80 ns |
0.440 ns |
0.390 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,414.65 ns |
16.296 ns |
15.243 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
556.8 ns |
0.85 ns |
0.67 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,182.8 ns |
20.35 ns |
19.03 ns |
12.90 |
0.04 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,158.3 ns |
2.59 ns |
2.16 ns |
2.08 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,151.0 ns |
1.47 ns |
1.37 ns |
2.07 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,346.7 ns |
40.30 ns |
33.65 ns |
16.79 |
0.06 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
553.5 ns |
0.41 ns |
0.34 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
555,046.0 ns |
1,077.07 ns |
954.80 ns |
1,002.76 |
1.77 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,636.6 ns |
3.57 ns |
3.16 ns |
2.96 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,739.8 ns |
6.44 ns |
5.71 ns |
3.14 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
738,646.4 ns |
1,005.22 ns |
784.81 ns |
1,334.45 |
1.58 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
575.5 ns |
0.52 ns |
0.46 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,223,883.4 ns |
274,941.43 ns |
257,180.38 ns |
101,174.87 |
439.90 |
333.3333 |
222.2222 |
222.2222 |
16001279 B |
51,286.15 |
| InvokeIntArrayFixed |
100000 |
45,485.1 ns |
192.68 ns |
170.80 ns |
79.04 |
0.29 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
45,451.0 ns |
150.89 ns |
133.76 ns |
78.98 |
0.23 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,922,394.1 ns |
1,124,175.80 ns |
996,552.57 ns |
142,355.46 |
1,676.65 |
1166.6667 |
1000.0000 |
1000.0000 |
27897003 B |
89,413.47 |
core-ubuntu-22.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.061 μs |
0.0075 μs |
0.0063 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.050 μs |
0.0019 μs |
0.0015 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.054 μs |
0.0092 μs |
0.0086 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
94.09 ns |
0.023 ns |
0.019 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
118.43 ns |
0.029 ns |
0.026 ns |
1.26 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
110.32 ns |
0.014 ns |
0.011 ns |
1.17 |
- |
- |
0.00 |
| SetInstanceStringField |
666.21 ns |
1.217 ns |
1.078 ns |
7.08 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
109.37 ns |
0.033 ns |
0.029 ns |
1.16 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
112.62 ns |
0.024 ns |
0.020 ns |
1.20 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
100.59 ns |
0.012 ns |
0.011 ns |
1.07 |
- |
- |
0.00 |
| SetStaticStringField |
661.24 ns |
0.958 ns |
0.896 ns |
7.03 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
108.24 ns |
0.041 ns |
0.036 ns |
1.15 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
308.6 ns |
0.14 ns |
0.12 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
313.7 ns |
0.13 ns |
0.12 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
549.3 ns |
0.28 ns |
0.23 ns |
1.78 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
325.6 ns |
0.17 ns |
0.16 ns |
1.06 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
561.8 ns |
0.27 ns |
0.24 ns |
1.82 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.305 μs |
0.0035 μs |
0.0033 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Median |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,077.8 ns |
9.84 ns |
9.20 ns |
1,072.1 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,036.4 ns |
6.53 ns |
6.11 ns |
1,031.8 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,343.6 ns |
17.97 ns |
16.81 ns |
1,340.0 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
7,076.9 ns |
140.26 ns |
280.12 ns |
6,956.4 ns |
- |
760 B |
| PredicateRoundTrip |
True |
False |
False |
442.6 ns |
0.25 ns |
0.20 ns |
442.6 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
446.8 ns |
0.42 ns |
0.38 ns |
446.8 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
683.1 ns |
2.02 ns |
1.57 ns |
682.3 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,106.7 ns |
41.35 ns |
36.66 ns |
5,106.8 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
593.56 ns |
1.695 ns |
1.324 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
585.71 ns |
0.973 ns |
0.760 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
795.25 ns |
1.673 ns |
1.306 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,276.95 ns |
24.612 ns |
19.215 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
46.06 ns |
0.520 ns |
0.487 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
44.82 ns |
0.479 ns |
0.424 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
257.24 ns |
0.308 ns |
0.273 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,503.93 ns |
22.425 ns |
18.726 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
551.4 ns |
0.42 ns |
0.37 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,145.4 ns |
17.42 ns |
16.30 ns |
12.96 |
0.03 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,125.2 ns |
2.26 ns |
1.89 ns |
2.04 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,143.0 ns |
2.01 ns |
1.68 ns |
2.07 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,220.9 ns |
35.26 ns |
31.25 ns |
16.72 |
0.06 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
552.3 ns |
0.51 ns |
0.45 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
570,994.7 ns |
1,668.50 ns |
1,560.71 ns |
1,033.88 |
2.85 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,898.9 ns |
6.07 ns |
5.68 ns |
3.44 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,890.8 ns |
4.80 ns |
4.26 ns |
3.42 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
746,653.7 ns |
1,417.46 ns |
1,183.64 ns |
1,351.94 |
2.32 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
547.6 ns |
0.28 ns |
0.25 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,619,371.7 ns |
247,594.13 ns |
219,485.75 ns |
107,054.39 |
390.12 |
250.0000 |
125.0000 |
125.0000 |
16000509 B |
51,283.68 |
| InvokeIntArrayFixed |
100000 |
62,140.7 ns |
432.61 ns |
404.67 ns |
113.49 |
0.72 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,864.5 ns |
417.09 ns |
348.29 ns |
112.98 |
0.61 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,974,354.9 ns |
447,226.53 ns |
373,454.41 ns |
149,706.73 |
660.40 |
666.6667 |
500.0000 |
500.0000 |
27894008 B |
89,403.87 |
core-ubuntu-22.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.099 μs |
0.0031 μs |
0.0026 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.091 μs |
0.0016 μs |
0.0013 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.094 μs |
0.0010 μs |
0.0007 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
90.73 ns |
0.020 ns |
0.018 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
112.81 ns |
0.026 ns |
0.023 ns |
1.24 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
112.77 ns |
0.037 ns |
0.035 ns |
1.24 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
681.64 ns |
1.653 ns |
1.546 ns |
7.51 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
113.64 ns |
0.239 ns |
0.224 ns |
1.25 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
117.26 ns |
0.058 ns |
0.048 ns |
1.29 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
106.98 ns |
0.016 ns |
0.015 ns |
1.18 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
679.79 ns |
1.451 ns |
1.287 ns |
7.49 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
102.73 ns |
0.027 ns |
0.022 ns |
1.13 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
381.9 ns |
0.24 ns |
0.23 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
390.2 ns |
0.18 ns |
0.17 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
553.3 ns |
0.44 ns |
0.39 ns |
1.45 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
375.6 ns |
0.82 ns |
0.77 ns |
0.98 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
553.2 ns |
0.28 ns |
0.25 ns |
1.45 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.294 μs |
0.0032 μs |
0.0030 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,063.8 ns |
7.93 ns |
7.42 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,065.1 ns |
7.94 ns |
7.43 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,318.2 ns |
5.74 ns |
4.79 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,822.1 ns |
15.27 ns |
14.29 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
457.2 ns |
0.58 ns |
0.51 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
457.4 ns |
0.67 ns |
0.63 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
680.7 ns |
0.27 ns |
0.23 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,205.6 ns |
17.76 ns |
16.61 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
598.57 ns |
1.368 ns |
1.280 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
597.73 ns |
1.233 ns |
1.093 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
822.27 ns |
4.894 ns |
4.578 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,215.56 ns |
10.213 ns |
9.553 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
50.63 ns |
0.668 ns |
0.625 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.07 ns |
0.447 ns |
0.418 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
273.46 ns |
0.554 ns |
0.519 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,471.85 ns |
10.777 ns |
10.081 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
546.8 ns |
0.43 ns |
0.38 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,869.0 ns |
20.55 ns |
19.22 ns |
12.56 |
0.04 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,132.6 ns |
1.89 ns |
1.76 ns |
2.07 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,128.5 ns |
1.22 ns |
1.02 ns |
2.06 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,166.3 ns |
51.24 ns |
47.93 ns |
16.76 |
0.09 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
544.0 ns |
0.34 ns |
0.30 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
547,878.7 ns |
1,169.51 ns |
1,093.96 ns |
1,007.05 |
2.02 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,860.2 ns |
3.29 ns |
2.91 ns |
3.42 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,886.0 ns |
3.17 ns |
2.81 ns |
3.47 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
726,232.7 ns |
936.79 ns |
731.39 ns |
1,334.88 |
1.47 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
561.7 ns |
0.73 ns |
0.65 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,542,851.3 ns |
230,511.38 ns |
215,620.49 ns |
102,445.66 |
388.79 |
333.3333 |
222.2222 |
222.2222 |
16001197 B |
51,285.89 |
| InvokeIntArrayFixed |
100000 |
60,764.8 ns |
271.62 ns |
240.79 ns |
108.18 |
0.43 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,858.3 ns |
254.76 ns |
225.84 ns |
108.35 |
0.41 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,545,587.9 ns |
811,781.74 ns |
759,341.14 ns |
146,958.96 |
1,319.31 |
1000.0000 |
833.3333 |
833.3333 |
27896893 B |
89,413.12 |
core-ubuntu-22.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.068 μs |
0.0136 μs |
0.0127 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.088 μs |
0.0120 μs |
0.0112 μs |
1.02 |
0.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.069 μs |
0.0057 μs |
0.0050 μs |
1.00 |
0.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
89.18 ns |
0.032 ns |
0.029 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
101.12 ns |
0.023 ns |
0.020 ns |
1.13 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
95.63 ns |
0.031 ns |
0.027 ns |
1.07 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
667.98 ns |
1.658 ns |
1.551 ns |
7.49 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
97.68 ns |
0.027 ns |
0.024 ns |
1.10 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
100.04 ns |
0.028 ns |
0.025 ns |
1.12 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
89.34 ns |
0.012 ns |
0.009 ns |
1.00 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
662.92 ns |
1.253 ns |
1.172 ns |
7.43 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
97.31 ns |
0.048 ns |
0.043 ns |
1.09 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
297.8 ns |
0.15 ns |
0.14 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
298.8 ns |
0.20 ns |
0.19 ns |
1.00 |
- |
- |
NA |
| InvokeStaticWithFeedback |
552.6 ns |
0.34 ns |
0.28 ns |
1.86 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
309.9 ns |
0.30 ns |
0.26 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
550.1 ns |
0.56 ns |
0.50 ns |
1.85 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.327 μs |
0.0035 μs |
0.0033 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,025.8 ns |
7.80 ns |
7.29 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,019.4 ns |
7.67 ns |
7.17 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,279.9 ns |
3.60 ns |
3.37 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,622.6 ns |
52.14 ns |
48.77 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
452.9 ns |
2.35 ns |
2.20 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
440.9 ns |
0.40 ns |
0.38 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
689.3 ns |
2.62 ns |
2.05 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,056.4 ns |
69.77 ns |
65.27 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
572.12 ns |
2.818 ns |
2.498 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
565.45 ns |
0.366 ns |
0.286 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
780.73 ns |
5.404 ns |
5.055 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,254.38 ns |
22.476 ns |
21.024 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
43.72 ns |
0.862 ns |
0.846 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.11 ns |
0.623 ns |
0.583 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
257.92 ns |
0.451 ns |
0.421 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,510.08 ns |
29.386 ns |
27.488 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
538.4 ns |
0.36 ns |
0.32 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,891.1 ns |
9.29 ns |
8.24 ns |
12.80 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,120.7 ns |
1.50 ns |
1.25 ns |
2.08 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,136.7 ns |
3.01 ns |
2.81 ns |
2.11 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,539.2 ns |
23.55 ns |
22.03 ns |
15.86 |
0.04 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
547.6 ns |
0.26 ns |
0.22 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
548,540.8 ns |
1,068.73 ns |
999.69 ns |
1,001.68 |
1.81 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,842.1 ns |
9.05 ns |
8.47 ns |
3.36 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,848.0 ns |
8.11 ns |
7.19 ns |
3.37 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
725,530.4 ns |
1,256.76 ns |
1,049.45 ns |
1,324.87 |
1.91 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
538.4 ns |
0.36 ns |
0.30 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,442,446.0 ns |
262,573.84 ns |
245,611.73 ns |
106,688.30 |
445.46 |
333.3333 |
222.2222 |
222.2222 |
16001344 B |
51,286.36 |
| InvokeIntArrayFixed |
100000 |
60,069.0 ns |
436.14 ns |
407.97 ns |
111.57 |
0.74 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,025.0 ns |
558.40 ns |
522.33 ns |
111.48 |
0.94 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,306,930.8 ns |
858,136.44 ns |
802,701.36 ns |
151,011.99 |
1,446.24 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-22.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.050 μs |
0.0108 μs |
0.0101 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.056 μs |
0.0091 μs |
0.0085 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.052 μs |
0.0011 μs |
0.0009 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
94.81 ns |
0.025 ns |
0.021 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
113.12 ns |
0.061 ns |
0.057 ns |
1.19 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
106.98 ns |
0.009 ns |
0.008 ns |
1.13 |
- |
- |
0.00 |
| SetInstanceStringField |
671.13 ns |
0.989 ns |
0.925 ns |
7.08 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
108.84 ns |
0.028 ns |
0.025 ns |
1.15 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
110.19 ns |
0.034 ns |
0.027 ns |
1.16 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
99.18 ns |
0.040 ns |
0.037 ns |
1.05 |
- |
- |
0.00 |
| SetStaticStringField |
662.49 ns |
1.040 ns |
0.922 ns |
6.99 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
106.36 ns |
0.050 ns |
0.044 ns |
1.12 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
304.9 ns |
0.18 ns |
0.16 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
315.2 ns |
0.18 ns |
0.17 ns |
1.03 |
- |
- |
NA |
| InvokeStaticWithFeedback |
538.1 ns |
0.42 ns |
0.37 ns |
1.77 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
321.3 ns |
0.13 ns |
0.12 ns |
1.05 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
548.7 ns |
0.33 ns |
0.28 ns |
1.80 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.310 μs |
0.0040 μs |
0.0037 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,014.8 ns |
6.43 ns |
6.02 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,021.1 ns |
5.29 ns |
4.95 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,255.1 ns |
6.88 ns |
6.44 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,746.4 ns |
34.51 ns |
32.29 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
435.7 ns |
0.33 ns |
0.29 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
441.3 ns |
4.11 ns |
3.84 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
676.3 ns |
0.94 ns |
0.73 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,063.0 ns |
37.13 ns |
31.00 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
570.16 ns |
0.856 ns |
0.715 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
573.65 ns |
1.239 ns |
1.098 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
789.57 ns |
6.530 ns |
6.108 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,010.63 ns |
11.455 ns |
10.715 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
46.27 ns |
0.886 ns |
1.020 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
46.24 ns |
0.908 ns |
1.148 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
256.46 ns |
0.325 ns |
0.304 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,511.06 ns |
35.448 ns |
33.158 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
568.0 ns |
0.46 ns |
0.38 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,919.3 ns |
9.95 ns |
8.82 ns |
12.18 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,165.9 ns |
2.16 ns |
1.92 ns |
2.05 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,173.8 ns |
1.95 ns |
1.72 ns |
2.07 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,766.0 ns |
33.93 ns |
30.08 ns |
15.43 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
567.2 ns |
0.29 ns |
0.26 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
546,623.5 ns |
1,090.08 ns |
1,019.66 ns |
963.77 |
1.79 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,872.8 ns |
7.74 ns |
6.86 ns |
3.30 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,855.1 ns |
3.51 ns |
3.11 ns |
3.27 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
721,395.1 ns |
1,268.41 ns |
1,059.18 ns |
1,271.92 |
1.89 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
565.4 ns |
0.34 ns |
0.28 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,075,953.5 ns |
228,834.29 ns |
214,051.74 ns |
100,950.95 |
369.89 |
333.3333 |
222.2222 |
222.2222 |
16001826 B |
51,287.90 |
| InvokeIntArrayFixed |
100000 |
60,610.7 ns |
307.40 ns |
272.50 ns |
107.20 |
0.47 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,304.2 ns |
238.59 ns |
211.50 ns |
106.66 |
0.37 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,192,295.8 ns |
823,863.47 ns |
730,333.51 ns |
145,374.54 |
1,250.15 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-22.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.068 μs |
0.0112 μs |
0.0105 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.076 μs |
0.0085 μs |
0.0079 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.068 μs |
0.0074 μs |
0.0069 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
89.74 ns |
0.033 ns |
0.030 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
113.30 ns |
0.030 ns |
0.027 ns |
1.26 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
101.80 ns |
0.015 ns |
0.013 ns |
1.13 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
659.69 ns |
1.066 ns |
0.997 ns |
7.35 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
106.74 ns |
0.015 ns |
0.013 ns |
1.19 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
109.98 ns |
0.039 ns |
0.033 ns |
1.23 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
98.37 ns |
0.011 ns |
0.009 ns |
1.10 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
662.72 ns |
1.817 ns |
1.700 ns |
7.38 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
112.56 ns |
0.047 ns |
0.041 ns |
1.25 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
300.5 ns |
0.20 ns |
0.18 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
303.7 ns |
0.21 ns |
0.20 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
547.1 ns |
0.33 ns |
0.27 ns |
1.82 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
319.7 ns |
0.15 ns |
0.14 ns |
1.06 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
566.9 ns |
0.48 ns |
0.43 ns |
1.89 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.336 μs |
0.0038 μs |
0.0036 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,035.2 ns |
7.47 ns |
6.99 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,030.7 ns |
7.91 ns |
7.40 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,302.4 ns |
12.58 ns |
11.15 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,599.0 ns |
107.17 ns |
105.26 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
457.1 ns |
0.21 ns |
0.16 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
461.4 ns |
1.22 ns |
0.95 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
691.0 ns |
1.11 ns |
0.87 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,845.8 ns |
47.15 ns |
41.80 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
578.82 ns |
0.591 ns |
0.462 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
572.82 ns |
0.677 ns |
0.528 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
791.61 ns |
4.806 ns |
4.496 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,103.08 ns |
12.566 ns |
13.967 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
41.45 ns |
0.389 ns |
0.364 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.62 ns |
0.120 ns |
0.107 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
260.94 ns |
0.381 ns |
0.357 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,303.52 ns |
17.282 ns |
19.209 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
566.3 ns |
0.30 ns |
0.27 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,956.3 ns |
12.44 ns |
10.38 ns |
12.28 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,147.0 ns |
1.44 ns |
1.28 ns |
2.03 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,152.6 ns |
1.07 ns |
0.89 ns |
2.04 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,936.0 ns |
33.59 ns |
31.42 ns |
15.78 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
558.8 ns |
0.54 ns |
0.47 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
556,567.5 ns |
896.61 ns |
838.69 ns |
996.06 |
1.67 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,905.9 ns |
7.60 ns |
7.11 ns |
3.41 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,888.2 ns |
8.66 ns |
8.10 ns |
3.38 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
733,885.2 ns |
1,348.66 ns |
1,052.95 ns |
1,313.40 |
2.11 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
567.5 ns |
0.57 ns |
0.51 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,688,799.4 ns |
167,731.70 ns |
156,896.34 ns |
101,646.01 |
281.81 |
333.3333 |
222.2222 |
222.2222 |
16000932 B |
51,285.04 |
| InvokeIntArrayFixed |
100000 |
61,096.7 ns |
220.44 ns |
195.41 ns |
107.65 |
0.35 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,706.2 ns |
216.97 ns |
181.18 ns |
106.96 |
0.32 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,490,940.3 ns |
706,709.56 ns |
661,056.56 ns |
147,108.64 |
1,135.13 |
1000.0000 |
833.3333 |
833.3333 |
27896893 B |
89,413.12 |
core-ubuntu-22.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.096 μs |
0.0125 μs |
0.0117 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.079 μs |
0.0103 μs |
0.0097 μs |
0.98 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.080 μs |
0.0110 μs |
0.0103 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
92.06 ns |
0.027 ns |
0.023 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
109.59 ns |
0.084 ns |
0.079 ns |
1.19 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
102.60 ns |
0.015 ns |
0.014 ns |
1.11 |
- |
- |
0.00 |
| SetInstanceStringField |
667.58 ns |
0.878 ns |
0.822 ns |
7.25 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
106.89 ns |
0.042 ns |
0.037 ns |
1.16 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
107.46 ns |
0.036 ns |
0.032 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
95.28 ns |
0.023 ns |
0.022 ns |
1.03 |
- |
- |
0.00 |
| SetStaticStringField |
660.44 ns |
1.041 ns |
0.973 ns |
7.17 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
105.54 ns |
0.067 ns |
0.063 ns |
1.15 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
297.7 ns |
0.28 ns |
0.27 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
304.4 ns |
0.32 ns |
0.30 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
564.5 ns |
0.49 ns |
0.43 ns |
1.90 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
306.9 ns |
0.51 ns |
0.48 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
565.2 ns |
0.32 ns |
0.28 ns |
1.90 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.297 μs |
0.0022 μs |
0.0020 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,075.9 ns |
13.02 ns |
12.18 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,059.9 ns |
6.63 ns |
6.20 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,330.7 ns |
9.36 ns |
8.75 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,351.7 ns |
51.18 ns |
47.87 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
449.3 ns |
0.31 ns |
0.24 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
460.1 ns |
1.84 ns |
1.63 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
693.4 ns |
1.21 ns |
1.01 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,627.6 ns |
41.52 ns |
38.84 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
591.28 ns |
0.887 ns |
0.786 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
597.24 ns |
0.380 ns |
0.317 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
807.72 ns |
1.167 ns |
1.035 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,371.77 ns |
41.112 ns |
38.456 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
44.74 ns |
0.868 ns |
0.853 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
45.07 ns |
0.856 ns |
0.841 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
261.40 ns |
0.478 ns |
0.448 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,584.25 ns |
47.760 ns |
44.675 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
532.9 ns |
0.67 ns |
0.59 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,233.8 ns |
20.93 ns |
19.58 ns |
13.57 |
0.04 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,158.2 ns |
1.32 ns |
1.17 ns |
2.17 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,153.4 ns |
2.12 ns |
1.88 ns |
2.16 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,937.9 ns |
27.19 ns |
25.43 ns |
16.77 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
539.7 ns |
0.36 ns |
0.32 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
552,675.8 ns |
825.17 ns |
771.87 ns |
1,024.11 |
1.50 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,868.2 ns |
3.86 ns |
3.42 ns |
3.46 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,871.9 ns |
5.97 ns |
5.58 ns |
3.47 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
722,833.1 ns |
589.29 ns |
492.09 ns |
1,339.42 |
1.16 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
543.5 ns |
0.17 ns |
0.15 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,174,756.5 ns |
243,261.69 ns |
227,547.13 ns |
107,034.74 |
406.47 |
333.3333 |
222.2222 |
222.2222 |
16001314 B |
51,286.26 |
| InvokeIntArrayFixed |
100000 |
60,933.8 ns |
418.71 ns |
391.66 ns |
112.11 |
0.70 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,387.4 ns |
186.26 ns |
165.11 ns |
111.11 |
0.30 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,836,848.7 ns |
603,365.86 ns |
564,388.80 ns |
152,410.09 |
1,006.44 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-22.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Median |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.077 μs |
0.0116 μs |
0.0108 μs |
1.068 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.065 μs |
0.0109 μs |
0.0102 μs |
1.058 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.057 μs |
0.0109 μs |
0.0102 μs |
1.051 μs |
0.98 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
95.78 ns |
0.043 ns |
0.038 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
110.62 ns |
0.028 ns |
0.025 ns |
1.16 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
106.78 ns |
0.704 ns |
0.659 ns |
1.11 |
- |
- |
0.00 |
| SetInstanceStringField |
659.81 ns |
1.180 ns |
1.046 ns |
6.89 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
108.63 ns |
0.041 ns |
0.036 ns |
1.13 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
108.22 ns |
0.032 ns |
0.026 ns |
1.13 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
99.39 ns |
0.059 ns |
0.052 ns |
1.04 |
- |
- |
0.00 |
| SetStaticStringField |
654.74 ns |
1.038 ns |
0.920 ns |
6.84 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
103.95 ns |
0.046 ns |
0.041 ns |
1.09 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
305.3 ns |
0.18 ns |
0.16 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
311.9 ns |
0.14 ns |
0.13 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
540.7 ns |
0.17 ns |
0.14 ns |
1.77 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
326.6 ns |
0.21 ns |
0.18 ns |
1.07 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
545.4 ns |
0.64 ns |
0.57 ns |
1.79 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
2.723 μs |
0.0521 μs |
0.0600 μs |
1.00 |
0.03 |
0.0076 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,043.4 ns |
4.52 ns |
4.23 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,035.9 ns |
8.26 ns |
7.73 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,281.6 ns |
8.18 ns |
7.65 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,961.5 ns |
26.28 ns |
24.58 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
442.2 ns |
0.26 ns |
0.23 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
446.1 ns |
0.33 ns |
0.29 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
677.5 ns |
0.49 ns |
0.39 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,182.3 ns |
16.94 ns |
15.85 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
584.79 ns |
2.276 ns |
2.129 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
576.65 ns |
0.845 ns |
0.706 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
790.90 ns |
8.243 ns |
7.710 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,143.28 ns |
21.651 ns |
19.193 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
46.65 ns |
0.034 ns |
0.032 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
45.53 ns |
0.889 ns |
0.832 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
269.63 ns |
0.357 ns |
0.298 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,652.01 ns |
26.606 ns |
24.887 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
558.4 ns |
0.64 ns |
0.57 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,927.3 ns |
16.83 ns |
14.92 ns |
12.41 |
0.03 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,134.5 ns |
2.56 ns |
2.13 ns |
2.03 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,155.3 ns |
1.45 ns |
1.28 ns |
2.07 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,908.8 ns |
29.44 ns |
27.54 ns |
15.96 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
543.8 ns |
0.58 ns |
0.48 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
557,136.0 ns |
1,174.80 ns |
1,041.43 ns |
1,024.50 |
2.05 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,854.9 ns |
7.61 ns |
7.11 ns |
3.41 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,854.9 ns |
12.46 ns |
11.66 ns |
3.41 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
729,705.9 ns |
1,683.23 ns |
1,405.57 ns |
1,341.83 |
2.74 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
553.1 ns |
1.27 ns |
1.19 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,960,861.2 ns |
219,393.27 ns |
205,220.60 ns |
106,610.14 |
422.13 |
333.3333 |
222.2222 |
222.2222 |
16002022 B |
51,288.53 |
| InvokeIntArrayFixed |
100000 |
60,771.7 ns |
636.48 ns |
595.36 ns |
109.88 |
1.07 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,061.5 ns |
743.96 ns |
695.90 ns |
110.41 |
1.24 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,083,006.8 ns |
822,481.53 ns |
729,108.45 ns |
148,418.47 |
1,310.27 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-22.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.065 μs |
0.0088 μs |
0.0082 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.068 μs |
0.0096 μs |
0.0090 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.064 μs |
0.0078 μs |
0.0073 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
93.97 ns |
0.035 ns |
0.031 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
117.39 ns |
0.028 ns |
0.022 ns |
1.25 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
111.47 ns |
0.019 ns |
0.018 ns |
1.19 |
- |
- |
0.00 |
| SetInstanceStringField |
675.39 ns |
0.809 ns |
0.717 ns |
7.19 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
108.59 ns |
0.043 ns |
0.038 ns |
1.16 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
110.76 ns |
0.065 ns |
0.061 ns |
1.18 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
101.14 ns |
0.040 ns |
0.036 ns |
1.08 |
- |
- |
0.00 |
| SetStaticStringField |
668.45 ns |
0.780 ns |
0.729 ns |
7.11 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
108.81 ns |
0.096 ns |
0.090 ns |
1.16 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
312.0 ns |
0.19 ns |
0.17 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
306.9 ns |
0.25 ns |
0.22 ns |
0.98 |
- |
- |
NA |
| InvokeStaticWithFeedback |
537.5 ns |
0.38 ns |
0.34 ns |
1.72 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
318.0 ns |
0.21 ns |
0.18 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
565.2 ns |
0.84 ns |
0.75 ns |
1.81 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.296 μs |
0.0014 μs |
0.0012 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,032.5 ns |
8.95 ns |
7.94 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,034.2 ns |
8.94 ns |
8.36 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,273.9 ns |
8.03 ns |
7.12 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
7,261.3 ns |
144.13 ns |
300.84 ns |
- |
760 B |
| PredicateRoundTrip |
True |
False |
False |
446.2 ns |
0.37 ns |
0.35 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
453.1 ns |
0.57 ns |
0.53 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
676.6 ns |
1.31 ns |
1.03 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,106.4 ns |
54.63 ns |
42.66 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
589.15 ns |
0.823 ns |
0.642 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
591.60 ns |
1.429 ns |
1.116 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
797.40 ns |
6.382 ns |
5.970 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,200.61 ns |
83.300 ns |
105.348 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
43.21 ns |
0.158 ns |
0.148 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.88 ns |
0.203 ns |
0.180 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
257.70 ns |
0.408 ns |
0.381 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,346.94 ns |
45.306 ns |
48.477 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
559.2 ns |
0.41 ns |
0.37 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,140.2 ns |
6.17 ns |
5.47 ns |
12.77 |
0.01 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,163.2 ns |
1.75 ns |
1.55 ns |
2.08 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,181.6 ns |
2.16 ns |
2.02 ns |
2.11 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,998.8 ns |
21.72 ns |
19.25 ns |
16.09 |
0.03 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
554.9 ns |
0.30 ns |
0.27 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
579,338.1 ns |
1,040.81 ns |
973.58 ns |
1,044.06 |
1.77 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,957.4 ns |
13.72 ns |
12.83 ns |
3.53 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,950.2 ns |
6.06 ns |
5.06 ns |
3.51 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
746,501.8 ns |
851.61 ns |
754.93 ns |
1,345.31 |
1.46 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
561.2 ns |
0.52 ns |
0.46 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,410,104.7 ns |
368,357.11 ns |
344,561.47 ns |
105,862.71 |
600.41 |
250.0000 |
125.0000 |
125.0000 |
16000900 B |
51,284.94 |
| InvokeIntArrayFixed |
100000 |
60,701.4 ns |
310.70 ns |
275.42 ns |
108.16 |
0.48 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,720.6 ns |
504.15 ns |
471.58 ns |
109.98 |
0.82 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,419,741.1 ns |
1,187,853.00 ns |
991,911.05 ns |
148,645.42 |
1,706.86 |
666.6667 |
500.0000 |
500.0000 |
27894008 B |
89,403.87 |
core-ubuntu-22.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.104 μs |
0.0008 μs |
0.0007 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.102 μs |
0.0031 μs |
0.0024 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.097 μs |
0.0008 μs |
0.0006 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
96.84 ns |
0.017 ns |
0.014 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
117.31 ns |
0.034 ns |
0.030 ns |
1.21 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
113.92 ns |
0.045 ns |
0.038 ns |
1.18 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
695.82 ns |
1.283 ns |
1.200 ns |
7.18 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
120.64 ns |
0.067 ns |
0.060 ns |
1.25 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
123.61 ns |
0.057 ns |
0.050 ns |
1.28 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
110.66 ns |
0.019 ns |
0.018 ns |
1.14 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
707.97 ns |
2.939 ns |
2.749 ns |
7.31 |
0.03 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
109.89 ns |
0.048 ns |
0.043 ns |
1.13 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
370.6 ns |
0.27 ns |
0.23 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
375.8 ns |
0.29 ns |
0.27 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
552.7 ns |
0.51 ns |
0.45 ns |
1.49 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
385.8 ns |
0.22 ns |
0.21 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
561.3 ns |
0.37 ns |
0.32 ns |
1.51 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.350 μs |
0.0047 μs |
0.0044 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,067.7 ns |
7.04 ns |
6.24 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,087.8 ns |
9.50 ns |
8.89 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,317.0 ns |
7.36 ns |
6.52 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,847.2 ns |
11.24 ns |
10.52 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
465.2 ns |
0.32 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
470.8 ns |
1.03 ns |
0.81 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
698.3 ns |
1.45 ns |
1.21 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,201.4 ns |
11.69 ns |
10.93 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
613.56 ns |
1.034 ns |
0.917 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
605.64 ns |
1.963 ns |
1.836 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
836.77 ns |
5.572 ns |
5.212 ns |
0.0017 |
176 B |
| PredicateSustained |
False |
True |
True |
4,308.14 ns |
14.995 ns |
14.027 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
50.95 ns |
0.878 ns |
0.822 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
50.38 ns |
0.769 ns |
0.720 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
271.52 ns |
0.379 ns |
0.355 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,525.40 ns |
18.469 ns |
17.276 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
544.2 ns |
0.65 ns |
0.58 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,870.3 ns |
9.98 ns |
8.85 ns |
12.62 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,124.4 ns |
1.48 ns |
1.31 ns |
2.07 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,139.8 ns |
1.50 ns |
1.33 ns |
2.09 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,288.4 ns |
35.92 ns |
33.60 ns |
17.07 |
0.06 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
541.4 ns |
0.29 ns |
0.24 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
544,989.2 ns |
1,162.69 ns |
1,087.59 ns |
1,006.70 |
1.99 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,878.4 ns |
12.15 ns |
11.36 ns |
3.47 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,909.1 ns |
4.81 ns |
4.50 ns |
3.53 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
729,670.4 ns |
1,066.46 ns |
945.39 ns |
1,347.84 |
1.79 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
550.4 ns |
0.53 ns |
0.47 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,051,953.2 ns |
191,545.70 ns |
179,171.97 ns |
105,481.86 |
327.00 |
333.3333 |
222.2222 |
222.2222 |
16001575 B |
51,287.10 |
| InvokeIntArrayFixed |
100000 |
60,977.5 ns |
408.06 ns |
361.74 ns |
110.80 |
0.64 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,538.4 ns |
428.28 ns |
379.66 ns |
111.82 |
0.67 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,884,409.9 ns |
313,455.68 ns |
293,206.64 ns |
152,420.08 |
530.96 |
857.1429 |
714.2857 |
571.4286 |
27894574 B |
89,405.69 |
core-ubuntu-22.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.072 μs |
0.0107 μs |
0.0100 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.075 μs |
0.0112 μs |
0.0105 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.087 μs |
0.0107 μs |
0.0100 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
89.58 ns |
0.043 ns |
0.038 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
112.65 ns |
0.031 ns |
0.028 ns |
1.26 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
97.95 ns |
0.012 ns |
0.011 ns |
1.09 |
- |
- |
0.00 |
| SetInstanceStringField |
675.12 ns |
0.929 ns |
0.869 ns |
7.54 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
98.67 ns |
0.027 ns |
0.024 ns |
1.10 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
101.89 ns |
0.029 ns |
0.026 ns |
1.14 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
93.27 ns |
0.016 ns |
0.014 ns |
1.04 |
- |
- |
0.00 |
| SetStaticStringField |
665.29 ns |
0.693 ns |
0.615 ns |
7.43 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
99.51 ns |
0.021 ns |
0.019 ns |
1.11 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
293.3 ns |
0.16 ns |
0.15 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
298.2 ns |
0.17 ns |
0.16 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
547.4 ns |
0.34 ns |
0.30 ns |
1.87 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
305.3 ns |
0.17 ns |
0.16 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
556.6 ns |
0.42 ns |
0.35 ns |
1.90 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.324 μs |
0.0150 μs |
0.0141 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,014.7 ns |
4.66 ns |
4.36 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,055.4 ns |
5.89 ns |
5.51 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,260.7 ns |
6.80 ns |
6.03 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
6,666.7 ns |
87.61 ns |
81.95 ns |
- |
760 B |
| PredicateRoundTrip |
True |
False |
False |
438.6 ns |
2.03 ns |
1.90 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
431.5 ns |
0.73 ns |
0.68 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
669.3 ns |
5.88 ns |
4.91 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,863.7 ns |
82.64 ns |
77.30 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
569.25 ns |
3.094 ns |
2.894 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
570.35 ns |
0.435 ns |
0.386 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
778.96 ns |
8.750 ns |
8.185 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,199.91 ns |
33.458 ns |
31.297 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
42.89 ns |
0.723 ns |
0.676 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
44.07 ns |
0.391 ns |
0.366 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
259.10 ns |
0.393 ns |
0.368 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,503.83 ns |
35.022 ns |
32.759 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
562.3 ns |
0.40 ns |
0.35 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,786.3 ns |
10.92 ns |
9.68 ns |
12.07 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,128.0 ns |
1.69 ns |
1.50 ns |
2.01 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,146.1 ns |
1.70 ns |
1.59 ns |
2.04 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,742.4 ns |
25.32 ns |
23.69 ns |
15.55 |
0.04 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
548.5 ns |
0.48 ns |
0.43 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
550,014.7 ns |
1,733.25 ns |
1,621.28 ns |
1,002.85 |
2.96 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,864.9 ns |
7.24 ns |
6.77 ns |
3.40 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,850.9 ns |
9.43 ns |
8.82 ns |
3.37 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
712,409.2 ns |
1,625.00 ns |
1,356.95 ns |
1,298.94 |
2.58 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
550.7 ns |
0.36 ns |
0.32 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,150,911.3 ns |
143,967.20 ns |
134,667.01 ns |
103,787.05 |
243.80 |
333.3333 |
222.2222 |
222.2222 |
16001031 B |
51,285.36 |
| InvokeIntArrayFixed |
100000 |
60,969.8 ns |
740.67 ns |
692.82 ns |
110.72 |
1.22 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,873.8 ns |
423.67 ns |
396.30 ns |
110.55 |
0.70 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,933,584.4 ns |
1,489,652.53 ns |
1,393,421.90 ns |
152,424.85 |
2,451.99 |
1285.7143 |
1142.8571 |
1000.0000 |
27897233 B |
89,414.21 |
core-ubuntu-22.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.046 μs |
0.0083 μs |
0.0078 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.046 μs |
0.0009 μs |
0.0007 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.047 μs |
0.0011 μs |
0.0009 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
94.69 ns |
0.035 ns |
0.029 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
119.79 ns |
0.019 ns |
0.016 ns |
1.27 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
100.67 ns |
0.025 ns |
0.024 ns |
1.06 |
- |
- |
0.00 |
| SetInstanceStringField |
671.89 ns |
0.730 ns |
0.647 ns |
7.10 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
109.49 ns |
0.023 ns |
0.020 ns |
1.16 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
111.17 ns |
0.028 ns |
0.025 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
97.27 ns |
0.026 ns |
0.024 ns |
1.03 |
- |
- |
0.00 |
| SetStaticStringField |
674.08 ns |
0.847 ns |
0.792 ns |
7.12 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
107.25 ns |
0.027 ns |
0.024 ns |
1.13 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
306.0 ns |
0.10 ns |
0.07 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
309.2 ns |
0.20 ns |
0.17 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
533.4 ns |
0.34 ns |
0.28 ns |
1.74 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
313.3 ns |
0.13 ns |
0.12 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
546.3 ns |
0.24 ns |
0.21 ns |
1.79 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.294 μs |
0.0049 μs |
0.0046 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,021.0 ns |
5.61 ns |
5.25 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,008.2 ns |
5.98 ns |
5.59 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,246.0 ns |
6.98 ns |
6.53 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,514.5 ns |
17.98 ns |
16.82 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
444.8 ns |
0.63 ns |
0.59 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
436.4 ns |
2.39 ns |
2.00 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
683.1 ns |
0.78 ns |
0.65 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,991.4 ns |
20.40 ns |
19.08 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
579.30 ns |
0.848 ns |
0.793 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
570.45 ns |
0.753 ns |
0.629 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
776.70 ns |
3.946 ns |
3.295 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,081.51 ns |
13.769 ns |
10.750 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
46.39 ns |
0.897 ns |
1.067 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
45.44 ns |
0.868 ns |
1.033 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
259.91 ns |
0.341 ns |
0.319 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,227.00 ns |
13.781 ns |
12.891 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
558.2 ns |
0.31 ns |
0.26 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,970.5 ns |
14.98 ns |
12.51 ns |
12.49 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,145.6 ns |
1.69 ns |
1.50 ns |
2.05 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,150.9 ns |
2.53 ns |
2.37 ns |
2.06 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,245.1 ns |
40.97 ns |
38.32 ns |
16.56 |
0.07 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
565.8 ns |
0.68 ns |
0.64 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
554,299.1 ns |
1,627.00 ns |
1,521.90 ns |
979.67 |
2.81 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,885.6 ns |
9.22 ns |
8.63 ns |
3.33 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,843.6 ns |
11.54 ns |
10.79 ns |
3.26 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
727,886.4 ns |
1,571.61 ns |
1,312.37 ns |
1,286.46 |
2.64 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
566.0 ns |
0.38 ns |
0.34 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,798,899.3 ns |
150,785.36 ns |
133,667.29 ns |
103,877.77 |
236.02 |
333.3333 |
222.2222 |
222.2222 |
16000824 B |
51,284.69 |
| InvokeIntArrayFixed |
100000 |
60,355.4 ns |
671.02 ns |
627.67 ns |
106.63 |
1.08 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,748.4 ns |
710.96 ns |
630.25 ns |
107.32 |
1.08 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,430,422.9 ns |
693,145.82 ns |
648,369.03 ns |
145,626.67 |
1,112.49 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-22.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.043 μs |
0.0075 μs |
0.0070 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.044 μs |
0.0096 μs |
0.0090 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.055 μs |
0.0097 μs |
0.0090 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
95.32 ns |
0.068 ns |
0.061 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
117.79 ns |
0.047 ns |
0.042 ns |
1.24 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
107.12 ns |
0.012 ns |
0.010 ns |
1.12 |
- |
- |
0.00 |
| SetInstanceStringField |
680.55 ns |
0.774 ns |
0.724 ns |
7.14 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
111.78 ns |
0.045 ns |
0.040 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
114.40 ns |
0.038 ns |
0.034 ns |
1.20 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
98.20 ns |
0.015 ns |
0.014 ns |
1.03 |
- |
- |
0.00 |
| SetStaticStringField |
659.54 ns |
1.338 ns |
1.251 ns |
6.92 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
105.12 ns |
0.066 ns |
0.062 ns |
1.10 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
301.0 ns |
0.10 ns |
0.09 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
302.8 ns |
0.10 ns |
0.09 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
553.0 ns |
0.30 ns |
0.24 ns |
1.84 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
318.2 ns |
0.17 ns |
0.16 ns |
1.06 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
556.4 ns |
0.69 ns |
0.58 ns |
1.85 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.359 μs |
0.0111 μs |
0.0098 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,039.9 ns |
7.95 ns |
7.44 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,042.3 ns |
8.24 ns |
7.71 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,284.0 ns |
11.83 ns |
11.07 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,847.5 ns |
95.29 ns |
84.47 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
452.7 ns |
0.45 ns |
0.42 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
453.0 ns |
0.31 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
688.8 ns |
5.83 ns |
5.46 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,002.7 ns |
66.24 ns |
51.71 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
577.13 ns |
1.393 ns |
1.088 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
580.86 ns |
4.022 ns |
3.763 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
796.22 ns |
5.738 ns |
5.368 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,395.02 ns |
40.827 ns |
45.379 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
41.66 ns |
0.061 ns |
0.057 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.14 ns |
0.746 ns |
0.698 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
253.20 ns |
0.438 ns |
0.389 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,649.14 ns |
24.903 ns |
30.583 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
548.2 ns |
0.51 ns |
0.46 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,282.2 ns |
29.06 ns |
25.76 ns |
13.28 |
0.05 |
0.0153 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,159.8 ns |
2.12 ns |
1.88 ns |
2.12 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,168.6 ns |
1.70 ns |
1.42 ns |
2.13 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,180.7 ns |
13.17 ns |
11.67 ns |
16.75 |
0.02 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
546.8 ns |
0.74 ns |
0.61 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
573,771.9 ns |
892.73 ns |
835.06 ns |
1,049.31 |
1.87 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,946.8 ns |
7.56 ns |
6.70 ns |
3.56 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,938.2 ns |
14.43 ns |
13.50 ns |
3.54 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
763,272.7 ns |
1,281.91 ns |
1,070.45 ns |
1,395.86 |
2.42 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
562.0 ns |
0.27 ns |
0.24 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,777,738.9 ns |
435,672.03 ns |
407,527.89 ns |
106,372.71 |
703.63 |
250.0000 |
125.0000 |
125.0000 |
16000810 B |
51,284.65 |
| InvokeIntArrayFixed |
100000 |
62,100.3 ns |
665.52 ns |
622.53 ns |
110.51 |
1.07 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,420.5 ns |
413.25 ns |
345.09 ns |
109.30 |
0.59 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,748,262.3 ns |
739,328.16 ns |
655,395.16 ns |
147,248.07 |
1,128.34 |
1000.0000 |
833.3333 |
833.3333 |
27896308 B |
89,411.24 |
core-ubuntu-22.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.113 μs |
0.0009 μs |
0.0007 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.103 μs |
0.0009 μs |
0.0007 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.092 μs |
0.0087 μs |
0.0072 μs |
0.98 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
97.57 ns |
0.026 ns |
0.022 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
116.30 ns |
0.058 ns |
0.051 ns |
1.19 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
110.60 ns |
0.028 ns |
0.026 ns |
1.13 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
686.20 ns |
0.988 ns |
0.924 ns |
7.03 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
121.53 ns |
0.076 ns |
0.068 ns |
1.25 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
120.62 ns |
0.058 ns |
0.051 ns |
1.24 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
110.49 ns |
0.030 ns |
0.027 ns |
1.13 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
687.78 ns |
2.516 ns |
2.353 ns |
7.05 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
104.59 ns |
0.132 ns |
0.117 ns |
1.07 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
375.4 ns |
0.27 ns |
0.24 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
386.3 ns |
0.36 ns |
0.33 ns |
1.03 |
- |
- |
NA |
| InvokeStaticWithFeedback |
539.2 ns |
0.25 ns |
0.22 ns |
1.44 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
400.3 ns |
0.27 ns |
0.25 ns |
1.07 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
565.6 ns |
0.55 ns |
0.49 ns |
1.51 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.332 μs |
0.0021 μs |
0.0020 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,074.2 ns |
7.57 ns |
7.08 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,087.6 ns |
5.45 ns |
5.10 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,324.2 ns |
8.98 ns |
8.40 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,996.6 ns |
13.22 ns |
11.72 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
459.2 ns |
0.91 ns |
0.85 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
472.6 ns |
0.75 ns |
0.66 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
706.8 ns |
0.94 ns |
0.84 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,270.6 ns |
26.00 ns |
24.32 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
604.26 ns |
2.176 ns |
2.035 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
607.36 ns |
0.861 ns |
0.763 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
814.04 ns |
0.920 ns |
0.718 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,250.01 ns |
22.909 ns |
21.429 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
51.19 ns |
0.786 ns |
0.697 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.07 ns |
0.506 ns |
0.473 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
272.95 ns |
0.458 ns |
0.429 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,513.05 ns |
15.781 ns |
13.989 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
569.9 ns |
0.52 ns |
0.43 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,401.8 ns |
27.30 ns |
25.54 ns |
12.99 |
0.04 |
0.0153 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,171.9 ns |
1.48 ns |
1.31 ns |
2.06 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,184.0 ns |
0.85 ns |
0.66 ns |
2.08 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,970.6 ns |
16.79 ns |
14.89 ns |
17.50 |
0.03 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
569.3 ns |
0.57 ns |
0.50 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
564,841.0 ns |
1,062.98 ns |
994.31 ns |
992.13 |
1.89 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,925.4 ns |
9.08 ns |
8.49 ns |
3.38 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,936.5 ns |
5.28 ns |
4.94 ns |
3.40 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
751,720.5 ns |
1,757.44 ns |
1,467.54 ns |
1,320.38 |
2.73 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
560.6 ns |
0.36 ns |
0.32 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,000,120.4 ns |
218,732.68 ns |
204,602.69 ns |
105,253.50 |
358.15 |
333.3333 |
222.2222 |
222.2222 |
16001556 B |
51,287.04 |
| InvokeIntArrayFixed |
100000 |
61,332.1 ns |
341.58 ns |
319.52 ns |
109.41 |
0.56 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,308.4 ns |
213.36 ns |
189.14 ns |
109.37 |
0.33 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,025,792.8 ns |
803,297.01 ns |
670,789.39 ns |
148,114.20 |
1,155.74 |
666.6667 |
500.0000 |
500.0000 |
27894008 B |
89,403.87 |
core-ubuntu-22.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.131 μs |
0.0017 μs |
0.0013 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.107 μs |
0.0123 μs |
0.0115 μs |
0.98 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.111 μs |
0.0138 μs |
0.0129 μs |
0.98 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
92.18 ns |
0.025 ns |
0.022 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
111.32 ns |
0.024 ns |
0.021 ns |
1.21 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
103.72 ns |
0.074 ns |
0.069 ns |
1.13 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
693.85 ns |
1.879 ns |
1.757 ns |
7.53 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
108.07 ns |
0.083 ns |
0.078 ns |
1.17 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
106.92 ns |
0.024 ns |
0.021 ns |
1.16 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
96.59 ns |
0.013 ns |
0.011 ns |
1.05 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
674.70 ns |
0.864 ns |
0.808 ns |
7.32 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
103.13 ns |
0.067 ns |
0.056 ns |
1.12 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
315.6 ns |
0.17 ns |
0.15 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
313.6 ns |
0.13 ns |
0.12 ns |
0.99 |
- |
- |
NA |
| InvokeStaticWithFeedback |
573.3 ns |
0.44 ns |
0.39 ns |
1.82 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
320.4 ns |
0.13 ns |
0.12 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
576.2 ns |
0.48 ns |
0.37 ns |
1.83 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.352 μs |
0.0041 μs |
0.0039 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,105.1 ns |
9.47 ns |
8.86 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,081.3 ns |
8.43 ns |
7.89 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,394.0 ns |
11.58 ns |
10.26 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
6,088.7 ns |
73.25 ns |
68.52 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
459.1 ns |
4.39 ns |
4.10 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
468.3 ns |
5.86 ns |
5.19 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
692.9 ns |
1.85 ns |
1.44 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,244.9 ns |
40.94 ns |
38.30 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
598.59 ns |
0.811 ns |
0.759 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
604.40 ns |
2.120 ns |
1.770 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
814.95 ns |
8.748 ns |
8.183 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
5,693.63 ns |
91.383 ns |
85.480 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
43.86 ns |
0.762 ns |
0.676 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.69 ns |
0.841 ns |
0.656 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
258.44 ns |
0.332 ns |
0.311 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
4,036.09 ns |
66.801 ns |
62.485 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
555.8 ns |
0.40 ns |
0.35 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,979.6 ns |
14.74 ns |
13.78 ns |
12.56 |
0.03 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,155.1 ns |
1.92 ns |
1.70 ns |
2.08 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,165.5 ns |
1.27 ns |
1.06 ns |
2.10 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,005.9 ns |
24.92 ns |
23.31 ns |
16.20 |
0.04 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
554.2 ns |
0.32 ns |
0.27 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
552,677.6 ns |
1,207.17 ns |
1,129.19 ns |
997.27 |
2.03 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,877.7 ns |
9.27 ns |
8.67 ns |
3.39 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,883.3 ns |
3.01 ns |
2.66 ns |
3.40 |
0.00 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
736,603.9 ns |
1,226.68 ns |
1,024.33 ns |
1,329.16 |
1.89 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
551.6 ns |
0.38 ns |
0.33 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,995,807.9 ns |
183,303.01 ns |
171,461.75 ns |
105,147.15 |
307.23 |
333.3333 |
222.2222 |
222.2222 |
16001191 B |
51,285.87 |
| InvokeIntArrayFixed |
100000 |
60,044.4 ns |
183.19 ns |
162.39 ns |
108.86 |
0.29 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
59,836.9 ns |
233.82 ns |
195.25 ns |
108.49 |
0.35 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,929,988.1 ns |
1,157,806.05 ns |
1,083,012.50 ns |
150,353.15 |
1,903.49 |
1166.6667 |
1000.0000 |
1000.0000 |
27897003 B |
89,413.47 |
core-ubuntu-22.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.076 μs |
0.0134 μs |
0.0125 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.051 μs |
0.0108 μs |
0.0101 μs |
0.98 |
0.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.061 μs |
0.0119 μs |
0.0111 μs |
0.99 |
0.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
93.41 ns |
0.066 ns |
0.062 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
116.29 ns |
0.042 ns |
0.037 ns |
1.24 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
109.79 ns |
0.013 ns |
0.011 ns |
1.18 |
- |
- |
0.00 |
| SetInstanceStringField |
666.09 ns |
0.904 ns |
0.801 ns |
7.13 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
107.03 ns |
0.028 ns |
0.025 ns |
1.15 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
112.71 ns |
0.060 ns |
0.050 ns |
1.21 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
99.28 ns |
0.046 ns |
0.041 ns |
1.06 |
- |
- |
0.00 |
| SetStaticStringField |
662.30 ns |
0.763 ns |
0.677 ns |
7.09 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
102.09 ns |
0.020 ns |
0.017 ns |
1.09 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
317.2 ns |
0.19 ns |
0.18 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
315.1 ns |
0.20 ns |
0.18 ns |
0.99 |
- |
- |
NA |
| InvokeStaticWithFeedback |
546.4 ns |
0.17 ns |
0.15 ns |
1.72 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
326.1 ns |
0.18 ns |
0.16 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
566.0 ns |
0.26 ns |
0.23 ns |
1.78 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.313 μs |
0.0023 μs |
0.0019 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,055.6 ns |
9.43 ns |
8.82 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,059.4 ns |
6.60 ns |
5.85 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,324.4 ns |
7.41 ns |
6.56 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,107.6 ns |
30.37 ns |
28.40 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
464.1 ns |
0.70 ns |
0.59 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
458.9 ns |
0.38 ns |
0.35 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
699.1 ns |
1.87 ns |
1.66 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,368.2 ns |
27.84 ns |
26.04 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
589.98 ns |
0.496 ns |
0.440 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
586.14 ns |
0.700 ns |
0.547 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
807.04 ns |
7.885 ns |
7.375 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,176.19 ns |
16.133 ns |
15.091 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
44.24 ns |
0.231 ns |
0.216 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
45.94 ns |
0.841 ns |
0.746 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
258.46 ns |
0.407 ns |
0.381 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,521.60 ns |
13.862 ns |
12.967 ns |
- |
656 B |
core-ubuntu-22.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
567.4 ns |
1.27 ns |
1.18 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,361.0 ns |
17.83 ns |
16.68 ns |
12.97 |
0.04 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,160.0 ns |
2.83 ns |
2.64 ns |
2.04 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,257.2 ns |
16.24 ns |
15.19 ns |
2.22 |
0.03 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,385.9 ns |
25.72 ns |
24.06 ns |
16.54 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
562.1 ns |
0.36 ns |
0.30 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
563,783.7 ns |
1,143.52 ns |
1,069.65 ns |
1,003.06 |
1.92 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,892.3 ns |
15.28 ns |
14.29 ns |
3.37 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,886.3 ns |
9.88 ns |
9.24 ns |
3.36 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
741,686.8 ns |
1,494.79 ns |
1,248.21 ns |
1,319.58 |
2.25 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
559.1 ns |
0.24 ns |
0.21 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,251,241.7 ns |
181,220.42 ns |
169,513.70 ns |
104,188.04 |
296.12 |
333.3333 |
222.2222 |
222.2222 |
16001398 B |
51,286.53 |
| InvokeIntArrayFixed |
100000 |
60,504.4 ns |
243.29 ns |
215.67 ns |
108.22 |
0.37 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,596.0 ns |
148.11 ns |
131.30 ns |
108.38 |
0.23 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,990,309.4 ns |
872,598.63 ns |
773,535.96 ns |
148,436.28 |
1,337.76 |
1166.6667 |
1000.0000 |
1000.0000 |
27897003 B |
89,413.47 |
core-ubuntu-22.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.092 μs |
0.0094 μs |
0.0088 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.079 μs |
0.0066 μs |
0.0062 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.077 μs |
0.0088 μs |
0.0082 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
95.86 ns |
0.027 ns |
0.024 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
120.08 ns |
0.037 ns |
0.031 ns |
1.25 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
111.89 ns |
0.037 ns |
0.035 ns |
1.17 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
676.06 ns |
1.101 ns |
1.030 ns |
7.05 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
112.79 ns |
0.021 ns |
0.017 ns |
1.18 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
112.63 ns |
0.042 ns |
0.037 ns |
1.18 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
100.53 ns |
0.017 ns |
0.016 ns |
1.05 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
670.97 ns |
3.392 ns |
3.173 ns |
7.00 |
0.03 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
106.59 ns |
0.038 ns |
0.034 ns |
1.11 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
313.0 ns |
0.20 ns |
0.18 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
321.7 ns |
1.61 ns |
1.51 ns |
1.03 |
- |
- |
NA |
| InvokeStaticWithFeedback |
555.2 ns |
0.42 ns |
0.37 ns |
1.77 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
326.0 ns |
0.20 ns |
0.19 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
570.0 ns |
0.38 ns |
0.32 ns |
1.82 |
0.0038 |
312 B |
NA |
core-ubuntu-22.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
2.927 μs |
0.0473 μs |
0.0442 μs |
1.00 |
0.02 |
0.0076 |
680 B |
1.00 |
core-ubuntu-22.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,068.2 ns |
7.84 ns |
7.33 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,058.5 ns |
1.36 ns |
1.06 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,374.2 ns |
21.15 ns |
19.79 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
6,285.6 ns |
77.40 ns |
64.64 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
477.4 ns |
4.75 ns |
4.44 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
460.5 ns |
1.03 ns |
0.80 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
1,213.1 ns |
23.12 ns |
21.63 ns |
- |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,080.8 ns |
30.98 ns |
25.87 ns |
0.0076 |
680 B |
core-ubuntu-22.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
589.16 ns |
2.514 ns |
1.963 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
591.64 ns |
0.742 ns |
0.579 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
807.75 ns |
6.119 ns |
5.724 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,335.58 ns |
18.376 ns |
18.048 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
41.95 ns |
0.028 ns |
0.025 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
41.67 ns |
0.409 ns |
0.382 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
254.84 ns |
0.610 ns |
0.570 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,498.88 ns |
19.269 ns |
23.665 ns |
- |
656 B |
core-ubuntu-22.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
537.6 ns |
0.55 ns |
0.48 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,248.6 ns |
14.86 ns |
12.41 ns |
13.48 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,194.2 ns |
3.09 ns |
2.74 ns |
2.22 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,222.6 ns |
1.52 ns |
1.19 ns |
2.27 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,161.8 ns |
23.94 ns |
22.39 ns |
17.04 |
0.04 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
534.5 ns |
0.48 ns |
0.43 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
571,160.2 ns |
1,385.14 ns |
1,295.66 ns |
1,068.66 |
2.49 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,952.2 ns |
8.50 ns |
7.95 ns |
3.65 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,936.2 ns |
5.06 ns |
4.49 ns |
3.62 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
759,352.0 ns |
1,339.28 ns |
1,187.23 ns |
1,420.78 |
2.41 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
529.8 ns |
0.58 ns |
0.48 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,803,583.0 ns |
430,743.16 ns |
402,917.42 ns |
112,870.10 |
743.11 |
250.0000 |
125.0000 |
125.0000 |
16000833 B |
46,514.05 |
| InvokeIntArrayFixed |
100000 |
61,227.8 ns |
401.28 ns |
355.72 ns |
115.56 |
0.66 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,683.4 ns |
217.38 ns |
192.70 ns |
116.42 |
0.37 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,286,175.3 ns |
1,469,357.65 ns |
1,374,438.06 ns |
160,964.59 |
2,516.46 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.150 μs |
0.0014 μs |
0.0012 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.139 μs |
0.0025 μs |
0.0021 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.144 μs |
0.0009 μs |
0.0007 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
105.9 ns |
0.02 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
148.8 ns |
0.05 ns |
0.04 ns |
1.40 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.9 ns |
0.02 ns |
0.02 ns |
1.09 |
- |
- |
0.00 |
| SetInstanceStringField |
735.1 ns |
1.15 ns |
1.07 ns |
6.94 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
130.7 ns |
0.04 ns |
0.04 ns |
1.23 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
149.6 ns |
0.06 ns |
0.05 ns |
1.41 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
115.8 ns |
0.06 ns |
0.06 ns |
1.09 |
- |
- |
0.00 |
| SetStaticStringField |
715.5 ns |
1.38 ns |
1.23 ns |
6.76 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
142.2 ns |
0.03 ns |
0.03 ns |
1.34 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
375.0 ns |
0.14 ns |
0.12 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
336.3 ns |
0.20 ns |
0.19 ns |
0.90 |
- |
- |
NA |
| InvokeStaticWithFeedback |
540.4 ns |
0.43 ns |
0.38 ns |
1.44 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
387.7 ns |
0.16 ns |
0.15 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
542.7 ns |
0.44 ns |
0.39 ns |
1.45 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.330 μs |
0.0017 μs |
0.0016 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,046.3 ns |
9.31 ns |
8.71 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,055.3 ns |
8.24 ns |
7.71 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,264.3 ns |
5.56 ns |
5.20 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,643.9 ns |
4.67 ns |
4.14 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
425.6 ns |
0.46 ns |
0.36 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
442.9 ns |
0.40 ns |
0.35 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
632.0 ns |
0.27 ns |
0.21 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,242.4 ns |
18.11 ns |
16.94 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
612.76 ns |
0.380 ns |
0.297 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
623.82 ns |
0.591 ns |
0.493 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
818.78 ns |
0.995 ns |
0.831 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,212.09 ns |
14.279 ns |
13.357 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
58.49 ns |
1.139 ns |
1.266 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
59.34 ns |
1.163 ns |
1.384 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
251.17 ns |
0.549 ns |
0.513 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,517.56 ns |
13.012 ns |
12.171 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
549.0 ns |
0.36 ns |
0.32 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,223.0 ns |
6.85 ns |
6.08 ns |
13.16 |
0.01 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,214.5 ns |
1.91 ns |
1.69 ns |
2.21 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,220.9 ns |
1.98 ns |
1.75 ns |
2.22 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,583.0 ns |
31.62 ns |
29.58 ns |
17.45 |
0.05 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
546.0 ns |
0.52 ns |
0.46 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
579,595.6 ns |
1,183.48 ns |
1,107.03 ns |
1,061.52 |
2.15 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,006.0 ns |
14.88 ns |
13.92 ns |
3.67 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,961.7 ns |
15.67 ns |
14.66 ns |
3.59 |
0.03 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
792,180.4 ns |
606.46 ns |
473.49 ns |
1,450.86 |
1.45 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
546.8 ns |
0.62 ns |
0.58 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,572,581.7 ns |
191,481.02 ns |
179,111.46 ns |
108,955.47 |
336.28 |
250.0000 |
125.0000 |
125.0000 |
16001200 B |
46,515.12 |
| InvokeIntArrayFixed |
100000 |
61,239.0 ns |
727.10 ns |
680.13 ns |
112.00 |
1.21 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,094.1 ns |
636.03 ns |
594.95 ns |
111.74 |
1.06 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,308,385.9 ns |
651,279.10 ns |
577,341.96 ns |
157,854.00 |
1,032.72 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.163 μs |
0.0085 μs |
0.0079 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.170 μs |
0.0097 μs |
0.0091 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.166 μs |
0.0094 μs |
0.0088 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
102.2 ns |
0.04 ns |
0.03 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
146.6 ns |
0.08 ns |
0.07 ns |
1.43 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.1 ns |
0.02 ns |
0.02 ns |
1.13 |
- |
- |
0.00 |
| SetInstanceStringField |
728.5 ns |
0.81 ns |
0.76 ns |
7.13 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
121.7 ns |
0.03 ns |
0.03 ns |
1.19 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
147.5 ns |
0.05 ns |
0.04 ns |
1.44 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
112.0 ns |
0.02 ns |
0.02 ns |
1.10 |
- |
- |
0.00 |
| SetStaticStringField |
725.5 ns |
0.94 ns |
0.88 ns |
7.10 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
152.5 ns |
0.04 ns |
0.04 ns |
1.49 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
310.9 ns |
0.11 ns |
0.11 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
274.1 ns |
0.13 ns |
0.12 ns |
0.88 |
- |
- |
NA |
| InvokeStaticWithFeedback |
544.6 ns |
0.30 ns |
0.27 ns |
1.75 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
320.1 ns |
0.13 ns |
0.11 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
543.6 ns |
0.26 ns |
0.23 ns |
1.75 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.337 μs |
0.0015 μs |
0.0012 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,060.3 ns |
4.40 ns |
4.12 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,047.9 ns |
4.88 ns |
4.33 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,258.3 ns |
5.64 ns |
5.28 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,733.3 ns |
73.90 ns |
69.13 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
439.4 ns |
1.23 ns |
1.15 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
430.3 ns |
0.81 ns |
0.75 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
635.3 ns |
0.92 ns |
0.72 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,994.2 ns |
24.51 ns |
22.93 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
616.16 ns |
1.952 ns |
1.630 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
615.61 ns |
0.358 ns |
0.317 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
808.41 ns |
6.396 ns |
5.983 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,596.54 ns |
47.175 ns |
44.127 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
54.39 ns |
1.071 ns |
1.393 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.51 ns |
1.028 ns |
1.056 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
243.50 ns |
0.539 ns |
0.478 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,970.55 ns |
62.488 ns |
58.451 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
537.0 ns |
0.40 ns |
0.36 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,069.0 ns |
8.53 ns |
7.12 ns |
13.16 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,173.3 ns |
1.97 ns |
1.84 ns |
2.18 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,173.7 ns |
1.06 ns |
0.83 ns |
2.19 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,188.9 ns |
30.35 ns |
26.90 ns |
17.11 |
0.05 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
536.1 ns |
0.37 ns |
0.33 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
567,950.8 ns |
1,124.36 ns |
1,051.73 ns |
1,059.32 |
2.00 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,882.6 ns |
7.26 ns |
6.80 ns |
3.51 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,900.3 ns |
5.80 ns |
5.14 ns |
3.54 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
745,236.4 ns |
553.31 ns |
462.04 ns |
1,389.99 |
1.17 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
541.5 ns |
0.43 ns |
0.38 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,898,046.2 ns |
217,671.81 ns |
203,610.34 ns |
108,772.54 |
371.53 |
250.0000 |
125.0000 |
125.0000 |
16001387 B |
46,515.66 |
| InvokeIntArrayFixed |
100000 |
60,103.8 ns |
429.95 ns |
402.17 ns |
111.00 |
0.72 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
59,582.9 ns |
348.26 ns |
308.72 ns |
110.04 |
0.56 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
84,366,099.2 ns |
576,502.41 ns |
511,054.37 ns |
155,806.78 |
917.91 |
1000.0000 |
833.3333 |
833.3333 |
27894573 B |
81,088.88 |
core-ubuntu-22.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.115 μs |
0.0083 μs |
0.0077 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.123 μs |
0.0086 μs |
0.0081 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.122 μs |
0.0067 μs |
0.0060 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
102.2 ns |
0.04 ns |
0.04 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
152.3 ns |
0.14 ns |
0.12 ns |
1.49 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.9 ns |
0.03 ns |
0.03 ns |
1.14 |
- |
- |
0.00 |
| SetInstanceStringField |
719.5 ns |
0.75 ns |
0.70 ns |
7.04 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
122.3 ns |
0.06 ns |
0.04 ns |
1.20 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
145.8 ns |
0.06 ns |
0.05 ns |
1.43 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
114.5 ns |
0.02 ns |
0.02 ns |
1.12 |
- |
- |
0.00 |
| SetStaticStringField |
697.6 ns |
0.88 ns |
0.83 ns |
6.82 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
152.4 ns |
0.05 ns |
0.04 ns |
1.49 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
315.3 ns |
0.14 ns |
0.13 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
287.8 ns |
0.26 ns |
0.24 ns |
0.91 |
- |
- |
NA |
| InvokeStaticWithFeedback |
525.1 ns |
0.35 ns |
0.27 ns |
1.67 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
318.8 ns |
0.09 ns |
0.08 ns |
1.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
538.5 ns |
0.33 ns |
0.28 ns |
1.71 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.322 μs |
0.0015 μs |
0.0013 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,011.9 ns |
8.28 ns |
7.74 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,015.3 ns |
5.05 ns |
4.48 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,216.2 ns |
4.34 ns |
4.06 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,560.1 ns |
11.21 ns |
9.93 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
427.1 ns |
0.25 ns |
0.22 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
423.9 ns |
0.30 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
619.3 ns |
0.74 ns |
0.58 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,965.4 ns |
10.93 ns |
10.22 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
597.38 ns |
0.311 ns |
0.276 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
592.28 ns |
0.493 ns |
0.437 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
786.45 ns |
8.132 ns |
7.607 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,124.51 ns |
13.851 ns |
12.956 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
52.51 ns |
0.806 ns |
0.754 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
52.98 ns |
1.021 ns |
1.002 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
243.65 ns |
0.459 ns |
0.407 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,437.95 ns |
8.880 ns |
7.416 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
551.2 ns |
0.64 ns |
0.60 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,100.6 ns |
6.75 ns |
5.98 ns |
12.88 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,223.6 ns |
2.09 ns |
1.95 ns |
2.22 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,240.3 ns |
1.67 ns |
1.48 ns |
2.25 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,397.9 ns |
62.58 ns |
58.54 ns |
17.05 |
0.10 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
557.8 ns |
0.48 ns |
0.43 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
564,236.5 ns |
1,536.56 ns |
1,437.30 ns |
1,011.63 |
2.61 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,941.6 ns |
9.50 ns |
8.88 ns |
3.48 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,966.6 ns |
6.48 ns |
6.07 ns |
3.53 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
768,134.5 ns |
1,941.01 ns |
1,620.83 ns |
1,377.20 |
2.98 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
555.5 ns |
0.29 ns |
0.24 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,296,726.9 ns |
184,970.28 ns |
173,021.31 ns |
106,739.51 |
304.94 |
333.3333 |
222.2222 |
222.2222 |
16001138 B |
46,514.94 |
| InvokeIntArrayFixed |
100000 |
61,996.2 ns |
296.02 ns |
247.19 ns |
111.60 |
0.43 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,839.8 ns |
387.60 ns |
343.60 ns |
111.32 |
0.60 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
84,383,475.5 ns |
171,881.25 ns |
134,193.58 ns |
151,897.94 |
240.54 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.103 μs |
0.0094 μs |
0.0088 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.137 μs |
0.0114 μs |
0.0107 μs |
1.03 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.140 μs |
0.0110 μs |
0.0103 μs |
1.03 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
109.4 ns |
0.04 ns |
0.04 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
147.0 ns |
0.38 ns |
0.36 ns |
1.34 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.4 ns |
0.04 ns |
0.04 ns |
1.06 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
710.4 ns |
0.88 ns |
0.83 ns |
6.49 |
0.01 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
121.6 ns |
0.04 ns |
0.04 ns |
1.11 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
140.0 ns |
0.08 ns |
0.07 ns |
1.28 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
115.7 ns |
0.11 ns |
0.10 ns |
1.06 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
712.4 ns |
2.04 ns |
1.70 ns |
6.51 |
0.02 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
156.3 ns |
0.04 ns |
0.04 ns |
1.43 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
310.0 ns |
0.10 ns |
0.08 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
287.1 ns |
0.12 ns |
0.11 ns |
0.93 |
- |
- |
NA |
| InvokeStaticWithFeedback |
527.7 ns |
0.52 ns |
0.46 ns |
1.70 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
315.7 ns |
0.12 ns |
0.11 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
555.6 ns |
0.31 ns |
0.25 ns |
1.79 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.337 μs |
0.0016 μs |
0.0013 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,028.7 ns |
1.21 ns |
0.94 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,043.0 ns |
5.96 ns |
5.29 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,239.4 ns |
1.03 ns |
0.80 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,547.7 ns |
60.18 ns |
46.98 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
437.6 ns |
0.28 ns |
0.25 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
442.1 ns |
0.37 ns |
0.33 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
634.5 ns |
2.13 ns |
1.66 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,148.3 ns |
18.59 ns |
15.52 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
591.20 ns |
1.281 ns |
1.000 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
595.13 ns |
0.960 ns |
0.749 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
787.88 ns |
5.573 ns |
5.213 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,281.81 ns |
62.098 ns |
78.534 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
49.75 ns |
0.708 ns |
0.663 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
48.33 ns |
0.021 ns |
0.020 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
239.97 ns |
0.422 ns |
0.395 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,602.90 ns |
18.272 ns |
17.091 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
548.2 ns |
0.18 ns |
0.16 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,115.2 ns |
4.95 ns |
3.86 ns |
12.98 |
0.01 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,177.6 ns |
1.20 ns |
1.00 ns |
2.15 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,213.7 ns |
1.99 ns |
1.86 ns |
2.21 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,061.1 ns |
18.51 ns |
15.46 ns |
16.53 |
0.03 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
542.7 ns |
0.30 ns |
0.25 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
564,496.8 ns |
869.35 ns |
770.66 ns |
1,040.18 |
1.45 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,735.4 ns |
8.09 ns |
7.57 ns |
3.20 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,763.4 ns |
8.07 ns |
7.55 ns |
3.25 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
756,986.9 ns |
553.19 ns |
490.39 ns |
1,394.87 |
1.07 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
547.0 ns |
0.22 ns |
0.20 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,751,255.4 ns |
200,261.52 ns |
187,324.75 ns |
107,408.62 |
333.72 |
333.3333 |
222.2222 |
222.2222 |
16001576 B |
46,516.21 |
| InvokeIntArrayFixed |
100000 |
44,392.5 ns |
173.46 ns |
153.77 ns |
81.16 |
0.27 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
45,093.1 ns |
457.02 ns |
427.50 ns |
82.44 |
0.76 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,199,695.2 ns |
499,704.39 ns |
467,423.80 ns |
155,761.46 |
829.29 |
1000.0000 |
833.3333 |
833.3333 |
27894457 B |
81,088.54 |
core-ubuntu-22.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.147 μs |
0.0085 μs |
0.0080 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.152 μs |
0.0091 μs |
0.0085 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.161 μs |
0.0083 μs |
0.0078 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
107.5 ns |
0.02 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
144.0 ns |
0.03 ns |
0.02 ns |
1.34 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
113.2 ns |
0.02 ns |
0.02 ns |
1.05 |
- |
- |
0.00 |
| SetInstanceStringField |
714.2 ns |
0.52 ns |
0.44 ns |
6.64 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
119.8 ns |
0.03 ns |
0.03 ns |
1.11 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
141.4 ns |
0.04 ns |
0.03 ns |
1.32 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
112.9 ns |
0.02 ns |
0.02 ns |
1.05 |
- |
- |
0.00 |
| SetStaticStringField |
705.8 ns |
0.59 ns |
0.53 ns |
6.57 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
151.1 ns |
0.04 ns |
0.04 ns |
1.41 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
305.2 ns |
0.06 ns |
0.05 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
266.6 ns |
0.10 ns |
0.08 ns |
0.87 |
- |
- |
NA |
| InvokeStaticWithFeedback |
538.8 ns |
0.38 ns |
0.33 ns |
1.77 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
308.5 ns |
0.08 ns |
0.07 ns |
1.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
545.8 ns |
0.30 ns |
0.27 ns |
1.79 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.323 μs |
0.0010 μs |
0.0009 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,041.6 ns |
5.54 ns |
5.18 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,045.8 ns |
5.97 ns |
5.58 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,230.8 ns |
5.72 ns |
5.35 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,689.3 ns |
25.09 ns |
23.47 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
433.0 ns |
0.27 ns |
0.24 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
440.1 ns |
0.16 ns |
0.14 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
629.6 ns |
0.37 ns |
0.32 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,941.4 ns |
13.33 ns |
12.47 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
609.58 ns |
0.421 ns |
0.328 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
604.06 ns |
0.352 ns |
0.312 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
812.78 ns |
5.722 ns |
5.353 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,189.61 ns |
18.095 ns |
16.041 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.14 ns |
0.032 ns |
0.029 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.30 ns |
0.026 ns |
0.025 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
246.46 ns |
0.335 ns |
0.313 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,517.57 ns |
9.646 ns |
9.023 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
545.8 ns |
0.25 ns |
0.20 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,057.6 ns |
10.09 ns |
9.44 ns |
12.93 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,196.9 ns |
1.29 ns |
1.08 ns |
2.19 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,196.8 ns |
1.23 ns |
1.03 ns |
2.19 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,844.2 ns |
13.96 ns |
12.38 ns |
16.21 |
0.02 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
529.0 ns |
0.67 ns |
0.59 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
561,767.0 ns |
1,045.65 ns |
926.94 ns |
1,061.98 |
2.05 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,742.2 ns |
11.34 ns |
10.61 ns |
3.29 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,783.4 ns |
8.07 ns |
7.55 ns |
3.37 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
733,023.4 ns |
1,715.82 ns |
1,432.79 ns |
1,385.73 |
3.01 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
519.9 ns |
0.40 ns |
0.36 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,074,760.8 ns |
210,421.30 ns |
196,828.21 ns |
113,623.50 |
374.33 |
333.3333 |
222.2222 |
222.2222 |
16001168 B |
46,515.02 |
| InvokeIntArrayFixed |
100000 |
44,501.4 ns |
168.71 ns |
149.55 ns |
85.59 |
0.28 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
44,751.3 ns |
327.40 ns |
306.25 ns |
86.07 |
0.57 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
81,755,292.4 ns |
1,111,137.49 ns |
1,039,358.70 ns |
157,246.89 |
1,938.74 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.105 μs |
0.0096 μs |
0.0090 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.108 μs |
0.0110 μs |
0.0103 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.139 μs |
0.0107 μs |
0.0100 μs |
1.03 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
102.8 ns |
0.07 ns |
0.07 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
148.6 ns |
0.03 ns |
0.03 ns |
1.45 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.2 ns |
0.03 ns |
0.02 ns |
1.13 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
714.9 ns |
3.27 ns |
3.05 ns |
6.95 |
0.03 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
125.0 ns |
0.04 ns |
0.03 ns |
1.22 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
149.1 ns |
0.07 ns |
0.06 ns |
1.45 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
113.0 ns |
0.03 ns |
0.02 ns |
1.10 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
718.2 ns |
1.49 ns |
1.40 ns |
6.99 |
0.01 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
148.5 ns |
0.05 ns |
0.05 ns |
1.44 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
304.0 ns |
0.13 ns |
0.13 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
269.6 ns |
0.59 ns |
0.55 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
523.6 ns |
0.36 ns |
0.32 ns |
1.72 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
314.5 ns |
0.12 ns |
0.11 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
548.0 ns |
0.44 ns |
0.37 ns |
1.80 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.322 μs |
0.0019 μs |
0.0017 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,027.7 ns |
5.64 ns |
5.28 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,028.1 ns |
6.14 ns |
5.74 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,234.5 ns |
3.51 ns |
3.28 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,597.7 ns |
14.61 ns |
12.95 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
426.9 ns |
0.35 ns |
0.31 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
424.7 ns |
0.30 ns |
0.25 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
636.2 ns |
0.59 ns |
0.50 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,869.7 ns |
10.27 ns |
9.60 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
591.58 ns |
0.365 ns |
0.305 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
602.06 ns |
0.331 ns |
0.294 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
795.02 ns |
6.692 ns |
6.259 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,257.79 ns |
21.835 ns |
20.425 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.10 ns |
0.994 ns |
1.063 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
52.82 ns |
1.040 ns |
1.156 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
240.47 ns |
0.361 ns |
0.338 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,444.01 ns |
12.708 ns |
11.266 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
551.2 ns |
0.73 ns |
0.65 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,102.3 ns |
8.03 ns |
7.12 ns |
12.89 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,196.7 ns |
1.61 ns |
1.42 ns |
2.17 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,195.3 ns |
1.81 ns |
1.69 ns |
2.17 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,140.3 ns |
25.51 ns |
22.61 ns |
16.58 |
0.04 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
541.4 ns |
0.60 ns |
0.50 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
558,565.9 ns |
1,118.50 ns |
1,046.24 ns |
1,031.79 |
2.08 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,715.4 ns |
4.84 ns |
4.53 ns |
3.17 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,604.8 ns |
2.90 ns |
2.71 ns |
2.96 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
734,828.7 ns |
1,079.87 ns |
843.09 ns |
1,357.38 |
1.92 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
543.6 ns |
0.19 ns |
0.15 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,204,821.4 ns |
177,571.11 ns |
157,412.16 ns |
108,913.15 |
281.39 |
333.3333 |
222.2222 |
222.2222 |
16001209 B |
46,515.14 |
| InvokeIntArrayFixed |
100000 |
45,155.3 ns |
175.72 ns |
137.19 ns |
83.07 |
0.24 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
44,992.2 ns |
316.72 ns |
280.76 ns |
82.77 |
0.50 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
84,723,337.7 ns |
581,903.19 ns |
544,312.61 ns |
155,857.00 |
970.96 |
1000.0000 |
833.3333 |
833.3333 |
27894281 B |
81,088.03 |
core-ubuntu-22.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.111 μs |
0.0019 μs |
0.0015 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.109 μs |
0.0105 μs |
0.0098 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.117 μs |
0.0104 μs |
0.0097 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
108.0 ns |
0.03 ns |
0.03 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
146.1 ns |
0.05 ns |
0.05 ns |
1.35 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.0 ns |
0.02 ns |
0.02 ns |
1.07 |
- |
- |
0.00 |
| SetInstanceStringField |
697.8 ns |
1.15 ns |
1.02 ns |
6.46 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
123.7 ns |
0.03 ns |
0.03 ns |
1.15 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
143.3 ns |
0.04 ns |
0.03 ns |
1.33 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
117.2 ns |
0.03 ns |
0.03 ns |
1.09 |
- |
- |
0.00 |
| SetStaticStringField |
701.1 ns |
0.80 ns |
0.74 ns |
6.49 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
155.3 ns |
0.11 ns |
0.10 ns |
1.44 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
311.4 ns |
0.10 ns |
0.08 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
272.4 ns |
0.15 ns |
0.13 ns |
0.87 |
- |
- |
NA |
| InvokeStaticWithFeedback |
530.7 ns |
0.28 ns |
0.23 ns |
1.70 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
313.4 ns |
0.19 ns |
0.18 ns |
1.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
545.5 ns |
0.67 ns |
0.63 ns |
1.75 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.301 μs |
0.0022 μs |
0.0019 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,027.4 ns |
5.32 ns |
4.71 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,008.7 ns |
0.69 ns |
0.54 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,215.9 ns |
0.86 ns |
0.72 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,504.2 ns |
14.27 ns |
12.65 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
431.4 ns |
0.85 ns |
0.79 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
429.7 ns |
0.63 ns |
0.55 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
628.5 ns |
1.68 ns |
1.40 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,750.9 ns |
7.66 ns |
6.79 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
597.78 ns |
0.564 ns |
0.440 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
623.76 ns |
0.655 ns |
0.511 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
786.25 ns |
5.603 ns |
5.241 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,068.25 ns |
23.877 ns |
18.642 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
50.18 ns |
0.968 ns |
1.292 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.91 ns |
1.013 ns |
1.386 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
237.94 ns |
0.522 ns |
0.463 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
4,175.40 ns |
77.832 ns |
92.653 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
533.9 ns |
0.34 ns |
0.30 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,254.1 ns |
15.43 ns |
14.43 ns |
13.59 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,198.3 ns |
2.47 ns |
2.19 ns |
2.24 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,205.7 ns |
3.18 ns |
2.97 ns |
2.26 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,149.7 ns |
19.42 ns |
18.16 ns |
17.14 |
0.03 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
535.3 ns |
1.24 ns |
1.16 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
569,080.5 ns |
1,743.04 ns |
1,630.44 ns |
1,063.03 |
3.70 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,927.9 ns |
5.87 ns |
5.20 ns |
3.60 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,934.6 ns |
5.17 ns |
4.31 ns |
3.61 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
767,854.3 ns |
453.55 ns |
378.73 ns |
1,434.33 |
3.09 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
529.2 ns |
0.69 ns |
0.58 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,345,262.3 ns |
345,746.39 ns |
323,411.39 ns |
112,150.01 |
603.57 |
250.0000 |
125.0000 |
125.0000 |
16001217 B |
46,515.17 |
| InvokeIntArrayFixed |
100000 |
60,874.1 ns |
544.41 ns |
509.24 ns |
115.04 |
0.94 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,113.4 ns |
295.97 ns |
247.14 ns |
113.60 |
0.47 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,118,263.5 ns |
1,104,113.49 ns |
978,767.85 ns |
160,855.54 |
1,795.27 |
1000.0000 |
833.3333 |
833.3333 |
27894767 B |
81,089.44 |
core-ubuntu-22.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.170 μs |
0.0095 μs |
0.0089 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.147 μs |
0.0092 μs |
0.0086 μs |
0.98 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.137 μs |
0.0007 μs |
0.0006 μs |
0.97 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
106.6 ns |
0.08 ns |
0.07 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
147.5 ns |
0.05 ns |
0.04 ns |
1.38 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.8 ns |
0.04 ns |
0.04 ns |
1.09 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
727.6 ns |
0.96 ns |
0.90 ns |
6.83 |
0.01 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
126.9 ns |
0.06 ns |
0.05 ns |
1.19 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
153.9 ns |
0.05 ns |
0.04 ns |
1.44 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
113.0 ns |
0.03 ns |
0.03 ns |
1.06 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
710.2 ns |
2.00 ns |
1.87 ns |
6.66 |
0.02 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
153.5 ns |
0.04 ns |
0.03 ns |
1.44 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
386.1 ns |
0.28 ns |
0.26 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
350.5 ns |
0.18 ns |
0.15 ns |
0.91 |
- |
- |
NA |
| InvokeStaticWithFeedback |
547.6 ns |
0.33 ns |
0.30 ns |
1.42 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
389.9 ns |
0.10 ns |
0.08 ns |
1.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
545.3 ns |
0.54 ns |
0.48 ns |
1.41 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.329 μs |
0.0013 μs |
0.0010 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,046.8 ns |
10.23 ns |
9.57 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,033.4 ns |
4.76 ns |
4.22 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,254.8 ns |
8.93 ns |
8.36 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,680.1 ns |
5.13 ns |
4.55 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
435.7 ns |
0.62 ns |
0.58 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
431.4 ns |
0.72 ns |
0.63 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
631.1 ns |
1.19 ns |
1.11 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,031.3 ns |
6.98 ns |
6.19 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
624.89 ns |
8.164 ns |
7.637 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
616.32 ns |
0.445 ns |
0.371 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
801.07 ns |
2.193 ns |
1.712 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,255.68 ns |
13.319 ns |
12.459 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
62.29 ns |
0.027 ns |
0.024 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
59.20 ns |
1.166 ns |
1.198 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
250.63 ns |
0.648 ns |
0.606 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,631.25 ns |
17.184 ns |
16.074 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
526.8 ns |
0.22 ns |
0.18 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,018.8 ns |
7.97 ns |
7.07 ns |
13.32 |
0.01 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,184.7 ns |
1.48 ns |
1.32 ns |
2.25 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,169.3 ns |
1.44 ns |
1.27 ns |
2.22 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,410.5 ns |
33.73 ns |
31.55 ns |
17.86 |
0.06 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
534.7 ns |
0.28 ns |
0.25 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
549,259.9 ns |
1,357.12 ns |
1,203.05 ns |
1,027.23 |
2.22 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,900.7 ns |
7.70 ns |
7.20 ns |
3.55 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,905.6 ns |
5.30 ns |
4.96 ns |
3.56 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
758,088.3 ns |
1,658.60 ns |
1,385.01 ns |
1,417.78 |
2.57 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
539.4 ns |
0.54 ns |
0.48 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,540,106.6 ns |
137,688.58 ns |
128,793.98 ns |
108,521.47 |
249.46 |
333.3333 |
222.2222 |
222.2222 |
16001041 B |
46,514.65 |
| InvokeIntArrayFixed |
100000 |
61,117.0 ns |
311.14 ns |
275.82 ns |
113.30 |
0.50 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,459.5 ns |
459.08 ns |
406.96 ns |
113.93 |
0.74 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,085,331.9 ns |
596,534.99 ns |
557,999.20 ns |
157,730.92 |
1,010.94 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.155 μs |
0.0112 μs |
0.0105 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.136 μs |
0.0118 μs |
0.0111 μs |
0.98 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.137 μs |
0.0092 μs |
0.0086 μs |
0.98 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
99.87 ns |
0.041 ns |
0.036 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
136.58 ns |
0.054 ns |
0.048 ns |
1.37 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
112.34 ns |
0.034 ns |
0.032 ns |
1.12 |
- |
- |
0.00 |
| SetInstanceStringField |
712.99 ns |
1.121 ns |
1.049 ns |
7.14 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
112.87 ns |
0.013 ns |
0.011 ns |
1.13 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
131.76 ns |
0.036 ns |
0.030 ns |
1.32 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
100.13 ns |
0.012 ns |
0.010 ns |
1.00 |
- |
- |
0.00 |
| SetStaticStringField |
699.40 ns |
0.826 ns |
0.773 ns |
7.00 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
143.86 ns |
0.057 ns |
0.051 ns |
1.44 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
305.7 ns |
0.10 ns |
0.10 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
264.8 ns |
0.17 ns |
0.16 ns |
0.87 |
- |
- |
NA |
| InvokeStaticWithFeedback |
543.8 ns |
0.28 ns |
0.23 ns |
1.78 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
312.6 ns |
0.84 ns |
0.79 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
533.5 ns |
0.34 ns |
0.30 ns |
1.75 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.303 μs |
0.0016 μs |
0.0015 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,011.7 ns |
6.99 ns |
6.54 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,017.5 ns |
5.23 ns |
4.64 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,216.7 ns |
3.75 ns |
3.51 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,607.3 ns |
16.16 ns |
15.11 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
428.0 ns |
0.31 ns |
0.28 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
425.8 ns |
0.55 ns |
0.48 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
622.7 ns |
1.18 ns |
0.92 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,187.4 ns |
23.12 ns |
21.63 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
571.52 ns |
2.248 ns |
1.993 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
581.44 ns |
0.383 ns |
0.340 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
763.49 ns |
5.209 ns |
4.872 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,174.98 ns |
18.118 ns |
16.948 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
50.99 ns |
0.870 ns |
0.966 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.76 ns |
0.998 ns |
0.980 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
240.73 ns |
0.252 ns |
0.224 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,869.40 ns |
60.754 ns |
56.830 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
529.2 ns |
1.24 ns |
1.16 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,998.6 ns |
12.99 ns |
12.15 ns |
13.23 |
0.04 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,165.1 ns |
1.47 ns |
1.31 ns |
2.20 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,180.5 ns |
1.01 ns |
0.84 ns |
2.23 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,839.7 ns |
31.19 ns |
27.65 ns |
16.70 |
0.06 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
540.7 ns |
0.78 ns |
0.69 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
561,322.3 ns |
1,716.43 ns |
1,605.55 ns |
1,038.11 |
3.15 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,880.6 ns |
17.94 ns |
16.78 ns |
3.48 |
0.03 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,906.7 ns |
9.76 ns |
9.13 ns |
3.53 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
737,967.9 ns |
1,700.84 ns |
1,590.96 ns |
1,364.80 |
3.31 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
533.8 ns |
0.75 ns |
0.67 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,087,122.8 ns |
204,755.58 ns |
191,528.50 ns |
110,687.46 |
372.17 |
333.3333 |
222.2222 |
222.2222 |
16000822 B |
46,514.02 |
| InvokeIntArrayFixed |
100000 |
61,133.1 ns |
385.97 ns |
361.04 ns |
114.52 |
0.67 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,199.9 ns |
626.89 ns |
586.40 ns |
114.65 |
1.07 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
82,285,014.8 ns |
544,608.45 ns |
454,772.72 ns |
154,143.89 |
841.53 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.098 μs |
0.0107 μs |
0.0100 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.105 μs |
0.0099 μs |
0.0093 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.111 μs |
0.0092 μs |
0.0086 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
111.1 ns |
0.03 ns |
0.03 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
159.0 ns |
0.03 ns |
0.03 ns |
1.43 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.0 ns |
0.04 ns |
0.03 ns |
1.03 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
713.9 ns |
2.32 ns |
2.17 ns |
6.42 |
0.02 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
122.9 ns |
0.04 ns |
0.04 ns |
1.11 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
146.2 ns |
0.04 ns |
0.03 ns |
1.32 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
112.8 ns |
0.11 ns |
0.11 ns |
1.01 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
720.8 ns |
5.90 ns |
5.52 ns |
6.49 |
0.05 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
160.9 ns |
0.21 ns |
0.20 ns |
1.45 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
309.5 ns |
0.23 ns |
0.21 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
276.3 ns |
0.17 ns |
0.15 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
530.4 ns |
1.13 ns |
0.94 ns |
1.71 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
315.3 ns |
0.09 ns |
0.08 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
536.4 ns |
0.41 ns |
0.37 ns |
1.73 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.315 μs |
0.0016 μs |
0.0014 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,001.8 ns |
4.97 ns |
4.41 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,002.7 ns |
7.20 ns |
6.74 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,199.1 ns |
6.11 ns |
5.42 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,409.5 ns |
8.91 ns |
8.33 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
418.4 ns |
1.19 ns |
1.05 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
419.8 ns |
0.32 ns |
0.29 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
617.5 ns |
0.78 ns |
0.65 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,810.1 ns |
7.94 ns |
7.42 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
581.47 ns |
0.833 ns |
0.780 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
580.69 ns |
0.697 ns |
0.582 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
773.03 ns |
5.465 ns |
4.563 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
3,979.09 ns |
11.688 ns |
10.361 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.31 ns |
0.978 ns |
1.201 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.58 ns |
1.012 ns |
1.166 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
239.85 ns |
0.360 ns |
0.319 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,535.18 ns |
34.834 ns |
32.584 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
542.9 ns |
0.25 ns |
0.21 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,953.2 ns |
8.24 ns |
7.30 ns |
12.81 |
0.01 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,208.4 ns |
1.52 ns |
1.27 ns |
2.23 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,194.4 ns |
1.35 ns |
1.19 ns |
2.20 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,622.2 ns |
48.63 ns |
45.49 ns |
17.72 |
0.08 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
544.1 ns |
0.59 ns |
0.53 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
566,262.2 ns |
1,322.07 ns |
1,236.66 ns |
1,040.73 |
2.41 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,894.6 ns |
5.60 ns |
4.97 ns |
3.48 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,916.3 ns |
6.55 ns |
6.13 ns |
3.52 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
732,982.9 ns |
1,269.13 ns |
1,059.78 ns |
1,347.14 |
2.26 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
553.1 ns |
0.21 ns |
0.18 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,689,156.0 ns |
266,576.07 ns |
236,312.74 ns |
106,103.77 |
414.12 |
333.3333 |
222.2222 |
222.2222 |
16000852 B |
46,514.10 |
| InvokeIntArrayFixed |
100000 |
60,084.0 ns |
372.59 ns |
330.29 ns |
108.63 |
0.58 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,191.5 ns |
358.03 ns |
317.39 ns |
108.82 |
0.56 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,758,484.8 ns |
567,556.51 ns |
530,892.71 ns |
155,042.24 |
930.87 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-22.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.135 μs |
0.0069 μs |
0.0065 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.119 μs |
0.0056 μs |
0.0053 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.141 μs |
0.0035 μs |
0.0027 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
108.9 ns |
0.03 ns |
0.03 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
146.7 ns |
0.03 ns |
0.02 ns |
1.35 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.0 ns |
0.03 ns |
0.02 ns |
1.06 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
708.0 ns |
2.45 ns |
2.29 ns |
6.50 |
0.02 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
123.6 ns |
0.06 ns |
0.06 ns |
1.13 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
148.3 ns |
0.04 ns |
0.04 ns |
1.36 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
113.3 ns |
0.07 ns |
0.07 ns |
1.04 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
704.3 ns |
1.12 ns |
1.05 ns |
6.47 |
0.01 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
148.0 ns |
0.04 ns |
0.04 ns |
1.36 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
302.2 ns |
0.06 ns |
0.06 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
267.6 ns |
0.11 ns |
0.10 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
534.4 ns |
0.55 ns |
0.51 ns |
1.77 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
314.4 ns |
0.16 ns |
0.15 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
562.8 ns |
0.57 ns |
0.50 ns |
1.86 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.323 μs |
0.0017 μs |
0.0014 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,014.5 ns |
1.00 ns |
0.84 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,017.0 ns |
4.24 ns |
3.76 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,246.5 ns |
3.33 ns |
3.12 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,449.6 ns |
37.58 ns |
29.34 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
430.9 ns |
0.41 ns |
0.36 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
436.1 ns |
0.30 ns |
0.25 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
626.1 ns |
4.19 ns |
3.92 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,681.7 ns |
20.97 ns |
19.61 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
578.39 ns |
0.785 ns |
0.613 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
579.29 ns |
2.948 ns |
2.758 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
773.76 ns |
3.381 ns |
2.824 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
3,942.72 ns |
24.365 ns |
22.791 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
49.11 ns |
0.318 ns |
0.297 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
49.09 ns |
0.933 ns |
0.998 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
237.20 ns |
0.315 ns |
0.295 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,303.43 ns |
32.762 ns |
30.646 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
550.6 ns |
0.30 ns |
0.27 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,080.7 ns |
8.21 ns |
7.28 ns |
12.86 |
0.01 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,199.8 ns |
1.97 ns |
1.74 ns |
2.18 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,211.7 ns |
1.84 ns |
1.72 ns |
2.20 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,248.8 ns |
24.23 ns |
22.66 ns |
16.80 |
0.04 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
548.2 ns |
0.43 ns |
0.38 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
564,871.1 ns |
1,158.55 ns |
1,083.70 ns |
1,030.47 |
2.04 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,911.4 ns |
11.32 ns |
10.59 ns |
3.49 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,907.4 ns |
5.75 ns |
5.38 ns |
3.48 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
753,161.1 ns |
943.33 ns |
787.73 ns |
1,373.96 |
1.67 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
552.6 ns |
0.51 ns |
0.43 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,280,738.1 ns |
149,150.89 ns |
139,515.83 ns |
107,275.00 |
257.29 |
333.3333 |
222.2222 |
222.2222 |
16000700 B |
46,513.66 |
| InvokeIntArrayFixed |
100000 |
60,417.9 ns |
170.36 ns |
151.02 ns |
109.33 |
0.28 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,464.8 ns |
281.62 ns |
249.65 ns |
109.42 |
0.44 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
83,513,760.4 ns |
478,844.09 ns |
373,849.97 ns |
151,127.31 |
659.52 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.132 μs |
0.0095 μs |
0.0089 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.145 μs |
0.0089 μs |
0.0083 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.141 μs |
0.0082 μs |
0.0077 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
103.8 ns |
0.05 ns |
0.04 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
146.9 ns |
0.05 ns |
0.04 ns |
1.41 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.3 ns |
0.02 ns |
0.02 ns |
1.11 |
- |
- |
0.00 |
| SetInstanceStringField |
717.5 ns |
1.08 ns |
1.01 ns |
6.91 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
120.6 ns |
0.03 ns |
0.03 ns |
1.16 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
144.0 ns |
0.05 ns |
0.05 ns |
1.39 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
114.4 ns |
0.03 ns |
0.03 ns |
1.10 |
- |
- |
0.00 |
| SetStaticStringField |
701.9 ns |
0.98 ns |
0.92 ns |
6.76 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
150.8 ns |
0.05 ns |
0.04 ns |
1.45 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
306.1 ns |
0.06 ns |
0.05 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
265.7 ns |
0.07 ns |
0.07 ns |
0.87 |
- |
- |
NA |
| InvokeStaticWithFeedback |
548.6 ns |
0.64 ns |
0.53 ns |
1.79 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
306.9 ns |
0.11 ns |
0.11 ns |
1.00 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
547.9 ns |
0.40 ns |
0.35 ns |
1.79 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.314 μs |
0.0043 μs |
0.0038 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,041.6 ns |
4.44 ns |
3.94 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,031.1 ns |
3.92 ns |
3.48 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,241.3 ns |
5.56 ns |
5.20 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,978.1 ns |
16.06 ns |
15.03 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
432.9 ns |
2.38 ns |
2.22 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
437.0 ns |
0.59 ns |
0.52 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
625.5 ns |
0.71 ns |
0.63 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,036.9 ns |
18.00 ns |
16.84 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
601.49 ns |
0.823 ns |
0.770 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
603.81 ns |
5.063 ns |
3.953 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
784.57 ns |
5.694 ns |
5.326 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,310.44 ns |
32.927 ns |
30.800 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
50.87 ns |
1.015 ns |
0.900 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.76 ns |
1.075 ns |
1.006 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
239.49 ns |
0.375 ns |
0.351 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,660.45 ns |
33.426 ns |
31.266 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
527.8 ns |
0.36 ns |
0.30 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,069.0 ns |
6.31 ns |
5.60 ns |
13.39 |
0.01 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,198.2 ns |
1.61 ns |
1.43 ns |
2.27 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,203.2 ns |
2.72 ns |
2.54 ns |
2.28 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,899.0 ns |
30.37 ns |
28.40 ns |
16.86 |
0.05 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
537.1 ns |
0.35 ns |
0.31 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
578,933.9 ns |
1,406.36 ns |
1,315.51 ns |
1,077.95 |
2.45 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,928.5 ns |
8.06 ns |
7.53 ns |
3.59 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,905.1 ns |
8.35 ns |
7.81 ns |
3.55 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
743,145.5 ns |
1,714.78 ns |
1,338.79 ns |
1,383.70 |
2.52 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
534.8 ns |
0.47 ns |
0.41 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,325,293.9 ns |
142,466.59 ns |
133,263.34 ns |
110,926.47 |
255.11 |
250.0000 |
125.0000 |
125.0000 |
16000530 B |
46,513.17 |
| InvokeIntArrayFixed |
100000 |
60,218.3 ns |
206.30 ns |
172.27 ns |
112.60 |
0.32 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,523.9 ns |
375.15 ns |
350.91 ns |
113.17 |
0.64 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
82,549,316.9 ns |
609,238.00 ns |
569,881.61 ns |
154,350.76 |
1,038.30 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.118 μs |
0.0093 μs |
0.0083 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.111 μs |
0.0114 μs |
0.0106 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.115 μs |
0.0109 μs |
0.0102 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
107.6 ns |
0.04 ns |
0.04 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
149.2 ns |
0.03 ns |
0.02 ns |
1.39 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
114.1 ns |
0.06 ns |
0.06 ns |
1.06 |
- |
- |
0.00 |
| SetInstanceStringField |
709.8 ns |
0.79 ns |
0.70 ns |
6.60 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
124.8 ns |
0.02 ns |
0.02 ns |
1.16 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
150.8 ns |
0.06 ns |
0.05 ns |
1.40 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
116.6 ns |
0.06 ns |
0.05 ns |
1.08 |
- |
- |
0.00 |
| SetStaticStringField |
707.2 ns |
0.88 ns |
0.83 ns |
6.57 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
154.6 ns |
0.04 ns |
0.03 ns |
1.44 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
305.9 ns |
0.15 ns |
0.14 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
270.9 ns |
0.10 ns |
0.10 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
525.6 ns |
0.32 ns |
0.27 ns |
1.72 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
325.5 ns |
0.16 ns |
0.15 ns |
1.06 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
556.7 ns |
0.13 ns |
0.11 ns |
1.82 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.323 μs |
0.0015 μs |
0.0013 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
996.9 ns |
5.45 ns |
5.10 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,005.7 ns |
6.35 ns |
5.94 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,222.2 ns |
6.04 ns |
5.35 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,451.1 ns |
9.27 ns |
8.67 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
436.1 ns |
0.62 ns |
0.58 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
422.0 ns |
0.29 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
615.3 ns |
0.67 ns |
0.59 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,835.4 ns |
12.06 ns |
11.28 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
602.08 ns |
0.339 ns |
0.283 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
590.25 ns |
0.377 ns |
0.314 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
779.76 ns |
6.172 ns |
5.773 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,177.98 ns |
11.457 ns |
10.717 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
52.46 ns |
0.978 ns |
1.004 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.88 ns |
0.779 ns |
0.729 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
241.87 ns |
0.320 ns |
0.299 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,589.06 ns |
36.088 ns |
33.757 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
538.2 ns |
0.30 ns |
0.27 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,059.3 ns |
18.29 ns |
17.10 ns |
13.12 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,182.5 ns |
1.52 ns |
1.35 ns |
2.20 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,182.3 ns |
1.91 ns |
1.69 ns |
2.20 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,166.2 ns |
35.07 ns |
32.80 ns |
17.03 |
0.06 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
542.8 ns |
0.34 ns |
0.30 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
565,161.0 ns |
1,521.45 ns |
1,423.16 ns |
1,041.20 |
2.60 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,898.7 ns |
16.74 ns |
15.66 ns |
3.50 |
0.03 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,879.4 ns |
20.92 ns |
19.57 ns |
3.46 |
0.03 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
730,291.1 ns |
1,565.61 ns |
1,307.36 ns |
1,345.42 |
2.43 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
545.2 ns |
0.43 ns |
0.41 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,886,388.6 ns |
169,473.09 ns |
158,525.24 ns |
108,003.62 |
292.03 |
333.3333 |
222.2222 |
222.2222 |
16001988 B |
46,517.41 |
| InvokeIntArrayFixed |
100000 |
60,455.7 ns |
563.41 ns |
527.02 ns |
110.88 |
0.94 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,316.2 ns |
633.23 ns |
592.33 ns |
110.63 |
1.05 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,203,543.4 ns |
731,893.99 ns |
684,614.09 ns |
156,271.95 |
1,220.96 |
1000.0000 |
833.3333 |
833.3333 |
27894360 B |
81,088.26 |
core-ubuntu-22.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.121 μs |
0.0072 μs |
0.0063 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.123 μs |
0.0077 μs |
0.0072 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.117 μs |
0.0086 μs |
0.0081 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
110.9 ns |
0.02 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
152.2 ns |
0.07 ns |
0.06 ns |
1.37 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.1 ns |
0.02 ns |
0.02 ns |
1.04 |
- |
- |
0.00 |
| SetInstanceStringField |
703.1 ns |
1.11 ns |
1.04 ns |
6.34 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
122.1 ns |
0.03 ns |
0.03 ns |
1.10 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
150.8 ns |
0.10 ns |
0.09 ns |
1.36 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
109.2 ns |
0.02 ns |
0.01 ns |
0.98 |
- |
- |
0.00 |
| SetStaticStringField |
689.7 ns |
0.69 ns |
0.65 ns |
6.22 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
156.5 ns |
0.13 ns |
0.11 ns |
1.41 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
305.1 ns |
0.15 ns |
0.14 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
270.3 ns |
0.15 ns |
0.14 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
533.7 ns |
0.36 ns |
0.32 ns |
1.75 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
309.2 ns |
0.14 ns |
0.13 ns |
1.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
544.5 ns |
0.19 ns |
0.17 ns |
1.78 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.321 μs |
0.0029 μs |
0.0027 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,023.7 ns |
2.12 ns |
1.88 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,029.2 ns |
0.73 ns |
0.57 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,215.2 ns |
1.05 ns |
0.82 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,395.8 ns |
7.59 ns |
5.92 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
428.6 ns |
0.64 ns |
0.60 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
436.1 ns |
0.27 ns |
0.25 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
624.3 ns |
0.95 ns |
0.74 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,758.6 ns |
4.02 ns |
3.35 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
589.99 ns |
0.589 ns |
0.460 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
590.83 ns |
2.148 ns |
1.793 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
792.86 ns |
5.730 ns |
5.360 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,216.95 ns |
15.290 ns |
15.017 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
50.52 ns |
0.317 ns |
0.296 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
52.10 ns |
0.292 ns |
0.244 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
236.89 ns |
0.374 ns |
0.331 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,315.12 ns |
38.446 ns |
35.963 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
540.3 ns |
0.61 ns |
0.57 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,209.6 ns |
14.99 ns |
13.29 ns |
13.34 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,234.4 ns |
2.01 ns |
1.88 ns |
2.28 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,236.5 ns |
2.67 ns |
2.50 ns |
2.29 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,076.3 ns |
24.49 ns |
22.91 ns |
16.80 |
0.04 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
542.8 ns |
0.52 ns |
0.46 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
595,307.1 ns |
982.67 ns |
919.19 ns |
1,096.79 |
1.87 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,005.9 ns |
2.20 ns |
1.84 ns |
3.70 |
0.00 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,023.6 ns |
5.50 ns |
5.15 ns |
3.73 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
756,209.7 ns |
841.36 ns |
745.85 ns |
1,393.24 |
1.75 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
542.0 ns |
0.84 ns |
0.75 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
61,652,973.9 ns |
365,540.55 ns |
341,926.85 ns |
113,750.66 |
629.34 |
250.0000 |
125.0000 |
125.0000 |
16001355 B |
46,515.57 |
| InvokeIntArrayFixed |
100000 |
61,414.7 ns |
303.42 ns |
268.97 ns |
113.31 |
0.50 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,716.4 ns |
387.29 ns |
362.27 ns |
113.87 |
0.66 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,452,549.0 ns |
563,793.57 ns |
499,788.31 ns |
157,661.23 |
915.15 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.160 μs |
0.0021 μs |
0.0017 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.170 μs |
0.0119 μs |
0.0112 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.156 μs |
0.0021 μs |
0.0016 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
107.8 ns |
0.03 ns |
0.03 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
147.5 ns |
0.07 ns |
0.06 ns |
1.37 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
123.9 ns |
0.28 ns |
0.26 ns |
1.15 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
750.1 ns |
3.46 ns |
3.23 ns |
6.96 |
0.03 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
129.7 ns |
0.04 ns |
0.04 ns |
1.20 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
155.5 ns |
0.09 ns |
0.08 ns |
1.44 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
118.5 ns |
0.05 ns |
0.05 ns |
1.10 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
733.5 ns |
2.01 ns |
1.88 ns |
6.80 |
0.02 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
152.4 ns |
0.10 ns |
0.09 ns |
1.41 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
380.2 ns |
0.23 ns |
0.21 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
346.5 ns |
0.21 ns |
0.20 ns |
0.91 |
- |
- |
NA |
| InvokeStaticWithFeedback |
536.8 ns |
0.49 ns |
0.41 ns |
1.41 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
399.8 ns |
0.35 ns |
0.33 ns |
1.05 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
562.6 ns |
0.51 ns |
0.45 ns |
1.48 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.336 μs |
0.0023 μs |
0.0020 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,066.9 ns |
7.47 ns |
6.98 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,065.2 ns |
7.01 ns |
6.56 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,279.5 ns |
8.01 ns |
7.49 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,686.3 ns |
19.00 ns |
17.78 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
455.5 ns |
0.53 ns |
0.44 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
449.1 ns |
0.93 ns |
0.82 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
645.5 ns |
0.40 ns |
0.33 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,002.6 ns |
14.68 ns |
13.74 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
617.71 ns |
1.311 ns |
1.226 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
619.41 ns |
1.103 ns |
0.921 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
814.11 ns |
7.773 ns |
7.271 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,280.89 ns |
11.521 ns |
10.777 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
58.98 ns |
1.120 ns |
1.289 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
59.24 ns |
1.126 ns |
1.157 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
249.68 ns |
0.398 ns |
0.372 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,572.99 ns |
16.527 ns |
15.459 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
531.1 ns |
0.26 ns |
0.23 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,138.4 ns |
10.64 ns |
9.43 ns |
13.44 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,194.2 ns |
1.42 ns |
1.19 ns |
2.25 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,191.0 ns |
2.25 ns |
2.11 ns |
2.24 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,680.3 ns |
51.98 ns |
48.62 ns |
18.23 |
0.09 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
532.2 ns |
0.76 ns |
0.63 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
570,531.2 ns |
1,744.85 ns |
1,632.14 ns |
1,072.09 |
3.21 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,920.2 ns |
9.01 ns |
8.43 ns |
3.61 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,934.8 ns |
8.46 ns |
7.91 ns |
3.64 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
756,379.9 ns |
1,421.37 ns |
1,260.00 ns |
1,421.32 |
2.81 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
534.9 ns |
1.56 ns |
1.46 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,010,908.3 ns |
277,205.72 ns |
259,298.40 ns |
112,195.20 |
555.16 |
250.0000 |
125.0000 |
125.0000 |
16000911 B |
46,514.28 |
| InvokeIntArrayFixed |
100000 |
61,504.4 ns |
358.50 ns |
299.36 ns |
114.99 |
0.62 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,795.4 ns |
278.60 ns |
246.97 ns |
115.53 |
0.54 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,889,324.9 ns |
540,691.59 ns |
505,763.24 ns |
160,576.98 |
1,009.07 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.155 μs |
0.0134 μs |
0.0125 μs |
1.00 |
0.01 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.158 μs |
0.0143 μs |
0.0134 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.136 μs |
0.0110 μs |
0.0103 μs |
0.98 |
0.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
98.62 ns |
0.032 ns |
0.028 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
151.51 ns |
0.029 ns |
0.026 ns |
1.54 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
112.81 ns |
0.031 ns |
0.028 ns |
1.14 |
- |
- |
0.00 |
| SetInstanceStringField |
712.44 ns |
1.470 ns |
1.375 ns |
7.22 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
111.05 ns |
0.118 ns |
0.110 ns |
1.13 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
135.47 ns |
0.073 ns |
0.065 ns |
1.37 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
105.74 ns |
0.019 ns |
0.017 ns |
1.07 |
- |
- |
0.00 |
| SetStaticStringField |
707.50 ns |
1.177 ns |
1.101 ns |
7.17 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
148.50 ns |
0.057 ns |
0.050 ns |
1.51 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
288.2 ns |
0.06 ns |
0.05 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
259.7 ns |
0.06 ns |
0.06 ns |
0.90 |
- |
- |
NA |
| InvokeStaticWithFeedback |
532.9 ns |
0.43 ns |
0.38 ns |
1.85 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
305.0 ns |
0.08 ns |
0.07 ns |
1.06 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
541.0 ns |
0.59 ns |
0.53 ns |
1.88 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.359 μs |
0.0017 μs |
0.0015 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
997.0 ns |
3.05 ns |
2.55 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,009.2 ns |
6.18 ns |
5.48 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,199.8 ns |
7.43 ns |
6.95 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,581.8 ns |
11.42 ns |
10.68 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
411.4 ns |
0.66 ns |
0.62 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
423.1 ns |
0.65 ns |
0.57 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
633.5 ns |
1.34 ns |
1.05 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,981.8 ns |
18.83 ns |
16.69 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
570.01 ns |
1.128 ns |
0.942 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
572.72 ns |
1.303 ns |
1.219 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
775.89 ns |
7.397 ns |
6.919 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,163.23 ns |
13.359 ns |
12.496 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
52.15 ns |
1.033 ns |
1.306 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.74 ns |
0.980 ns |
0.962 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
242.91 ns |
0.828 ns |
0.734 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,645.34 ns |
29.821 ns |
27.894 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
535.5 ns |
0.73 ns |
0.68 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,052.9 ns |
9.21 ns |
8.17 ns |
13.17 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,176.2 ns |
3.32 ns |
3.11 ns |
2.20 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,203.8 ns |
1.75 ns |
1.64 ns |
2.25 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,876.3 ns |
27.82 ns |
26.02 ns |
16.58 |
0.05 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
539.1 ns |
0.37 ns |
0.33 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
559,418.0 ns |
745.20 ns |
622.28 ns |
1,037.78 |
1.27 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,907.9 ns |
6.18 ns |
5.78 ns |
3.54 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,891.1 ns |
5.83 ns |
5.45 ns |
3.51 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
732,153.6 ns |
1,525.00 ns |
1,273.45 ns |
1,358.22 |
2.41 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
532.4 ns |
0.31 ns |
0.27 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,814,415.4 ns |
164,279.24 ns |
153,666.91 ns |
110,461.85 |
284.78 |
333.3333 |
222.2222 |
222.2222 |
16001900 B |
46,517.15 |
| InvokeIntArrayFixed |
100000 |
60,305.8 ns |
297.80 ns |
263.99 ns |
113.26 |
0.48 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,063.6 ns |
177.51 ns |
157.35 ns |
112.81 |
0.29 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
83,933,692.0 ns |
1,191,571.01 ns |
1,114,596.27 ns |
157,639.43 |
2,028.72 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-22.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.118 μs |
0.0140 μs |
0.0124 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.116 μs |
0.0136 μs |
0.0128 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.124 μs |
0.0176 μs |
0.0164 μs |
1.01 |
0.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
111.7 ns |
0.05 ns |
0.04 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
158.0 ns |
0.04 ns |
0.03 ns |
1.41 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
114.9 ns |
0.07 ns |
0.07 ns |
1.03 |
- |
- |
0.00 |
| SetInstanceStringField |
707.9 ns |
0.93 ns |
0.83 ns |
6.34 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
121.9 ns |
0.03 ns |
0.02 ns |
1.09 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
145.7 ns |
0.04 ns |
0.04 ns |
1.30 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
116.9 ns |
0.05 ns |
0.05 ns |
1.05 |
- |
- |
0.00 |
| SetStaticStringField |
706.0 ns |
1.14 ns |
1.06 ns |
6.32 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
160.5 ns |
0.07 ns |
0.05 ns |
1.44 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
308.6 ns |
0.12 ns |
0.10 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
271.5 ns |
0.12 ns |
0.11 ns |
0.88 |
- |
- |
NA |
| InvokeStaticWithFeedback |
522.9 ns |
0.42 ns |
0.37 ns |
1.69 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
312.0 ns |
0.17 ns |
0.16 ns |
1.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
534.1 ns |
0.43 ns |
0.38 ns |
1.73 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.308 μs |
0.0019 μs |
0.0018 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,025.9 ns |
7.08 ns |
6.63 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
994.6 ns |
7.37 ns |
6.89 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,208.8 ns |
9.67 ns |
9.05 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,450.9 ns |
22.31 ns |
20.87 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
423.0 ns |
0.28 ns |
0.25 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
419.2 ns |
0.30 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
620.7 ns |
2.13 ns |
1.66 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,047.3 ns |
21.17 ns |
19.80 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
592.39 ns |
0.237 ns |
0.198 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
577.50 ns |
0.691 ns |
0.577 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
768.48 ns |
5.131 ns |
4.799 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,185.76 ns |
43.855 ns |
38.876 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.99 ns |
0.946 ns |
1.052 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.16 ns |
1.017 ns |
1.211 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
240.99 ns |
0.880 ns |
0.823 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,333.34 ns |
11.390 ns |
10.654 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
539.3 ns |
0.42 ns |
0.38 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,124.9 ns |
18.38 ns |
17.19 ns |
13.21 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,203.1 ns |
2.32 ns |
2.17 ns |
2.23 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,217.4 ns |
3.23 ns |
3.03 ns |
2.26 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,412.9 ns |
74.77 ns |
69.94 ns |
17.45 |
0.13 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
546.1 ns |
0.32 ns |
0.28 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
563,350.3 ns |
1,224.32 ns |
1,085.32 ns |
1,031.56 |
1.99 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,933.7 ns |
9.25 ns |
8.65 ns |
3.54 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,941.9 ns |
9.54 ns |
8.46 ns |
3.56 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
740,227.7 ns |
1,517.50 ns |
1,267.19 ns |
1,355.44 |
2.34 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
546.0 ns |
0.68 ns |
0.60 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,989,611.8 ns |
227,557.01 ns |
212,856.97 ns |
108,032.25 |
394.81 |
333.3333 |
222.2222 |
222.2222 |
16001436 B |
46,515.80 |
| InvokeIntArrayFixed |
100000 |
60,788.2 ns |
340.89 ns |
318.87 ns |
111.33 |
0.58 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,510.0 ns |
275.08 ns |
243.85 ns |
110.82 |
0.45 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
83,872,199.1 ns |
673,525.46 ns |
630,016.13 ns |
153,601.66 |
1,129.37 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.097 μs |
0.0082 μs |
0.0077 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.122 μs |
0.0072 μs |
0.0068 μs |
1.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.110 μs |
0.0068 μs |
0.0064 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
111.5 ns |
0.07 ns |
0.07 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
151.1 ns |
0.04 ns |
0.04 ns |
1.36 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.9 ns |
0.04 ns |
0.03 ns |
1.05 |
- |
- |
0.00 |
| SetInstanceStringField |
719.0 ns |
1.52 ns |
1.42 ns |
6.45 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
123.1 ns |
0.05 ns |
0.04 ns |
1.10 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
143.3 ns |
0.04 ns |
0.04 ns |
1.29 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
112.5 ns |
0.09 ns |
0.08 ns |
1.01 |
- |
- |
0.00 |
| SetStaticStringField |
704.6 ns |
1.05 ns |
0.93 ns |
6.32 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
153.7 ns |
0.07 ns |
0.06 ns |
1.38 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
304.6 ns |
0.06 ns |
0.05 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
271.1 ns |
0.12 ns |
0.11 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
536.6 ns |
0.22 ns |
0.19 ns |
1.76 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
315.7 ns |
0.17 ns |
0.15 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
561.7 ns |
0.43 ns |
0.36 ns |
1.84 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.323 μs |
0.0018 μs |
0.0016 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,001.4 ns |
0.74 ns |
0.58 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,001.4 ns |
6.47 ns |
6.05 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,204.4 ns |
2.18 ns |
1.70 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,865.5 ns |
30.84 ns |
28.84 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
441.8 ns |
0.44 ns |
0.41 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
435.3 ns |
0.35 ns |
0.32 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
626.1 ns |
3.70 ns |
3.28 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,953.2 ns |
29.93 ns |
24.99 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
581.86 ns |
0.773 ns |
0.604 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
574.56 ns |
0.792 ns |
0.619 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
768.07 ns |
6.402 ns |
5.988 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,144.17 ns |
30.042 ns |
36.894 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
49.86 ns |
0.968 ns |
1.115 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
48.71 ns |
0.356 ns |
0.297 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
238.59 ns |
0.318 ns |
0.297 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,320.63 ns |
39.384 ns |
36.840 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
539.0 ns |
0.93 ns |
0.87 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,328.3 ns |
9.26 ns |
8.21 ns |
13.60 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,209.9 ns |
2.69 ns |
2.51 ns |
2.24 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,218.3 ns |
1.77 ns |
1.48 ns |
2.26 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,243.1 ns |
14.27 ns |
12.65 ns |
17.15 |
0.04 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
540.9 ns |
0.35 ns |
0.31 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
590,641.5 ns |
1,287.27 ns |
1,204.11 ns |
1,091.94 |
2.24 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,934.6 ns |
6.43 ns |
6.02 ns |
3.58 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,935.4 ns |
13.08 ns |
12.24 ns |
3.58 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
760,927.1 ns |
892.39 ns |
834.74 ns |
1,406.75 |
1.69 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
547.2 ns |
0.34 ns |
0.30 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,060,929.2 ns |
361,879.24 ns |
338,502.07 ns |
109,761.57 |
601.89 |
250.0000 |
125.0000 |
125.0000 |
16000736 B |
46,513.77 |
| InvokeIntArrayFixed |
100000 |
60,442.4 ns |
666.93 ns |
623.85 ns |
110.46 |
1.11 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,760.0 ns |
733.89 ns |
686.48 ns |
111.04 |
1.22 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
87,764,500.4 ns |
775,997.84 ns |
725,868.86 ns |
160,389.95 |
1,287.43 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-22.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.152 μs |
0.0016 μs |
0.0013 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.146 μs |
0.0016 μs |
0.0013 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.171 μs |
0.0071 μs |
0.0063 μs |
1.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
106.4 ns |
0.03 ns |
0.02 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
148.9 ns |
0.03 ns |
0.03 ns |
1.40 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
117.7 ns |
0.04 ns |
0.04 ns |
1.11 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
733.7 ns |
1.21 ns |
1.13 ns |
6.89 |
0.01 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
129.1 ns |
0.04 ns |
0.03 ns |
1.21 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
146.6 ns |
0.04 ns |
0.04 ns |
1.38 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
116.1 ns |
0.01 ns |
0.01 ns |
1.09 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
732.7 ns |
2.35 ns |
2.20 ns |
6.88 |
0.02 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
146.6 ns |
0.06 ns |
0.05 ns |
1.38 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
382.9 ns |
0.15 ns |
0.14 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
349.0 ns |
0.19 ns |
0.18 ns |
0.91 |
- |
- |
NA |
| InvokeStaticWithFeedback |
532.7 ns |
0.49 ns |
0.44 ns |
1.39 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
391.7 ns |
0.19 ns |
0.18 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
545.0 ns |
0.33 ns |
0.28 ns |
1.42 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.339 μs |
0.0018 μs |
0.0017 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,049.4 ns |
4.38 ns |
4.10 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,050.6 ns |
7.74 ns |
7.24 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,254.2 ns |
1.74 ns |
1.54 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,787.4 ns |
6.38 ns |
5.97 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
444.9 ns |
0.55 ns |
0.52 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
446.7 ns |
0.84 ns |
0.78 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
648.0 ns |
1.58 ns |
1.47 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,056.6 ns |
7.02 ns |
6.22 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
626.52 ns |
0.456 ns |
0.356 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
620.00 ns |
0.735 ns |
0.613 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
812.95 ns |
4.009 ns |
3.750 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,235.63 ns |
9.289 ns |
8.689 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
58.90 ns |
1.116 ns |
1.146 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
59.68 ns |
0.607 ns |
0.568 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
252.45 ns |
0.608 ns |
0.568 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,565.54 ns |
11.560 ns |
10.813 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
552.9 ns |
0.27 ns |
0.24 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,173.0 ns |
6.56 ns |
5.81 ns |
12.97 |
0.01 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,257.7 ns |
1.12 ns |
0.99 ns |
2.27 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,242.4 ns |
1.83 ns |
1.71 ns |
2.25 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,297.6 ns |
42.76 ns |
40.00 ns |
18.62 |
0.07 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
541.7 ns |
0.31 ns |
0.26 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
579,507.9 ns |
1,096.86 ns |
1,026.00 ns |
1,069.79 |
1.90 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,968.1 ns |
3.64 ns |
3.22 ns |
3.63 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,953.1 ns |
6.48 ns |
6.06 ns |
3.61 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
779,278.0 ns |
764.65 ns |
596.99 ns |
1,438.57 |
1.25 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
550.1 ns |
0.53 ns |
0.47 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,194,410.9 ns |
186,676.05 ns |
165,483.46 ns |
107,607.16 |
303.63 |
250.0000 |
125.0000 |
125.0000 |
16000916 B |
46,514.29 |
| InvokeIntArrayFixed |
100000 |
62,222.1 ns |
499.16 ns |
389.71 ns |
113.11 |
0.69 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
62,228.5 ns |
268.07 ns |
237.64 ns |
113.12 |
0.43 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,765,832.1 ns |
834,687.03 ns |
780,766.77 ns |
157,728.15 |
1,380.50 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-22.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Median |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.155 μs |
0.0101 μs |
0.0095 μs |
1.148 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.180 μs |
0.0099 μs |
0.0092 μs |
1.174 μs |
1.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.166 μs |
0.0115 μs |
0.0107 μs |
1.158 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
106.2 ns |
0.03 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
143.1 ns |
0.05 ns |
0.05 ns |
1.35 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
114.3 ns |
0.05 ns |
0.05 ns |
1.08 |
- |
- |
0.00 |
| SetInstanceStringField |
723.3 ns |
1.09 ns |
1.02 ns |
6.81 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
121.9 ns |
0.04 ns |
0.04 ns |
1.15 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
142.4 ns |
0.05 ns |
0.05 ns |
1.34 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
107.8 ns |
0.02 ns |
0.02 ns |
1.02 |
- |
- |
0.00 |
| SetStaticStringField |
723.5 ns |
1.25 ns |
1.17 ns |
6.81 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
150.1 ns |
0.08 ns |
0.06 ns |
1.41 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
308.3 ns |
0.13 ns |
0.11 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
275.3 ns |
0.16 ns |
0.15 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
540.8 ns |
0.70 ns |
0.62 ns |
1.75 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
320.5 ns |
0.15 ns |
0.14 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
560.6 ns |
0.45 ns |
0.40 ns |
1.82 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.337 μs |
0.0027 μs |
0.0026 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,050.9 ns |
4.87 ns |
4.32 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,060.4 ns |
5.20 ns |
4.86 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,287.5 ns |
7.67 ns |
7.18 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,817.3 ns |
13.44 ns |
12.58 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
443.6 ns |
1.60 ns |
1.50 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
448.3 ns |
0.34 ns |
0.30 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
647.8 ns |
1.28 ns |
1.00 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,606.4 ns |
62.77 ns |
58.71 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
605.41 ns |
0.603 ns |
0.564 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
609.68 ns |
1.581 ns |
1.320 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
813.60 ns |
7.139 ns |
6.678 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,414.82 ns |
24.865 ns |
23.259 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.53 ns |
0.970 ns |
0.996 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.61 ns |
0.992 ns |
0.928 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
243.51 ns |
0.493 ns |
0.461 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,788.16 ns |
28.460 ns |
26.622 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
543.4 ns |
0.22 ns |
0.20 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,061.3 ns |
15.93 ns |
14.90 ns |
12.99 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,216.8 ns |
0.65 ns |
0.51 ns |
2.24 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,212.2 ns |
2.30 ns |
2.15 ns |
2.23 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,199.5 ns |
23.52 ns |
20.85 ns |
16.93 |
0.04 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
556.8 ns |
0.35 ns |
0.31 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
563,928.4 ns |
1,213.56 ns |
1,075.79 ns |
1,012.87 |
1.95 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,902.7 ns |
13.77 ns |
12.88 ns |
3.42 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,901.0 ns |
11.64 ns |
10.32 ns |
3.41 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
748,970.0 ns |
1,230.95 ns |
1,027.90 ns |
1,345.22 |
1.92 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
557.1 ns |
0.87 ns |
0.77 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,805,150.3 ns |
221,176.06 ns |
206,888.23 ns |
105,563.38 |
386.45 |
333.3333 |
222.2222 |
222.2222 |
16001481 B |
46,515.93 |
| InvokeIntArrayFixed |
100000 |
60,389.7 ns |
593.53 ns |
555.19 ns |
108.41 |
0.98 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,619.2 ns |
577.93 ns |
540.60 ns |
108.82 |
0.95 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,702,546.0 ns |
769,497.96 ns |
719,788.87 ns |
153,847.92 |
1,268.14 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-22.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.140 μs |
0.0146 μs |
0.0136 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.135 μs |
0.0146 μs |
0.0137 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.136 μs |
0.0109 μs |
0.0102 μs |
1.00 |
0.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
104.7 ns |
0.03 ns |
0.03 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
151.5 ns |
0.08 ns |
0.07 ns |
1.45 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.2 ns |
0.03 ns |
0.03 ns |
1.11 |
- |
- |
0.00 |
| SetInstanceStringField |
703.5 ns |
1.37 ns |
1.22 ns |
6.72 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
122.8 ns |
0.04 ns |
0.03 ns |
1.17 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
153.6 ns |
0.08 ns |
0.07 ns |
1.47 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
115.1 ns |
0.04 ns |
0.04 ns |
1.10 |
- |
- |
0.00 |
| SetStaticStringField |
694.8 ns |
0.91 ns |
0.85 ns |
6.64 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
149.0 ns |
0.05 ns |
0.04 ns |
1.42 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
312.7 ns |
0.06 ns |
0.06 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
276.5 ns |
0.18 ns |
0.15 ns |
0.88 |
- |
- |
NA |
| InvokeStaticWithFeedback |
530.9 ns |
0.42 ns |
0.38 ns |
1.70 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
324.7 ns |
0.16 ns |
0.15 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
544.0 ns |
0.34 ns |
0.30 ns |
1.74 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.326 μs |
0.0020 μs |
0.0019 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,012.0 ns |
6.80 ns |
6.36 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,025.7 ns |
6.16 ns |
5.47 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,232.7 ns |
7.96 ns |
7.45 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,059.2 ns |
51.53 ns |
48.20 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
427.0 ns |
0.40 ns |
0.35 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
426.7 ns |
0.47 ns |
0.44 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
630.4 ns |
1.11 ns |
0.86 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,191.2 ns |
18.58 ns |
17.38 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
595.91 ns |
0.522 ns |
0.488 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
593.91 ns |
0.317 ns |
0.281 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
786.35 ns |
3.469 ns |
2.709 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,287.09 ns |
33.165 ns |
31.022 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.45 ns |
1.005 ns |
1.234 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
52.48 ns |
0.906 ns |
0.848 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
242.22 ns |
0.707 ns |
0.661 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,398.39 ns |
14.673 ns |
13.725 ns |
0.0100 |
688 B |
core-ubuntu-22.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
556.2 ns |
0.29 ns |
0.26 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,057.9 ns |
9.41 ns |
7.86 ns |
12.69 |
0.01 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,216.2 ns |
1.63 ns |
1.45 ns |
2.19 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,213.6 ns |
1.42 ns |
1.26 ns |
2.18 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,241.0 ns |
49.13 ns |
45.96 ns |
16.62 |
0.08 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
548.5 ns |
0.35 ns |
0.27 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
563,468.1 ns |
1,392.87 ns |
1,302.89 ns |
1,027.30 |
2.35 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,929.1 ns |
3.77 ns |
3.35 ns |
3.52 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,910.0 ns |
6.43 ns |
5.70 ns |
3.48 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
764,605.3 ns |
1,519.63 ns |
1,268.96 ns |
1,394.01 |
2.33 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
548.9 ns |
0.56 ns |
0.49 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,447,798.3 ns |
170,830.83 ns |
159,795.26 ns |
106,484.08 |
296.66 |
333.3333 |
222.2222 |
222.2222 |
16002132 B |
46,517.83 |
| InvokeIntArrayFixed |
100000 |
60,257.5 ns |
268.76 ns |
251.40 ns |
109.78 |
0.45 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,522.1 ns |
184.33 ns |
163.40 ns |
110.26 |
0.30 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,753,936.1 ns |
496,515.40 ns |
414,612.84 ns |
156,232.21 |
740.25 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-22.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.132 μs |
0.0108 μs |
0.0096 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.135 μs |
0.0123 μs |
0.0115 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.131 μs |
0.0145 μs |
0.0136 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
103.2 ns |
0.03 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
145.4 ns |
0.24 ns |
0.22 ns |
1.41 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.6 ns |
0.06 ns |
0.05 ns |
1.12 |
- |
- |
0.00 |
| SetInstanceStringField |
723.0 ns |
1.13 ns |
1.00 ns |
7.01 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
123.6 ns |
0.04 ns |
0.03 ns |
1.20 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
150.7 ns |
0.07 ns |
0.06 ns |
1.46 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
114.0 ns |
0.06 ns |
0.06 ns |
1.10 |
- |
- |
0.00 |
| SetStaticStringField |
697.2 ns |
1.58 ns |
1.40 ns |
6.76 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
157.5 ns |
0.09 ns |
0.08 ns |
1.53 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
313.6 ns |
0.11 ns |
0.10 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
278.2 ns |
0.14 ns |
0.13 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
531.3 ns |
0.26 ns |
0.22 ns |
1.69 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
320.1 ns |
0.13 ns |
0.12 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
560.1 ns |
0.31 ns |
0.27 ns |
1.79 |
0.0048 |
344 B |
NA |
core-ubuntu-22.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.341 μs |
0.0021 μs |
0.0019 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-22.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,025.8 ns |
8.17 ns |
7.64 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,021.9 ns |
7.82 ns |
7.32 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,252.6 ns |
4.60 ns |
4.07 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,533.5 ns |
36.33 ns |
33.98 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
431.7 ns |
0.38 ns |
0.36 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
440.2 ns |
0.26 ns |
0.23 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
628.2 ns |
1.34 ns |
1.05 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,863.9 ns |
59.88 ns |
56.01 ns |
0.0076 |
712 B |
core-ubuntu-22.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Unknown processor, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
589.99 ns |
2.514 ns |
2.100 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
607.28 ns |
3.204 ns |
2.502 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
783.40 ns |
6.271 ns |
5.866 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,940.45 ns |
75.176 ns |
97.749 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
48.52 ns |
0.273 ns |
0.256 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
48.44 ns |
0.896 ns |
0.996 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
235.81 ns |
0.371 ns |
0.310 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,486.57 ns |
37.034 ns |
36.372 ns |
0.0100 |
688 B |
core-ubuntu-22.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.65GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
496.0 ns |
7.17 ns |
6.36 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,897.7 ns |
62.16 ns |
58.14 ns |
11.89 |
0.18 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,123.7 ns |
11.49 ns |
10.75 ns |
2.27 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,116.6 ns |
14.63 ns |
13.69 ns |
2.25 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
7,396.4 ns |
102.64 ns |
96.01 ns |
14.91 |
0.26 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
470.2 ns |
4.33 ns |
3.62 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
418,234.0 ns |
7,044.74 ns |
6,244.98 ns |
889.61 |
14.42 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,820.2 ns |
8.83 ns |
7.82 ns |
3.87 |
0.03 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,843.8 ns |
11.67 ns |
10.92 ns |
3.92 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
576,917.2 ns |
5,707.73 ns |
5,059.76 ns |
1,227.14 |
13.80 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
503.3 ns |
3.90 ns |
3.45 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
52,457,684.8 ns |
562,721.36 ns |
526,369.91 ns |
104,237.52 |
1,226.43 |
1100.0000 |
1000.0000 |
300.0000 |
16002059 B |
51,288.65 |
| InvokeIntArrayFixed |
100000 |
51,365.6 ns |
154.89 ns |
137.31 ns |
102.07 |
0.73 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
51,364.6 ns |
138.35 ns |
129.41 ns |
102.07 |
0.72 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
73,464,787.6 ns |
1,044,239.42 ns |
871,987.21 ns |
145,980.28 |
1,930.09 |
2000.0000 |
1857.1429 |
857.1429 |
27893327 B |
89,401.69 |
core-ubuntu-22.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.65GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.004 μs |
0.0122 μs |
0.0114 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.016 μs |
0.0103 μs |
0.0086 μs |
1.01 |
0.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.028 μs |
0.0113 μs |
0.0106 μs |
1.02 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.65GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
88.97 ns |
1.203 ns |
1.125 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
93.33 ns |
1.157 ns |
1.083 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
91.21 ns |
1.036 ns |
0.969 ns |
1.03 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
548.54 ns |
7.657 ns |
7.163 ns |
6.17 |
0.11 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
93.98 ns |
1.333 ns |
1.247 ns |
1.06 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
93.66 ns |
1.640 ns |
1.534 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
88.13 ns |
0.968 ns |
0.906 ns |
0.99 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
557.02 ns |
8.926 ns |
8.350 ns |
6.26 |
0.12 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
91.34 ns |
1.345 ns |
1.258 ns |
1.03 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.65GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
267.4 ns |
5.01 ns |
4.68 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
272.9 ns |
3.89 ns |
3.64 ns |
1.02 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
461.4 ns |
5.64 ns |
4.71 ns |
1.73 |
0.03 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
280.1 ns |
5.13 ns |
4.80 ns |
1.05 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
495.5 ns |
7.68 ns |
7.18 ns |
1.85 |
0.04 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.65GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.266 μs |
0.0207 μs |
0.0183 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.65GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
969.3 ns |
15.49 ns |
13.73 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
997.1 ns |
19.64 ns |
18.37 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,232.9 ns |
11.71 ns |
10.38 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,049.3 ns |
42.61 ns |
39.86 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
363.5 ns |
6.01 ns |
5.62 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
390.0 ns |
5.81 ns |
5.43 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
630.6 ns |
8.34 ns |
7.80 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,449.5 ns |
26.35 ns |
24.65 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.65GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
512.67 ns |
9.604 ns |
10.674 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
521.18 ns |
7.572 ns |
7.083 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
711.92 ns |
9.512 ns |
8.897 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,556.97 ns |
45.042 ns |
42.133 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
29.63 ns |
0.369 ns |
0.345 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
27.90 ns |
0.471 ns |
0.441 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
184.59 ns |
1.339 ns |
1.252 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,846.12 ns |
13.175 ns |
11.679 ns |
0.0350 |
656 B |
core-ubuntu-22.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.79GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
660.8 ns |
3.66 ns |
3.06 ns |
1.00 |
0.01 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,926.3 ns |
70.75 ns |
66.18 ns |
12.00 |
0.11 |
0.0763 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,467.1 ns |
12.08 ns |
11.30 ns |
2.22 |
0.02 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,420.9 ns |
7.12 ns |
6.31 ns |
2.15 |
0.01 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
10,461.9 ns |
64.93 ns |
60.74 ns |
15.83 |
0.11 |
0.1373 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
691.4 ns |
6.46 ns |
6.04 ns |
1.00 |
0.01 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
587,978.6 ns |
5,646.58 ns |
4,715.15 ns |
850.43 |
9.72 |
5.8594 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,231.9 ns |
9.28 ns |
8.22 ns |
3.23 |
0.03 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,269.5 ns |
15.43 ns |
14.43 ns |
3.28 |
0.03 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
756,846.1 ns |
5,089.73 ns |
4,760.94 ns |
1,094.68 |
11.38 |
9.7656 |
2.9297 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
722.2 ns |
6.99 ns |
6.19 ns |
1.00 |
0.01 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
73,095,365.2 ns |
498,909.06 ns |
466,679.85 ns |
101,221.84 |
1,040.89 |
714.2857 |
571.4286 |
285.7143 |
16001688 B |
51,287.46 |
| InvokeIntArrayFixed |
100000 |
78,757.3 ns |
690.68 ns |
646.06 ns |
109.06 |
1.25 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
78,989.6 ns |
686.97 ns |
642.59 ns |
109.38 |
1.25 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
97,688,097.8 ns |
1,812,296.70 ns |
1,861,095.28 ns |
135,277.65 |
2,741.00 |
1666.6667 |
1500.0000 |
1000.0000 |
27897589 B |
89,415.35 |
core-ubuntu-22.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.79GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.353 μs |
0.0137 μs |
0.0128 μs |
1.00 |
0.0134 |
360 B |
1.00 |
| NewWithSignature |
1.331 μs |
0.0105 μs |
0.0098 μs |
0.98 |
0.0134 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.410 μs |
0.0124 μs |
0.0116 μs |
1.04 |
0.0134 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.79GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
101.29 ns |
0.696 ns |
0.651 ns |
1.00 |
0.01 |
0.0010 |
24 B |
1.00 |
| SetInstanceIntField |
113.91 ns |
0.875 ns |
0.776 ns |
1.12 |
0.01 |
0.0010 |
24 B |
1.00 |
| GetInstanceStringField |
100.96 ns |
0.777 ns |
0.727 ns |
1.00 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
850.23 ns |
5.302 ns |
4.960 ns |
8.39 |
0.07 |
0.0095 |
256 B |
10.67 |
| GetStaticIntField |
108.40 ns |
1.197 ns |
1.120 ns |
1.07 |
0.01 |
0.0010 |
24 B |
1.00 |
| SetStaticIntField |
110.52 ns |
1.009 ns |
0.944 ns |
1.09 |
0.01 |
0.0010 |
24 B |
1.00 |
| GetStaticStringField |
96.24 ns |
0.529 ns |
0.442 ns |
0.95 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
741.44 ns |
5.446 ns |
4.828 ns |
7.32 |
0.06 |
0.0095 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
106.37 ns |
1.056 ns |
0.988 ns |
1.05 |
0.01 |
0.0010 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.79GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
326.6 ns |
3.30 ns |
3.08 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
330.1 ns |
4.00 ns |
3.74 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
626.4 ns |
6.60 ns |
6.17 ns |
1.92 |
0.03 |
0.0124 |
312 B |
NA |
| InvokeInstanceEmpty |
329.9 ns |
3.82 ns |
3.58 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
616.9 ns |
6.63 ns |
6.20 ns |
1.89 |
0.03 |
0.0124 |
312 B |
NA |
core-ubuntu-22.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.79GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.699 μs |
0.0117 μs |
0.0110 μs |
1.00 |
0.0267 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.79GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,301.7 ns |
11.19 ns |
10.47 ns |
0.0038 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,299.4 ns |
13.27 ns |
11.76 ns |
0.0038 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,710.9 ns |
15.38 ns |
14.38 ns |
0.0076 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,528.0 ns |
37.27 ns |
33.04 ns |
0.0229 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
492.3 ns |
5.99 ns |
5.60 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
535.3 ns |
5.18 ns |
4.84 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
871.3 ns |
8.10 ns |
7.57 ns |
0.0048 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,677.5 ns |
27.31 ns |
22.81 ns |
0.0229 |
680 B |
core-ubuntu-22.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.79GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
671.64 ns |
7.549 ns |
6.692 ns |
0.0025 |
80 B |
| PredicateSustained |
False |
False |
True |
665.39 ns |
7.290 ns |
6.819 ns |
0.0025 |
80 B |
| PredicateSustained |
False |
True |
False |
1,084.68 ns |
14.354 ns |
13.427 ns |
0.0060 |
176 B |
| PredicateSustained |
False |
True |
True |
4,799.77 ns |
55.699 ns |
52.100 ns |
0.0200 |
736 B |
| PredicateSustained |
True |
False |
False |
50.81 ns |
0.424 ns |
0.396 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
50.84 ns |
0.342 ns |
0.320 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
278.61 ns |
1.203 ns |
1.125 ns |
0.0038 |
96 B |
| PredicateSustained |
True |
True |
True |
3,972.55 ns |
54.353 ns |
50.842 ns |
0.0200 |
656 B |
core-ubuntu-22.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.62GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
682.1 ns |
11.59 ns |
10.84 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,674.8 ns |
143.12 ns |
133.87 ns |
11.26 |
0.26 |
0.1068 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,435.6 ns |
21.86 ns |
20.45 ns |
2.11 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,441.8 ns |
18.82 ns |
16.68 ns |
2.11 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,575.9 ns |
107.67 ns |
95.44 ns |
14.04 |
0.25 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
681.9 ns |
11.18 ns |
10.46 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
595,783.8 ns |
11,291.80 ns |
11,090.06 ns |
873.92 |
20.36 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,157.3 ns |
17.07 ns |
15.97 ns |
3.16 |
0.05 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,191.5 ns |
25.36 ns |
22.48 ns |
3.21 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
775,657.7 ns |
5,992.42 ns |
5,003.94 ns |
1,137.77 |
18.17 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
707.6 ns |
10.37 ns |
9.70 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
66,161,401.5 ns |
728,613.69 ns |
681,545.70 ns |
93,517.27 |
1,549.88 |
1000.0000 |
875.0000 |
250.0000 |
16001562 B |
51,287.06 |
| InvokeIntArrayFixed |
100000 |
71,706.6 ns |
407.19 ns |
340.02 ns |
101.36 |
1.42 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
71,081.2 ns |
292.20 ns |
273.32 ns |
100.47 |
1.38 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
93,297,637.6 ns |
1,759,022.72 ns |
1,645,390.94 ns |
131,873.57 |
2,849.23 |
2000.0000 |
1833.3333 |
1000.0000 |
27895305 B |
89,408.03 |
core-ubuntu-22.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.62GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.345 μs |
0.0212 μs |
0.0198 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.316 μs |
0.0163 μs |
0.0145 μs |
0.98 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.337 μs |
0.0161 μs |
0.0142 μs |
0.99 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.62GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
103.0 ns |
0.81 ns |
0.63 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
114.9 ns |
1.79 ns |
1.59 ns |
1.12 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
116.7 ns |
1.74 ns |
1.45 ns |
1.13 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
745.0 ns |
6.65 ns |
6.22 ns |
7.23 |
0.07 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
111.1 ns |
1.14 ns |
0.95 ns |
1.08 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
118.6 ns |
1.73 ns |
1.62 ns |
1.15 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
109.6 ns |
1.61 ns |
1.43 ns |
1.06 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
755.0 ns |
6.51 ns |
5.77 ns |
7.33 |
0.07 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
121.6 ns |
1.80 ns |
1.69 ns |
1.18 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.62GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
349.4 ns |
2.78 ns |
2.47 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
336.6 ns |
6.77 ns |
7.24 ns |
0.96 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
691.6 ns |
10.30 ns |
9.63 ns |
1.98 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
343.2 ns |
5.82 ns |
5.16 ns |
0.98 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
679.5 ns |
11.59 ns |
10.84 ns |
1.94 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.62GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.707 μs |
0.0172 μs |
0.0161 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.62GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,319.7 ns |
25.14 ns |
24.69 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,383.8 ns |
23.16 ns |
21.67 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,649.9 ns |
18.89 ns |
17.67 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,440.3 ns |
87.93 ns |
82.25 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
515.4 ns |
9.70 ns |
9.07 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
524.5 ns |
10.30 ns |
12.26 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
870.6 ns |
14.46 ns |
12.82 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,510.5 ns |
32.89 ns |
29.16 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.62GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
666.86 ns |
7.498 ns |
7.014 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
671.22 ns |
12.285 ns |
11.491 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
1,002.64 ns |
12.963 ns |
12.126 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,714.68 ns |
71.327 ns |
70.053 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
32.82 ns |
0.587 ns |
0.549 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
34.29 ns |
0.490 ns |
0.458 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
242.34 ns |
3.608 ns |
3.375 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,821.47 ns |
31.868 ns |
28.251 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.75GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
662.4 ns |
8.48 ns |
7.93 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,261.5 ns |
104.76 ns |
97.99 ns |
10.96 |
0.19 |
0.1068 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,487.4 ns |
29.35 ns |
27.46 ns |
2.25 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,475.6 ns |
20.73 ns |
19.39 ns |
2.23 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,723.0 ns |
50.52 ns |
42.19 ns |
14.68 |
0.18 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
669.4 ns |
12.63 ns |
11.81 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
538,702.5 ns |
6,343.33 ns |
5,623.19 ns |
804.99 |
15.90 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,181.6 ns |
22.98 ns |
21.49 ns |
3.26 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,191.3 ns |
23.20 ns |
20.56 ns |
3.27 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
766,897.7 ns |
9,965.76 ns |
8,834.38 ns |
1,145.99 |
23.27 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
705.6 ns |
14.02 ns |
13.12 ns |
1.00 |
0.03 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
64,339,026.4 ns |
923,849.29 ns |
818,968.33 ns |
91,211.91 |
1,997.17 |
1000.0000 |
875.0000 |
250.0000 |
16001734 B |
51,287.61 |
| InvokeIntArrayFixed |
100000 |
70,500.6 ns |
226.70 ns |
200.97 ns |
99.95 |
1.83 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
70,100.7 ns |
217.97 ns |
193.23 ns |
99.38 |
1.82 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
94,658,615.2 ns |
1,844,179.87 ns |
1,811,231.22 ns |
134,195.27 |
3,480.81 |
1833.3333 |
1666.6667 |
833.3333 |
27894973 B |
89,406.96 |
core-ubuntu-22.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.75GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.349 μs |
0.0201 μs |
0.0178 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.349 μs |
0.0162 μs |
0.0152 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.343 μs |
0.0095 μs |
0.0079 μs |
1.00 |
0.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.75GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
107.0 ns |
2.17 ns |
2.03 ns |
1.00 |
0.03 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
113.2 ns |
1.59 ns |
1.49 ns |
1.06 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
105.2 ns |
2.13 ns |
2.37 ns |
0.98 |
0.03 |
- |
- |
0.00 |
| SetInstanceStringField |
711.9 ns |
6.32 ns |
5.61 ns |
6.65 |
0.13 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
111.3 ns |
0.88 ns |
0.73 ns |
1.04 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
109.6 ns |
1.85 ns |
1.64 ns |
1.02 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
105.4 ns |
1.81 ns |
1.69 ns |
0.99 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
727.7 ns |
6.24 ns |
5.83 ns |
6.80 |
0.14 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
107.0 ns |
0.96 ns |
0.90 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.75GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
341.1 ns |
5.94 ns |
5.55 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
333.4 ns |
6.45 ns |
7.68 ns |
0.98 |
0.03 |
- |
- |
NA |
| InvokeStaticWithFeedback |
661.0 ns |
13.06 ns |
12.82 ns |
1.94 |
0.05 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
339.0 ns |
6.40 ns |
5.99 ns |
0.99 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
680.8 ns |
11.20 ns |
9.93 ns |
2.00 |
0.04 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.75GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.665 μs |
0.0143 μs |
0.0120 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.75GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,311.2 ns |
25.13 ns |
27.93 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,311.5 ns |
15.91 ns |
14.89 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,578.0 ns |
10.41 ns |
8.69 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,231.6 ns |
32.50 ns |
27.14 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
515.6 ns |
6.37 ns |
5.65 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
515.6 ns |
10.08 ns |
12.00 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
834.5 ns |
6.88 ns |
6.10 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,449.0 ns |
77.80 ns |
72.77 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.75GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
654.21 ns |
10.913 ns |
10.208 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
662.21 ns |
5.889 ns |
5.221 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
918.45 ns |
10.635 ns |
9.948 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,751.77 ns |
43.634 ns |
38.680 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
33.42 ns |
0.403 ns |
0.377 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
34.01 ns |
0.465 ns |
0.412 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
251.15 ns |
2.776 ns |
2.596 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,690.98 ns |
15.889 ns |
13.268 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.21GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
355.8 ns |
6.97 ns |
6.52 ns |
1.00 |
0.03 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
4,311.3 ns |
85.46 ns |
75.75 ns |
12.12 |
0.30 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
799.3 ns |
12.50 ns |
11.08 ns |
2.25 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
803.6 ns |
8.27 ns |
7.33 ns |
2.26 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
5,451.1 ns |
99.18 ns |
87.92 ns |
15.32 |
0.36 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
341.7 ns |
5.09 ns |
4.51 ns |
1.00 |
0.02 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
330,540.2 ns |
6,393.70 ns |
7,611.25 ns |
967.60 |
24.98 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,060.6 ns |
12.53 ns |
11.72 ns |
3.10 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,053.2 ns |
20.64 ns |
21.20 ns |
3.08 |
0.07 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
428,972.5 ns |
6,567.02 ns |
6,142.79 ns |
1,255.74 |
23.57 |
15.6250 |
7.3242 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
349.9 ns |
3.91 ns |
3.46 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
39,530,868.7 ns |
713,516.60 ns |
667,423.87 ns |
112,978.36 |
2,138.10 |
1142.8571 |
1000.0000 |
357.1429 |
16002190 B |
51,289.07 |
| InvokeIntArrayFixed |
100000 |
20,175.5 ns |
148.21 ns |
138.63 ns |
57.66 |
0.67 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
20,384.7 ns |
275.23 ns |
243.98 ns |
58.26 |
0.87 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
54,461,349.7 ns |
577,928.63 ns |
540,594.80 ns |
155,649.35 |
2,106.80 |
2000.0000 |
1888.8889 |
888.8889 |
27892988 B |
89,400.60 |
core-ubuntu-22.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.21GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
743.1 ns |
10.25 ns |
8.00 ns |
1.00 |
0.01 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
747.7 ns |
10.64 ns |
9.44 ns |
1.01 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
751.8 ns |
11.40 ns |
10.66 ns |
1.01 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.21GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
58.65 ns |
0.591 ns |
0.553 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
63.62 ns |
0.592 ns |
0.495 ns |
1.08 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
59.73 ns |
0.558 ns |
0.495 ns |
1.02 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
427.18 ns |
3.066 ns |
2.868 ns |
7.28 |
0.08 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
60.61 ns |
1.241 ns |
1.274 ns |
1.03 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
62.59 ns |
0.814 ns |
0.679 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
57.85 ns |
0.736 ns |
0.688 ns |
0.99 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
416.63 ns |
4.179 ns |
3.490 ns |
7.10 |
0.09 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
62.40 ns |
0.727 ns |
0.607 ns |
1.06 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.21GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
167.3 ns |
3.18 ns |
2.97 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
168.2 ns |
1.87 ns |
1.74 ns |
1.01 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
331.3 ns |
3.74 ns |
3.50 ns |
1.98 |
0.04 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
163.2 ns |
2.51 ns |
2.22 ns |
0.98 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
342.8 ns |
4.31 ns |
3.60 ns |
2.05 |
0.04 |
0.0186 |
312 B |
NA |
core-ubuntu-22.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.21GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
916.9 ns |
12.06 ns |
10.07 ns |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.21GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
747.9 ns |
14.56 ns |
13.62 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
732.4 ns |
6.78 ns |
6.01 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
903.7 ns |
14.08 ns |
12.48 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,048.9 ns |
24.89 ns |
22.06 ns |
0.0420 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
235.6 ns |
3.46 ns |
3.24 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
236.9 ns |
3.25 ns |
2.72 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
434.0 ns |
7.21 ns |
6.74 ns |
0.0072 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,521.8 ns |
48.91 ns |
38.18 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.21GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
385.59 ns |
6.483 ns |
6.065 ns |
0.0046 |
80 B |
| PredicateSustained |
False |
False |
True |
368.93 ns |
5.204 ns |
4.868 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
True |
False |
516.33 ns |
7.050 ns |
6.594 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
2,582.59 ns |
36.707 ns |
34.335 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
31.52 ns |
0.230 ns |
0.192 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
31.17 ns |
0.611 ns |
0.653 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
152.34 ns |
2.243 ns |
2.098 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,160.49 ns |
31.618 ns |
28.029 ns |
0.0367 |
656 B |
core-ubuntu-22.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
664.2 ns |
8.23 ns |
7.70 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,485.5 ns |
82.93 ns |
77.57 ns |
11.27 |
0.17 |
0.1068 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,486.5 ns |
12.24 ns |
10.22 ns |
2.24 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,477.2 ns |
15.17 ns |
14.19 ns |
2.22 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
10,047.2 ns |
59.25 ns |
49.48 ns |
15.13 |
0.18 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
649.0 ns |
8.02 ns |
6.70 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
589,028.0 ns |
5,049.73 ns |
4,216.75 ns |
907.63 |
11.00 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,978.1 ns |
16.38 ns |
14.52 ns |
3.05 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,005.1 ns |
20.13 ns |
18.83 ns |
3.09 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
768,716.9 ns |
7,544.98 ns |
6,688.42 ns |
1,184.51 |
15.44 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
735.5 ns |
6.25 ns |
5.54 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
68,820,413.4 ns |
840,118.99 ns |
744,743.60 ns |
93,578.90 |
1,190.03 |
1000.0000 |
857.1429 |
285.7143 |
16001136 B |
51,285.69 |
| InvokeIntArrayFixed |
100000 |
48,418.5 ns |
514.77 ns |
456.33 ns |
65.84 |
0.77 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
48,323.2 ns |
943.56 ns |
882.60 ns |
65.71 |
1.26 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
92,687,010.1 ns |
1,834,486.44 ns |
1,801,710.98 ns |
126,031.62 |
2,546.44 |
2000.0000 |
1833.3333 |
1000.0000 |
27896905 B |
89,413.16 |
core-ubuntu-22.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.339 μs |
0.0224 μs |
0.0209 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.315 μs |
0.0173 μs |
0.0162 μs |
0.98 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.372 μs |
0.0129 μs |
0.0114 μs |
1.02 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
101.1 ns |
1.56 ns |
1.46 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
112.9 ns |
1.30 ns |
1.22 ns |
1.12 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
102.7 ns |
1.85 ns |
1.73 ns |
1.02 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
731.2 ns |
4.82 ns |
4.02 ns |
7.23 |
0.11 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
109.3 ns |
1.76 ns |
1.64 ns |
1.08 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
108.4 ns |
1.85 ns |
1.73 ns |
1.07 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
104.1 ns |
1.92 ns |
1.70 ns |
1.03 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
744.9 ns |
7.83 ns |
7.32 ns |
7.37 |
0.12 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
121.0 ns |
1.62 ns |
1.52 ns |
1.20 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
330.8 ns |
6.45 ns |
6.62 ns |
1.00 |
0.03 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
322.2 ns |
6.18 ns |
5.78 ns |
0.97 |
0.03 |
- |
- |
NA |
| InvokeStaticWithFeedback |
630.5 ns |
12.27 ns |
11.48 ns |
1.91 |
0.05 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
344.6 ns |
3.93 ns |
3.68 ns |
1.04 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
644.4 ns |
10.87 ns |
9.64 ns |
1.95 |
0.05 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.654 μs |
0.0211 μs |
0.0197 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,265.9 ns |
23.97 ns |
26.65 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,226.9 ns |
23.08 ns |
22.67 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,571.3 ns |
13.02 ns |
10.87 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,267.2 ns |
36.13 ns |
32.03 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
480.9 ns |
7.75 ns |
7.25 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
464.7 ns |
8.49 ns |
7.52 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
776.9 ns |
6.94 ns |
6.15 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,405.4 ns |
33.68 ns |
29.85 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
647.07 ns |
10.981 ns |
10.272 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
644.77 ns |
12.733 ns |
13.076 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
968.68 ns |
10.242 ns |
9.581 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,526.50 ns |
28.238 ns |
22.047 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
32.95 ns |
0.373 ns |
0.349 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
34.99 ns |
0.496 ns |
0.440 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
244.81 ns |
2.960 ns |
2.472 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,695.82 ns |
30.812 ns |
27.314 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.73GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
692.0 ns |
8.32 ns |
7.78 ns |
1.00 |
0.02 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,656.5 ns |
86.59 ns |
81.00 ns |
11.07 |
0.16 |
0.0763 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,424.7 ns |
8.83 ns |
7.82 ns |
2.06 |
0.02 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,418.1 ns |
8.04 ns |
7.52 ns |
2.05 |
0.02 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
10,432.0 ns |
79.03 ns |
70.06 ns |
15.08 |
0.19 |
0.1373 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
689.5 ns |
4.47 ns |
4.18 ns |
1.00 |
0.01 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
595,057.6 ns |
5,350.44 ns |
4,467.86 ns |
863.06 |
8.04 |
5.8594 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,952.2 ns |
16.71 ns |
14.82 ns |
2.83 |
0.03 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,953.4 ns |
16.80 ns |
15.71 ns |
2.83 |
0.03 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
762,212.9 ns |
7,861.15 ns |
7,353.32 ns |
1,105.50 |
12.20 |
9.7656 |
2.9297 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
678.2 ns |
7.03 ns |
6.58 ns |
1.00 |
0.01 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
71,045,160.5 ns |
511,334.87 ns |
453,285.04 ns |
104,762.49 |
1,171.24 |
714.2857 |
571.4286 |
285.7143 |
16001151 B |
51,285.74 |
| InvokeIntArrayFixed |
100000 |
54,591.5 ns |
500.64 ns |
390.87 ns |
80.50 |
0.93 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
54,471.6 ns |
583.92 ns |
546.20 ns |
80.32 |
1.08 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
99,749,662.0 ns |
1,240,180.44 ns |
1,160,065.55 ns |
147,089.86 |
2,150.67 |
1400.0000 |
1200.0000 |
800.0000 |
27895206 B |
89,407.71 |
core-ubuntu-22.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.73GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.315 μs |
0.0171 μs |
0.0160 μs |
1.00 |
0.02 |
0.0134 |
360 B |
1.00 |
| NewWithSignature |
1.327 μs |
0.0130 μs |
0.0122 μs |
1.01 |
0.01 |
0.0134 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.361 μs |
0.0100 μs |
0.0094 μs |
1.04 |
0.01 |
0.0134 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.73GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
103.55 ns |
1.362 ns |
1.274 ns |
1.00 |
0.02 |
0.0010 |
24 B |
1.00 |
| SetInstanceIntField |
117.30 ns |
0.943 ns |
0.882 ns |
1.13 |
0.02 |
0.0010 |
24 B |
1.00 |
| GetInstanceStringField |
105.79 ns |
1.167 ns |
1.092 ns |
1.02 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
727.75 ns |
4.143 ns |
3.876 ns |
7.03 |
0.09 |
0.0095 |
256 B |
10.67 |
| GetStaticIntField |
111.16 ns |
0.910 ns |
0.851 ns |
1.07 |
0.01 |
0.0010 |
24 B |
1.00 |
| SetStaticIntField |
108.27 ns |
0.956 ns |
0.848 ns |
1.05 |
0.01 |
0.0010 |
24 B |
1.00 |
| GetStaticStringField |
94.30 ns |
0.903 ns |
0.844 ns |
0.91 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
740.08 ns |
4.775 ns |
4.233 ns |
7.15 |
0.09 |
0.0095 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
108.11 ns |
1.047 ns |
0.979 ns |
1.04 |
0.02 |
0.0010 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.73GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
319.5 ns |
2.98 ns |
2.78 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
321.7 ns |
3.48 ns |
3.25 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
712.3 ns |
5.11 ns |
4.53 ns |
2.23 |
0.02 |
0.0124 |
312 B |
NA |
| InvokeInstanceEmpty |
323.7 ns |
2.01 ns |
1.78 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
690.8 ns |
2.73 ns |
2.42 ns |
2.16 |
0.02 |
0.0124 |
312 B |
NA |
core-ubuntu-22.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.73GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.641 μs |
0.0135 μs |
0.0120 μs |
1.00 |
0.0267 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.73GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,262.3 ns |
14.02 ns |
13.11 ns |
0.0038 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,263.4 ns |
12.63 ns |
11.82 ns |
0.0038 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,659.6 ns |
12.49 ns |
11.68 ns |
0.0076 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,410.3 ns |
31.08 ns |
29.07 ns |
0.0229 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
508.9 ns |
9.47 ns |
10.14 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
507.0 ns |
4.64 ns |
4.34 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
913.9 ns |
8.26 ns |
7.32 ns |
0.0048 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,582.1 ns |
32.58 ns |
30.48 ns |
0.0229 |
680 B |
core-ubuntu-22.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.73GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
646.65 ns |
7.887 ns |
7.378 ns |
0.0025 |
80 B |
| PredicateSustained |
False |
False |
True |
642.87 ns |
5.753 ns |
5.100 ns |
0.0025 |
80 B |
| PredicateSustained |
False |
True |
False |
950.66 ns |
7.694 ns |
7.197 ns |
0.0067 |
176 B |
| PredicateSustained |
False |
True |
True |
4,717.43 ns |
68.064 ns |
63.667 ns |
0.0200 |
736 B |
| PredicateSustained |
True |
False |
False |
50.00 ns |
0.980 ns |
1.555 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
49.31 ns |
0.976 ns |
1.490 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
291.55 ns |
1.341 ns |
1.255 ns |
0.0038 |
96 B |
| PredicateSustained |
True |
True |
True |
4,088.55 ns |
46.300 ns |
43.309 ns |
0.0200 |
656 B |
core-ubuntu-22.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.64GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
718.2 ns |
10.89 ns |
10.19 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
8,252.9 ns |
105.34 ns |
98.54 ns |
11.49 |
0.21 |
0.1068 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,486.1 ns |
16.07 ns |
15.03 ns |
2.07 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,506.2 ns |
9.31 ns |
8.25 ns |
2.10 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
10,073.0 ns |
83.44 ns |
78.05 ns |
14.03 |
0.22 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
678.0 ns |
11.54 ns |
10.79 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
591,603.4 ns |
6,119.73 ns |
5,424.98 ns |
872.80 |
15.41 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,239.7 ns |
27.70 ns |
25.91 ns |
3.30 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,278.1 ns |
23.34 ns |
20.69 ns |
3.36 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
782,733.8 ns |
6,720.32 ns |
5,611.77 ns |
1,154.77 |
19.37 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
712.6 ns |
8.90 ns |
7.89 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
69,795,323.4 ns |
820,252.65 ns |
727,132.61 ns |
97,958.25 |
1,430.16 |
1000.0000 |
857.1429 |
285.7143 |
16002282 B |
51,289.37 |
| InvokeIntArrayFixed |
100000 |
71,645.5 ns |
374.84 ns |
350.63 ns |
100.55 |
1.17 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
72,825.3 ns |
449.90 ns |
398.82 ns |
102.21 |
1.21 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
99,196,484.4 ns |
1,885,758.38 ns |
2,244,861.41 ns |
139,223.00 |
3,413.43 |
2000.0000 |
1800.0000 |
1000.0000 |
27894245 B |
89,404.63 |
core-ubuntu-22.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.64GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.440 μs |
0.0126 μs |
0.0106 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.389 μs |
0.0183 μs |
0.0171 μs |
0.96 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.356 μs |
0.0154 μs |
0.0144 μs |
0.94 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.64GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
112.0 ns |
1.63 ns |
1.52 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
122.4 ns |
1.96 ns |
1.83 ns |
1.09 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
108.8 ns |
1.16 ns |
1.08 ns |
0.97 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
817.8 ns |
9.79 ns |
9.16 ns |
7.30 |
0.12 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
115.5 ns |
1.33 ns |
1.25 ns |
1.03 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
121.8 ns |
1.79 ns |
1.68 ns |
1.09 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
120.2 ns |
2.03 ns |
1.90 ns |
1.07 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
806.2 ns |
9.30 ns |
8.24 ns |
7.20 |
0.12 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
124.2 ns |
1.61 ns |
1.51 ns |
1.11 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.64GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
395.3 ns |
5.36 ns |
4.75 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
379.0 ns |
6.52 ns |
5.78 ns |
0.96 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
664.2 ns |
7.42 ns |
6.94 ns |
1.68 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
403.8 ns |
7.38 ns |
6.90 ns |
1.02 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
723.5 ns |
8.74 ns |
8.18 ns |
1.83 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.64GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.735 μs |
0.0194 μs |
0.0182 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.64GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,363.8 ns |
26.37 ns |
29.30 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,378.6 ns |
22.49 ns |
21.03 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,671.8 ns |
20.64 ns |
19.31 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,472.9 ns |
33.30 ns |
29.52 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
493.5 ns |
7.09 ns |
6.63 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
491.0 ns |
3.23 ns |
2.86 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
865.4 ns |
6.10 ns |
5.09 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,696.7 ns |
37.10 ns |
34.71 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.64GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
729.26 ns |
11.500 ns |
10.757 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
False |
True |
706.13 ns |
13.747 ns |
13.501 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
1,037.49 ns |
18.656 ns |
17.451 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,969.56 ns |
81.431 ns |
76.170 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
34.00 ns |
0.528 ns |
0.493 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
34.15 ns |
0.547 ns |
0.512 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
241.74 ns |
2.398 ns |
2.243 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
4,070.20 ns |
49.538 ns |
46.338 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
608.5 ns |
11.15 ns |
10.43 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,198.1 ns |
87.95 ns |
82.27 ns |
11.83 |
0.24 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,414.7 ns |
21.63 ns |
18.06 ns |
2.33 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,410.5 ns |
16.77 ns |
15.69 ns |
2.32 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,527.7 ns |
109.66 ns |
102.58 ns |
15.66 |
0.31 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
618.4 ns |
8.94 ns |
8.36 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
538,531.8 ns |
3,472.70 ns |
3,248.37 ns |
871.02 |
12.42 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,293.9 ns |
34.57 ns |
28.87 ns |
3.71 |
0.07 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,281.5 ns |
22.04 ns |
20.62 ns |
3.69 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
724,521.8 ns |
6,335.34 ns |
5,290.30 ns |
1,171.84 |
17.33 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
604.7 ns |
11.70 ns |
10.94 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
65,661,947.2 ns |
960,637.99 ns |
898,581.37 ns |
108,610.69 |
2,368.42 |
1000.0000 |
875.0000 |
250.0000 |
16002108 B |
51,288.81 |
| InvokeIntArrayFixed |
100000 |
63,504.6 ns |
355.24 ns |
296.64 ns |
105.04 |
1.88 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
63,152.4 ns |
295.79 ns |
262.21 ns |
104.46 |
1.86 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
93,501,007.5 ns |
1,844,068.91 ns |
1,724,943.21 ns |
154,658.96 |
3,848.08 |
1833.3333 |
1666.6667 |
833.3333 |
27894671 B |
89,406.00 |
core-ubuntu-22.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.310 μs |
0.0230 μs |
0.0215 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.278 μs |
0.0142 μs |
0.0133 μs |
0.98 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.289 μs |
0.0168 μs |
0.0141 μs |
0.98 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
118.9 ns |
2.22 ns |
2.07 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
121.2 ns |
1.68 ns |
1.58 ns |
1.02 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
113.7 ns |
1.50 ns |
1.40 ns |
0.96 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
713.3 ns |
10.07 ns |
9.42 ns |
6.00 |
0.13 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
119.2 ns |
0.96 ns |
0.85 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
117.8 ns |
2.10 ns |
1.96 ns |
0.99 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
106.9 ns |
1.20 ns |
1.13 ns |
0.90 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
693.6 ns |
8.08 ns |
7.17 ns |
5.84 |
0.11 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
119.9 ns |
1.45 ns |
1.29 ns |
1.01 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
302.8 ns |
5.63 ns |
5.26 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
302.5 ns |
2.79 ns |
2.33 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
581.9 ns |
9.41 ns |
8.80 ns |
1.92 |
0.04 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
311.5 ns |
4.63 ns |
4.10 ns |
1.03 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
609.7 ns |
10.14 ns |
8.99 ns |
2.01 |
0.04 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.616 μs |
0.0082 μs |
0.0072 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,227.5 ns |
24.33 ns |
26.03 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,214.3 ns |
17.97 ns |
16.81 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,540.6 ns |
13.90 ns |
13.01 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,072.2 ns |
49.58 ns |
43.95 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
440.4 ns |
6.91 ns |
6.46 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
436.4 ns |
5.63 ns |
5.27 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
789.8 ns |
10.64 ns |
9.43 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,254.3 ns |
54.22 ns |
48.07 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
643.37 ns |
12.403 ns |
11.602 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
636.91 ns |
12.694 ns |
14.110 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
876.65 ns |
16.796 ns |
18.669 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,437.56 ns |
29.715 ns |
26.342 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
34.63 ns |
0.429 ns |
0.380 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
34.45 ns |
0.307 ns |
0.272 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
241.45 ns |
4.243 ns |
3.762 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,612.94 ns |
69.284 ns |
64.809 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
705.2 ns |
8.79 ns |
7.79 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,448.6 ns |
56.36 ns |
52.72 ns |
10.56 |
0.13 |
0.1068 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,445.3 ns |
16.95 ns |
15.86 ns |
2.05 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,432.6 ns |
12.77 ns |
11.95 ns |
2.03 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,805.0 ns |
72.04 ns |
67.39 ns |
13.91 |
0.17 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
688.9 ns |
13.10 ns |
12.86 ns |
1.00 |
0.03 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
552,214.7 ns |
5,425.93 ns |
4,809.94 ns |
801.84 |
15.99 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,152.6 ns |
14.27 ns |
13.35 ns |
3.13 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,172.0 ns |
35.24 ns |
32.97 ns |
3.15 |
0.07 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
760,512.2 ns |
13,637.76 ns |
12,756.77 ns |
1,104.29 |
26.83 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
698.1 ns |
11.43 ns |
10.69 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
67,536,808.6 ns |
1,163,861.20 ns |
1,088,676.49 ns |
96,769.14 |
2,081.56 |
1000.0000 |
857.1429 |
285.7143 |
16001941 B |
51,288.27 |
| InvokeIntArrayFixed |
100000 |
72,738.8 ns |
1,346.03 ns |
1,259.07 ns |
104.22 |
2.33 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
71,534.5 ns |
270.98 ns |
226.28 ns |
102.50 |
1.55 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
94,861,702.5 ns |
1,818,192.91 ns |
2,164,429.52 ns |
135,921.22 |
3,637.68 |
2000.0000 |
1800.0000 |
1000.0000 |
27894507 B |
89,405.47 |
core-ubuntu-22.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.318 μs |
0.0183 μs |
0.0171 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.359 μs |
0.0221 μs |
0.0206 μs |
1.03 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.326 μs |
0.0123 μs |
0.0109 μs |
1.01 |
0.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
99.97 ns |
1.687 ns |
1.578 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
112.87 ns |
2.276 ns |
2.129 ns |
1.13 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
104.62 ns |
1.076 ns |
0.954 ns |
1.05 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
752.42 ns |
9.385 ns |
8.320 ns |
7.53 |
0.14 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
111.14 ns |
1.948 ns |
1.822 ns |
1.11 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
117.76 ns |
1.858 ns |
1.647 ns |
1.18 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
107.72 ns |
1.112 ns |
1.040 ns |
1.08 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
803.98 ns |
6.118 ns |
5.424 ns |
8.04 |
0.13 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
120.92 ns |
2.387 ns |
2.451 ns |
1.21 |
0.03 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
334.2 ns |
5.62 ns |
5.25 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
320.9 ns |
4.74 ns |
4.44 ns |
0.96 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
672.6 ns |
13.35 ns |
12.49 ns |
2.01 |
0.05 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
335.7 ns |
4.01 ns |
3.75 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
676.9 ns |
8.11 ns |
7.59 ns |
2.03 |
0.04 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.697 μs |
0.0187 μs |
0.0175 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,250.6 ns |
15.90 ns |
14.10 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,287.2 ns |
25.55 ns |
25.10 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,615.9 ns |
22.75 ns |
21.28 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,203.7 ns |
57.90 ns |
54.16 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
518.8 ns |
10.16 ns |
9.50 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
489.1 ns |
9.57 ns |
8.95 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
796.7 ns |
10.25 ns |
9.59 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,416.0 ns |
32.75 ns |
30.64 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
657.68 ns |
11.690 ns |
10.935 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
650.73 ns |
8.520 ns |
7.970 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
954.67 ns |
13.793 ns |
12.902 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,658.58 ns |
80.506 ns |
75.305 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
33.46 ns |
0.391 ns |
0.365 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
32.82 ns |
0.598 ns |
0.530 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
250.58 ns |
4.172 ns |
3.902 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,798.15 ns |
40.155 ns |
35.596 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
628.6 ns |
10.35 ns |
9.17 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,021.7 ns |
82.78 ns |
77.43 ns |
11.17 |
0.20 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,381.7 ns |
11.27 ns |
9.99 ns |
2.20 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,384.1 ns |
17.49 ns |
16.36 ns |
2.20 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,530.6 ns |
167.69 ns |
156.86 ns |
15.16 |
0.32 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
609.3 ns |
4.02 ns |
3.14 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
534,120.1 ns |
6,428.42 ns |
6,013.15 ns |
876.60 |
10.50 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,250.4 ns |
28.98 ns |
27.11 ns |
3.69 |
0.05 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,288.1 ns |
18.92 ns |
17.70 ns |
3.76 |
0.03 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
731,336.2 ns |
10,901.59 ns |
10,197.35 ns |
1,200.27 |
17.27 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
589.4 ns |
5.06 ns |
4.23 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
65,244,572.0 ns |
1,198,731.92 ns |
1,121,294.58 ns |
110,697.90 |
1,994.57 |
1000.0000 |
875.0000 |
250.0000 |
16001999 B |
51,288.46 |
| InvokeIntArrayFixed |
100000 |
63,126.9 ns |
236.36 ns |
209.52 ns |
107.10 |
0.81 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
62,666.5 ns |
269.51 ns |
238.92 ns |
106.32 |
0.83 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
95,306,874.8 ns |
1,812,826.43 ns |
2,014,951.78 ns |
161,703.43 |
3,515.65 |
1833.3333 |
1666.6667 |
833.3333 |
27895388 B |
89,408.29 |
core-ubuntu-22.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.290 μs |
0.0242 μs |
0.0227 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.256 μs |
0.0225 μs |
0.0211 μs |
0.97 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.278 μs |
0.0163 μs |
0.0152 μs |
0.99 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
107.7 ns |
2.02 ns |
1.89 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
112.3 ns |
1.61 ns |
1.50 ns |
1.04 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
109.2 ns |
1.29 ns |
1.14 ns |
1.01 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
701.2 ns |
12.55 ns |
11.74 ns |
6.51 |
0.15 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
114.4 ns |
1.48 ns |
1.38 ns |
1.06 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
114.8 ns |
1.43 ns |
1.34 ns |
1.07 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
104.1 ns |
1.04 ns |
0.97 ns |
0.97 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
661.7 ns |
9.54 ns |
8.93 ns |
6.15 |
0.13 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
113.1 ns |
1.86 ns |
1.64 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
301.5 ns |
3.98 ns |
3.73 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
299.5 ns |
3.95 ns |
3.69 ns |
0.99 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
650.9 ns |
10.86 ns |
10.16 ns |
2.16 |
0.04 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
301.6 ns |
5.01 ns |
4.69 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
634.1 ns |
7.13 ns |
6.67 ns |
2.10 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.593 μs |
0.0229 μs |
0.0214 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,189.5 ns |
17.22 ns |
15.26 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,216.0 ns |
10.60 ns |
8.86 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,530.9 ns |
17.84 ns |
15.81 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,097.3 ns |
50.21 ns |
46.97 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
467.4 ns |
6.84 ns |
6.40 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
457.8 ns |
4.57 ns |
4.05 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
763.5 ns |
8.37 ns |
7.82 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,593.0 ns |
39.67 ns |
37.11 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
665.06 ns |
11.721 ns |
10.964 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
613.40 ns |
9.829 ns |
9.194 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
True |
False |
850.49 ns |
8.581 ns |
7.607 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,426.31 ns |
52.999 ns |
46.982 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
35.43 ns |
0.416 ns |
0.389 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
36.34 ns |
0.332 ns |
0.310 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
238.49 ns |
1.897 ns |
1.584 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,624.30 ns |
47.325 ns |
41.952 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
678.0 ns |
10.16 ns |
9.01 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,679.0 ns |
85.87 ns |
76.12 ns |
11.33 |
0.18 |
0.1068 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,490.6 ns |
17.28 ns |
16.17 ns |
2.20 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,480.8 ns |
8.29 ns |
6.92 ns |
2.18 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
10,059.2 ns |
162.90 ns |
152.38 ns |
14.84 |
0.29 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
668.2 ns |
6.00 ns |
5.61 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
582,410.3 ns |
3,829.83 ns |
3,395.04 ns |
871.63 |
8.59 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,249.1 ns |
22.33 ns |
20.88 ns |
3.37 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,269.6 ns |
17.07 ns |
15.97 ns |
3.40 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
833,448.4 ns |
6,970.43 ns |
6,179.11 ns |
1,247.33 |
13.48 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
682.1 ns |
9.55 ns |
8.93 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
70,579,716.4 ns |
805,870.44 ns |
753,811.71 ns |
103,484.05 |
1,690.74 |
1000.0000 |
857.1429 |
285.7143 |
16001136 B |
51,285.69 |
| InvokeIntArrayFixed |
100000 |
71,332.3 ns |
362.89 ns |
321.69 ns |
104.59 |
1.40 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
71,422.9 ns |
406.92 ns |
380.63 ns |
104.72 |
1.43 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
97,985,097.5 ns |
1,851,062.41 ns |
2,131,686.22 ns |
143,665.84 |
3,551.20 |
1833.3333 |
1666.6667 |
833.3333 |
27893661 B |
89,402.76 |
core-ubuntu-22.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.344 μs |
0.0166 μs |
0.0156 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.360 μs |
0.0140 μs |
0.0131 μs |
1.01 |
0.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.356 μs |
0.0146 μs |
0.0130 μs |
1.01 |
0.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
100.6 ns |
2.01 ns |
1.88 ns |
1.00 |
0.03 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
118.4 ns |
2.15 ns |
2.01 ns |
1.18 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
105.8 ns |
1.62 ns |
1.51 ns |
1.05 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
769.5 ns |
8.17 ns |
7.64 ns |
7.65 |
0.16 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
118.0 ns |
1.63 ns |
1.52 ns |
1.17 |
0.03 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
110.3 ns |
1.63 ns |
1.52 ns |
1.10 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
100.3 ns |
1.43 ns |
1.27 ns |
1.00 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
776.7 ns |
5.70 ns |
5.06 ns |
7.72 |
0.15 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
116.6 ns |
1.82 ns |
1.70 ns |
1.16 |
0.03 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
329.9 ns |
2.68 ns |
2.09 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
318.0 ns |
6.29 ns |
6.18 ns |
0.96 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
692.0 ns |
11.47 ns |
10.73 ns |
2.10 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
332.6 ns |
6.32 ns |
6.49 ns |
1.01 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
685.0 ns |
9.82 ns |
8.70 ns |
2.08 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.697 μs |
0.0234 μs |
0.0219 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,298.8 ns |
13.39 ns |
12.52 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,289.8 ns |
19.18 ns |
17.94 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,620.0 ns |
15.29 ns |
12.77 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,371.1 ns |
52.76 ns |
46.77 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
494.2 ns |
6.53 ns |
5.79 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
517.4 ns |
10.04 ns |
9.86 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
819.1 ns |
7.37 ns |
6.53 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,405.8 ns |
35.16 ns |
29.36 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
715.69 ns |
12.083 ns |
11.302 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
765.62 ns |
14.404 ns |
13.474 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
True |
False |
1,040.12 ns |
8.767 ns |
7.771 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,865.77 ns |
71.748 ns |
67.113 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
31.81 ns |
0.274 ns |
0.229 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
31.93 ns |
0.475 ns |
0.444 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
246.25 ns |
2.035 ns |
1.804 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,896.71 ns |
65.080 ns |
60.876 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
652.0 ns |
12.48 ns |
11.67 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,027.7 ns |
46.95 ns |
41.62 ns |
10.78 |
0.20 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,369.7 ns |
13.37 ns |
11.85 ns |
2.10 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,368.1 ns |
25.01 ns |
23.40 ns |
2.10 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,306.7 ns |
99.55 ns |
93.11 ns |
14.28 |
0.28 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
649.0 ns |
5.60 ns |
4.97 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
547,167.5 ns |
6,457.36 ns |
6,040.21 ns |
843.18 |
10.94 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,102.0 ns |
24.90 ns |
23.29 ns |
3.24 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,112.7 ns |
29.30 ns |
27.41 ns |
3.26 |
0.05 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
738,512.9 ns |
9,420.05 ns |
8,350.63 ns |
1,138.04 |
14.98 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
650.2 ns |
10.54 ns |
9.86 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
64,353,390.4 ns |
922,866.73 ns |
818,097.32 ns |
98,999.34 |
1,886.34 |
1000.0000 |
875.0000 |
250.0000 |
16001943 B |
51,288.28 |
| InvokeIntArrayFixed |
100000 |
71,412.3 ns |
307.22 ns |
272.34 ns |
109.86 |
1.65 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
71,607.9 ns |
377.97 ns |
353.56 ns |
110.16 |
1.69 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
91,216,710.5 ns |
1,717,696.52 ns |
1,522,693.22 ns |
140,325.07 |
3,049.58 |
1833.3333 |
1666.6667 |
833.3333 |
27894960 B |
89,406.92 |
core-ubuntu-22.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.297 μs |
0.0193 μs |
0.0180 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.266 μs |
0.0170 μs |
0.0159 μs |
0.98 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.260 μs |
0.0207 μs |
0.0193 μs |
0.97 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
102.1 ns |
1.03 ns |
0.86 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
107.1 ns |
1.64 ns |
1.54 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
101.0 ns |
1.70 ns |
1.59 ns |
0.99 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
727.0 ns |
10.48 ns |
9.81 ns |
7.12 |
0.11 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
104.5 ns |
0.76 ns |
0.67 ns |
1.02 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
106.0 ns |
1.93 ns |
1.81 ns |
1.04 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
107.3 ns |
2.05 ns |
1.92 ns |
1.05 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
723.9 ns |
4.47 ns |
3.96 ns |
7.09 |
0.07 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
120.3 ns |
0.95 ns |
0.85 ns |
1.18 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
329.4 ns |
5.96 ns |
5.58 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
330.4 ns |
5.29 ns |
4.69 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
662.5 ns |
8.31 ns |
7.78 ns |
2.01 |
0.04 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
339.2 ns |
4.55 ns |
4.26 ns |
1.03 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
644.3 ns |
9.29 ns |
8.69 ns |
1.96 |
0.04 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.575 μs |
0.0213 μs |
0.0189 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,270.5 ns |
24.18 ns |
23.74 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,232.0 ns |
24.21 ns |
23.78 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,573.4 ns |
16.21 ns |
14.37 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,173.7 ns |
65.14 ns |
60.93 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
478.8 ns |
9.56 ns |
8.94 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
481.8 ns |
6.64 ns |
5.89 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
771.3 ns |
11.52 ns |
10.77 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,271.9 ns |
71.14 ns |
66.55 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
636.07 ns |
8.561 ns |
7.589 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
639.98 ns |
9.227 ns |
8.631 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
909.06 ns |
17.645 ns |
17.330 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,459.63 ns |
66.117 ns |
61.846 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
33.03 ns |
0.433 ns |
0.383 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
35.01 ns |
0.478 ns |
0.447 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
243.99 ns |
2.707 ns |
2.400 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,644.61 ns |
61.627 ns |
54.631 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
469.2 ns |
6.40 ns |
5.99 ns |
1.00 |
0.02 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,413.6 ns |
62.50 ns |
55.41 ns |
11.54 |
0.18 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,108.9 ns |
7.64 ns |
6.77 ns |
2.36 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,059.2 ns |
6.17 ns |
5.47 ns |
2.26 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
7,366.3 ns |
51.60 ns |
43.09 ns |
15.70 |
0.21 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
483.0 ns |
7.43 ns |
6.95 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
395,484.8 ns |
3,799.37 ns |
3,553.94 ns |
819.01 |
13.44 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,805.7 ns |
19.56 ns |
18.30 ns |
3.74 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,786.3 ns |
12.43 ns |
11.02 ns |
3.70 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
583,809.0 ns |
5,294.40 ns |
4,952.38 ns |
1,209.01 |
19.54 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
479.0 ns |
4.92 ns |
4.60 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
49,419,402.4 ns |
502,939.86 ns |
470,450.26 ns |
103,171.14 |
1,347.62 |
1100.0000 |
1000.0000 |
300.0000 |
16001374 B |
51,286.46 |
| InvokeIntArrayFixed |
100000 |
50,630.9 ns |
134.70 ns |
119.41 ns |
105.70 |
1.01 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
51,130.5 ns |
336.71 ns |
314.96 ns |
106.74 |
1.18 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
76,747,353.1 ns |
1,479,675.22 ns |
1,384,089.12 ns |
160,222.73 |
3,166.53 |
2000.0000 |
1857.1429 |
857.1429 |
27893921 B |
89,403.59 |
core-ubuntu-22.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
980.0 ns |
8.65 ns |
7.67 ns |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
987.2 ns |
13.92 ns |
13.02 ns |
1.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
979.5 ns |
9.33 ns |
8.27 ns |
1.00 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
82.64 ns |
1.386 ns |
1.297 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
88.44 ns |
1.120 ns |
1.048 ns |
1.07 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
84.72 ns |
1.399 ns |
1.309 ns |
1.03 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
540.41 ns |
4.921 ns |
4.362 ns |
6.54 |
0.11 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
93.20 ns |
1.096 ns |
1.026 ns |
1.13 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
87.44 ns |
1.764 ns |
1.650 ns |
1.06 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
80.71 ns |
1.299 ns |
1.215 ns |
0.98 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
512.97 ns |
8.176 ns |
7.648 ns |
6.21 |
0.13 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
91.73 ns |
1.608 ns |
1.504 ns |
1.11 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
224.9 ns |
1.41 ns |
1.18 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
237.0 ns |
3.69 ns |
3.45 ns |
1.05 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
456.4 ns |
7.49 ns |
7.01 ns |
2.03 |
0.03 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
233.6 ns |
3.96 ns |
3.70 ns |
1.04 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
495.6 ns |
7.37 ns |
6.89 ns |
2.20 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.219 μs |
0.0206 μs |
0.0193 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
925.8 ns |
5.10 ns |
4.26 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
934.8 ns |
8.74 ns |
6.82 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,191.1 ns |
14.88 ns |
13.92 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,936.6 ns |
40.95 ns |
38.30 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
340.4 ns |
4.37 ns |
4.09 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
345.7 ns |
5.43 ns |
4.82 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
617.3 ns |
6.12 ns |
5.43 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,308.9 ns |
25.13 ns |
23.51 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
499.06 ns |
9.717 ns |
9.090 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
False |
True |
475.17 ns |
6.346 ns |
5.626 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
True |
False |
655.43 ns |
10.418 ns |
9.745 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,352.10 ns |
49.791 ns |
46.574 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
29.95 ns |
0.189 ns |
0.158 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
27.29 ns |
0.267 ns |
0.237 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
187.05 ns |
1.285 ns |
1.073 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,710.03 ns |
14.663 ns |
12.999 ns |
0.0350 |
656 B |
core-ubuntu-22.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
714.4 ns |
10.44 ns |
9.76 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
8,132.7 ns |
101.48 ns |
89.96 ns |
11.39 |
0.19 |
0.1068 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,516.5 ns |
18.10 ns |
16.04 ns |
2.12 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,500.2 ns |
6.45 ns |
5.38 ns |
2.10 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
10,213.9 ns |
113.83 ns |
106.48 ns |
14.30 |
0.24 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
710.8 ns |
7.78 ns |
6.90 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
632,014.0 ns |
7,807.08 ns |
7,302.75 ns |
889.20 |
12.95 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,267.6 ns |
28.68 ns |
25.43 ns |
3.19 |
0.05 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,300.0 ns |
19.85 ns |
18.57 ns |
3.24 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
806,083.1 ns |
7,773.27 ns |
7,271.12 ns |
1,134.10 |
14.48 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
694.9 ns |
10.62 ns |
9.94 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
76,811,428.6 ns |
1,458,009.21 ns |
1,363,822.72 ns |
110,552.35 |
2,436.23 |
1000.0000 |
857.1429 |
285.7143 |
16001381 B |
51,286.48 |
| InvokeIntArrayFixed |
100000 |
74,845.2 ns |
391.31 ns |
346.89 ns |
107.72 |
1.56 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
74,218.8 ns |
483.59 ns |
452.35 ns |
106.82 |
1.60 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
97,034,125.5 ns |
1,294,106.76 ns |
1,210,508.27 ns |
139,658.26 |
2,559.76 |
1833.3333 |
1666.6667 |
833.3333 |
27895223 B |
89,407.77 |
core-ubuntu-22.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.386 μs |
0.0190 μs |
0.0177 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.404 μs |
0.0118 μs |
0.0105 μs |
1.01 |
0.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.378 μs |
0.0167 μs |
0.0156 μs |
0.99 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
112.9 ns |
1.47 ns |
1.30 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
121.7 ns |
2.09 ns |
1.95 ns |
1.08 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
113.9 ns |
2.03 ns |
1.90 ns |
1.01 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
794.0 ns |
4.46 ns |
4.17 ns |
7.03 |
0.09 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
121.2 ns |
1.92 ns |
1.79 ns |
1.07 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
126.5 ns |
1.39 ns |
1.23 ns |
1.12 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
117.9 ns |
2.26 ns |
2.32 ns |
1.04 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
828.5 ns |
6.36 ns |
5.95 ns |
7.34 |
0.10 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
115.5 ns |
1.46 ns |
1.37 ns |
1.02 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
403.4 ns |
3.12 ns |
2.44 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
399.2 ns |
6.47 ns |
6.06 ns |
0.99 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
667.0 ns |
9.37 ns |
8.77 ns |
1.65 |
0.02 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
440.1 ns |
8.45 ns |
9.04 ns |
1.09 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
721.7 ns |
10.16 ns |
9.01 ns |
1.79 |
0.02 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.728 μs |
0.0264 μs |
0.0247 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,429.9 ns |
20.62 ns |
18.28 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,372.7 ns |
26.88 ns |
26.40 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,690.4 ns |
19.32 ns |
17.13 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,628.2 ns |
49.31 ns |
43.71 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
528.1 ns |
10.56 ns |
10.37 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
531.1 ns |
9.49 ns |
8.88 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
851.2 ns |
8.97 ns |
8.39 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,649.9 ns |
87.47 ns |
85.90 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
704.32 ns |
8.891 ns |
7.882 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
726.87 ns |
14.476 ns |
16.090 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
True |
False |
1,033.57 ns |
7.685 ns |
6.417 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,863.40 ns |
39.268 ns |
30.658 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
33.70 ns |
0.661 ns |
0.649 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
35.03 ns |
0.276 ns |
0.230 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
255.33 ns |
3.181 ns |
2.976 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,992.67 ns |
19.255 ns |
15.033 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.81GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
671.1 ns |
10.69 ns |
10.00 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,383.5 ns |
91.79 ns |
81.37 ns |
11.00 |
0.20 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,425.4 ns |
21.69 ns |
19.23 ns |
2.12 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,403.8 ns |
20.53 ns |
19.21 ns |
2.09 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,731.9 ns |
90.51 ns |
80.24 ns |
14.50 |
0.24 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
654.0 ns |
10.95 ns |
10.24 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
559,780.7 ns |
8,240.98 ns |
7,708.62 ns |
856.16 |
17.28 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,136.8 ns |
24.33 ns |
20.32 ns |
3.27 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,204.8 ns |
22.56 ns |
21.10 ns |
3.37 |
0.06 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
763,987.5 ns |
6,816.59 ns |
6,042.73 ns |
1,168.48 |
19.82 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
660.3 ns |
10.82 ns |
10.12 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
68,069,697.7 ns |
768,343.33 ns |
718,708.83 ns |
103,109.63 |
1,853.39 |
1000.0000 |
857.1429 |
285.7143 |
16002025 B |
51,288.54 |
| InvokeIntArrayFixed |
100000 |
71,343.6 ns |
463.35 ns |
410.74 ns |
108.07 |
1.71 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
71,570.9 ns |
435.93 ns |
386.44 ns |
108.41 |
1.70 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
94,733,134.0 ns |
1,765,518.74 ns |
2,033,174.01 ns |
143,498.49 |
3,679.47 |
2000.0000 |
1833.3333 |
1000.0000 |
27894313 B |
89,404.85 |
core-ubuntu-22.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.81GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.293 μs |
0.0199 μs |
0.0176 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.298 μs |
0.0132 μs |
0.0117 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.299 μs |
0.0204 μs |
0.0191 μs |
1.01 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.81GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
101.0 ns |
1.52 ns |
1.42 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
122.0 ns |
2.34 ns |
2.30 ns |
1.21 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
104.5 ns |
2.10 ns |
2.16 ns |
1.04 |
0.03 |
- |
- |
0.00 |
| SetInstanceStringField |
755.5 ns |
7.56 ns |
6.70 ns |
7.49 |
0.12 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
107.0 ns |
2.15 ns |
2.01 ns |
1.06 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
122.4 ns |
2.44 ns |
2.28 ns |
1.21 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
107.0 ns |
1.28 ns |
1.00 ns |
1.06 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
745.3 ns |
5.70 ns |
5.33 ns |
7.38 |
0.11 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
118.8 ns |
2.24 ns |
2.20 ns |
1.18 |
0.03 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.81GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
338.8 ns |
6.82 ns |
6.70 ns |
1.00 |
0.03 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
318.1 ns |
5.14 ns |
4.81 ns |
0.94 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
641.9 ns |
12.12 ns |
12.44 ns |
1.90 |
0.05 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
334.5 ns |
4.59 ns |
4.07 ns |
0.99 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
689.5 ns |
8.96 ns |
7.94 ns |
2.04 |
0.04 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.81GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.644 μs |
0.0179 μs |
0.0168 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.81GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,260.6 ns |
16.81 ns |
14.91 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,273.4 ns |
24.73 ns |
20.65 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,579.1 ns |
22.95 ns |
20.34 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,141.0 ns |
77.88 ns |
69.04 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
503.2 ns |
10.10 ns |
10.81 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
498.9 ns |
9.98 ns |
11.50 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
799.8 ns |
6.33 ns |
5.29 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,327.3 ns |
72.62 ns |
67.93 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.81GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
648.15 ns |
11.510 ns |
10.766 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
638.42 ns |
11.607 ns |
9.693 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
941.33 ns |
15.152 ns |
13.432 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,501.67 ns |
43.701 ns |
38.740 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
32.71 ns |
0.628 ns |
0.617 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
32.67 ns |
0.630 ns |
0.590 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
250.15 ns |
2.607 ns |
2.439 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,708.24 ns |
49.703 ns |
44.061 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
446.8 ns |
7.10 ns |
6.64 ns |
1.00 |
0.02 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,689.7 ns |
66.20 ns |
61.92 ns |
12.74 |
0.23 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,057.3 ns |
7.73 ns |
6.85 ns |
2.37 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,056.6 ns |
3.66 ns |
2.86 ns |
2.37 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
7,119.4 ns |
98.96 ns |
92.57 ns |
15.94 |
0.30 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
470.9 ns |
8.32 ns |
7.78 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
408,698.2 ns |
3,402.67 ns |
3,016.38 ns |
868.13 |
15.09 |
9.2773 |
2.4414 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,772.8 ns |
5.69 ns |
5.05 ns |
3.77 |
0.06 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,780.5 ns |
16.17 ns |
13.50 ns |
3.78 |
0.07 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
549,231.5 ns |
7,561.65 ns |
7,073.17 ns |
1,166.64 |
23.53 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
464.6 ns |
7.87 ns |
7.36 ns |
1.00 |
0.02 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
48,057,350.2 ns |
720,369.34 ns |
638,588.66 ns |
103,460.00 |
2,058.82 |
1000.0000 |
909.0909 |
272.7273 |
16002281 B |
51,289.36 |
| InvokeIntArrayFixed |
100000 |
50,520.3 ns |
212.26 ns |
198.55 ns |
108.76 |
1.70 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
50,527.7 ns |
199.32 ns |
166.44 ns |
108.78 |
1.69 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
72,298,882.6 ns |
1,437,445.46 ns |
2,592,010.87 ns |
155,648.25 |
6,001.63 |
2000.0000 |
1857.1429 |
857.1429 |
27894865 B |
89,406.62 |
core-ubuntu-22.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
982.3 ns |
12.16 ns |
10.78 ns |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
966.7 ns |
8.19 ns |
6.84 ns |
0.98 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
947.1 ns |
5.02 ns |
4.45 ns |
0.96 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
83.15 ns |
1.345 ns |
1.258 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
87.11 ns |
0.941 ns |
0.880 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
85.50 ns |
1.680 ns |
1.650 ns |
1.03 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
529.36 ns |
8.192 ns |
7.663 ns |
6.37 |
0.13 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
85.72 ns |
0.329 ns |
0.291 ns |
1.03 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
89.61 ns |
1.142 ns |
1.068 ns |
1.08 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
81.30 ns |
1.265 ns |
1.183 ns |
0.98 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
516.16 ns |
3.892 ns |
3.640 ns |
6.21 |
0.10 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
87.68 ns |
1.143 ns |
1.070 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
227.3 ns |
2.76 ns |
2.59 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
229.9 ns |
3.83 ns |
3.59 ns |
1.01 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
455.0 ns |
3.50 ns |
3.10 ns |
2.00 |
0.03 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
226.5 ns |
4.48 ns |
4.19 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
471.3 ns |
9.28 ns |
9.11 ns |
2.07 |
0.05 |
0.0186 |
312 B |
NA |
core-ubuntu-22.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.258 μs |
0.0150 μs |
0.0140 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
895.7 ns |
12.03 ns |
11.25 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
907.7 ns |
11.79 ns |
9.84 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,179.2 ns |
13.77 ns |
11.50 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,801.3 ns |
55.23 ns |
48.96 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
341.5 ns |
4.00 ns |
3.74 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
341.8 ns |
2.68 ns |
2.09 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
585.1 ns |
5.84 ns |
4.88 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,233.4 ns |
26.10 ns |
24.41 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
471.10 ns |
8.667 ns |
8.107 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
False |
True |
487.37 ns |
4.996 ns |
4.172 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
659.47 ns |
12.644 ns |
11.827 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,329.19 ns |
57.277 ns |
50.774 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
27.30 ns |
0.495 ns |
0.463 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
27.16 ns |
0.393 ns |
0.368 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
184.06 ns |
1.514 ns |
1.417 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,770.32 ns |
34.808 ns |
32.559 ns |
0.0350 |
656 B |
core-ubuntu-22.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
705.4 ns |
13.62 ns |
13.38 ns |
1.00 |
0.03 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,260.0 ns |
108.22 ns |
101.23 ns |
10.30 |
0.24 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,445.8 ns |
15.79 ns |
14.00 ns |
2.05 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,459.8 ns |
25.25 ns |
23.62 ns |
2.07 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,755.7 ns |
61.62 ns |
57.64 ns |
13.84 |
0.27 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
687.1 ns |
10.55 ns |
9.35 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
557,727.5 ns |
9,140.80 ns |
8,550.31 ns |
811.87 |
16.07 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,146.5 ns |
19.32 ns |
18.08 ns |
3.12 |
0.05 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,174.1 ns |
17.25 ns |
14.40 ns |
3.16 |
0.05 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
759,131.5 ns |
9,919.55 ns |
9,278.75 ns |
1,105.05 |
19.51 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
702.6 ns |
13.84 ns |
12.95 ns |
1.00 |
0.03 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
64,898,540.6 ns |
471,393.57 ns |
417,878.12 ns |
92,398.20 |
1,726.71 |
1000.0000 |
857.1429 |
285.7143 |
16000624 B |
51,284.05 |
| InvokeIntArrayFixed |
100000 |
71,389.9 ns |
393.59 ns |
368.16 ns |
101.64 |
1.86 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
71,455.1 ns |
174.22 ns |
145.48 ns |
101.73 |
1.80 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
95,098,483.1 ns |
1,890,714.20 ns |
2,023,043.01 ns |
135,394.85 |
3,681.48 |
1833.3333 |
1666.6667 |
833.3333 |
27893657 B |
89,402.75 |
core-ubuntu-22.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.293 μs |
0.0199 μs |
0.0186 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.281 μs |
0.0225 μs |
0.0210 μs |
0.99 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.338 μs |
0.0184 μs |
0.0173 μs |
1.04 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
105.2 ns |
1.86 ns |
1.74 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
111.2 ns |
1.79 ns |
1.67 ns |
1.06 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
102.7 ns |
2.02 ns |
1.99 ns |
0.98 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
741.3 ns |
8.10 ns |
7.58 ns |
7.05 |
0.13 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
111.1 ns |
1.75 ns |
1.64 ns |
1.06 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
119.4 ns |
2.08 ns |
1.95 ns |
1.14 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
104.0 ns |
1.84 ns |
1.72 ns |
0.99 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
699.4 ns |
4.36 ns |
3.87 ns |
6.65 |
0.11 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
118.4 ns |
1.37 ns |
1.14 ns |
1.13 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
329.5 ns |
6.09 ns |
5.70 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
337.3 ns |
6.50 ns |
6.96 ns |
1.02 |
0.03 |
- |
- |
NA |
| InvokeStaticWithFeedback |
674.9 ns |
13.08 ns |
12.23 ns |
2.05 |
0.05 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
348.3 ns |
5.23 ns |
4.64 ns |
1.06 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
704.2 ns |
12.01 ns |
11.24 ns |
2.14 |
0.05 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.641 μs |
0.0278 μs |
0.0260 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,265.0 ns |
22.68 ns |
23.29 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,306.6 ns |
24.13 ns |
22.57 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,627.9 ns |
20.94 ns |
18.56 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,164.3 ns |
51.64 ns |
43.12 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
518.3 ns |
9.78 ns |
9.15 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
519.1 ns |
8.12 ns |
7.20 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
812.9 ns |
10.16 ns |
9.50 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,416.2 ns |
39.35 ns |
32.86 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
643.01 ns |
12.691 ns |
13.033 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
632.59 ns |
10.653 ns |
9.965 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
927.04 ns |
13.585 ns |
12.708 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,686.49 ns |
73.783 ns |
69.017 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
33.59 ns |
0.502 ns |
0.469 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
33.89 ns |
0.516 ns |
0.482 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
256.36 ns |
3.477 ns |
3.082 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,788.41 ns |
45.398 ns |
42.465 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
651.2 ns |
11.52 ns |
10.78 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,734.4 ns |
151.85 ns |
149.14 ns |
11.88 |
0.29 |
0.1068 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,418.5 ns |
12.74 ns |
10.64 ns |
2.18 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,419.8 ns |
21.40 ns |
20.01 ns |
2.18 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,378.1 ns |
98.45 ns |
87.28 ns |
14.41 |
0.26 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
642.4 ns |
8.30 ns |
7.36 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
579,301.2 ns |
8,715.88 ns |
8,152.84 ns |
901.91 |
15.83 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,175.8 ns |
23.41 ns |
21.90 ns |
3.39 |
0.05 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,147.5 ns |
12.23 ns |
10.84 ns |
3.34 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
745,632.6 ns |
11,130.07 ns |
10,411.07 ns |
1,160.87 |
20.27 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
697.1 ns |
13.68 ns |
12.80 ns |
1.00 |
0.03 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
69,916,214.4 ns |
1,327,913.51 ns |
1,242,131.12 ns |
100,321.26 |
2,498.70 |
1000.0000 |
857.1429 |
285.7143 |
16000688 B |
51,284.26 |
| InvokeIntArrayFixed |
100000 |
71,243.2 ns |
282.37 ns |
250.31 ns |
102.23 |
1.87 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
71,096.7 ns |
231.06 ns |
192.94 ns |
102.02 |
1.86 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
91,537,412.6 ns |
1,033,190.23 ns |
862,760.63 ns |
131,345.05 |
2,649.90 |
1833.3333 |
1666.6667 |
833.3333 |
27893724 B |
89,402.96 |
core-ubuntu-22.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.283 μs |
0.0155 μs |
0.0137 μs |
1.00 |
0.01 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.299 μs |
0.0124 μs |
0.0104 μs |
1.01 |
0.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.332 μs |
0.0181 μs |
0.0169 μs |
1.04 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
109.9 ns |
1.37 ns |
1.28 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
126.4 ns |
2.56 ns |
2.74 ns |
1.15 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
116.8 ns |
2.37 ns |
2.73 ns |
1.06 |
0.03 |
- |
- |
0.00 |
| SetInstanceStringField |
777.5 ns |
8.26 ns |
7.73 ns |
7.08 |
0.10 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
119.9 ns |
2.08 ns |
1.95 ns |
1.09 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
129.1 ns |
1.73 ns |
1.54 ns |
1.17 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
115.3 ns |
1.68 ns |
1.57 ns |
1.05 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
792.3 ns |
6.62 ns |
5.87 ns |
7.21 |
0.10 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
124.6 ns |
0.86 ns |
0.76 ns |
1.13 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
406.4 ns |
6.84 ns |
6.40 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
380.4 ns |
7.10 ns |
6.64 ns |
0.94 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
639.5 ns |
5.62 ns |
4.69 ns |
1.57 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
404.2 ns |
3.74 ns |
3.31 ns |
0.99 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
673.0 ns |
12.82 ns |
11.99 ns |
1.66 |
0.04 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.672 μs |
0.0066 μs |
0.0055 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,338.8 ns |
22.91 ns |
21.43 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,296.1 ns |
23.89 ns |
22.35 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,659.9 ns |
25.91 ns |
24.23 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,282.3 ns |
33.19 ns |
29.42 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
565.5 ns |
11.25 ns |
11.05 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
502.0 ns |
9.94 ns |
11.83 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
796.6 ns |
7.45 ns |
6.97 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,389.4 ns |
37.78 ns |
29.50 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
728.32 ns |
12.183 ns |
11.396 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
False |
True |
728.77 ns |
12.845 ns |
11.386 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
True |
False |
995.42 ns |
19.127 ns |
19.642 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,691.88 ns |
42.770 ns |
40.008 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
34.81 ns |
0.555 ns |
0.519 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
33.42 ns |
0.467 ns |
0.414 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
252.94 ns |
2.447 ns |
2.289 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,844.88 ns |
41.999 ns |
39.286 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
629.5 ns |
6.09 ns |
5.40 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,324.0 ns |
105.54 ns |
93.56 ns |
11.64 |
0.17 |
0.1068 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,429.9 ns |
15.43 ns |
13.68 ns |
2.27 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,403.0 ns |
27.53 ns |
27.04 ns |
2.23 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,822.0 ns |
89.22 ns |
79.09 ns |
15.61 |
0.18 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
615.6 ns |
5.88 ns |
5.50 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
542,294.2 ns |
8,567.91 ns |
8,014.43 ns |
880.98 |
14.72 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,287.7 ns |
17.55 ns |
16.42 ns |
3.72 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,261.8 ns |
14.36 ns |
12.73 ns |
3.67 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
765,272.9 ns |
11,139.51 ns |
10,419.90 ns |
1,243.21 |
19.59 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
634.9 ns |
5.01 ns |
4.18 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
67,294,203.5 ns |
1,341,996.53 ns |
1,255,304.39 ns |
106,001.83 |
2,028.51 |
1000.0000 |
875.0000 |
250.0000 |
16001578 B |
51,287.11 |
| InvokeIntArrayFixed |
100000 |
63,759.9 ns |
177.66 ns |
157.49 ns |
100.43 |
0.68 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
63,787.3 ns |
229.66 ns |
203.59 ns |
100.48 |
0.71 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
95,819,687.7 ns |
1,798,428.84 ns |
1,682,251.45 ns |
150,935.17 |
2,737.39 |
1833.3333 |
1666.6667 |
833.3333 |
27893371 B |
89,401.83 |
core-ubuntu-22.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.330 μs |
0.0176 μs |
0.0165 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.308 μs |
0.0174 μs |
0.0162 μs |
0.98 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.296 μs |
0.0187 μs |
0.0175 μs |
0.97 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
112.9 ns |
1.61 ns |
1.51 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
120.1 ns |
2.44 ns |
2.28 ns |
1.06 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
115.8 ns |
1.38 ns |
1.29 ns |
1.03 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
718.6 ns |
9.57 ns |
8.95 ns |
6.36 |
0.11 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
119.3 ns |
2.34 ns |
2.19 ns |
1.06 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
126.7 ns |
2.48 ns |
2.66 ns |
1.12 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
110.5 ns |
1.70 ns |
1.50 ns |
0.98 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
693.8 ns |
6.10 ns |
5.70 ns |
6.14 |
0.09 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
115.5 ns |
1.11 ns |
0.92 ns |
1.02 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
301.5 ns |
3.69 ns |
3.27 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
309.2 ns |
5.89 ns |
5.51 ns |
1.03 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
623.2 ns |
6.57 ns |
6.14 ns |
2.07 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
306.6 ns |
3.27 ns |
3.06 ns |
1.02 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
619.5 ns |
7.52 ns |
7.04 ns |
2.05 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.595 μs |
0.0264 μs |
0.0247 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,250.5 ns |
14.24 ns |
13.32 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,264.2 ns |
15.37 ns |
14.38 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,582.2 ns |
15.24 ns |
13.51 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,186.5 ns |
67.93 ns |
63.54 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
466.8 ns |
9.09 ns |
8.50 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
444.7 ns |
6.74 ns |
6.31 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
749.6 ns |
9.06 ns |
8.47 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,232.1 ns |
44.99 ns |
39.88 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
637.10 ns |
11.520 ns |
11.315 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
638.73 ns |
10.992 ns |
10.282 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
919.68 ns |
11.349 ns |
10.061 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,512.77 ns |
81.356 ns |
87.050 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
34.97 ns |
0.300 ns |
0.250 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
33.85 ns |
0.418 ns |
0.391 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
239.74 ns |
1.555 ns |
1.379 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,618.24 ns |
51.276 ns |
47.963 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.95GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
668.0 ns |
4.96 ns |
4.39 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,584.4 ns |
138.92 ns |
129.94 ns |
11.35 |
0.20 |
0.1068 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,443.3 ns |
21.91 ns |
20.49 ns |
2.16 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,439.5 ns |
20.92 ns |
19.57 ns |
2.16 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
10,164.4 ns |
97.61 ns |
86.53 ns |
15.22 |
0.16 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
684.7 ns |
6.88 ns |
6.10 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
554,462.4 ns |
9,436.32 ns |
8,826.74 ns |
809.90 |
14.32 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
2,164.4 ns |
25.86 ns |
24.19 ns |
3.16 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
2,132.9 ns |
25.11 ns |
23.49 ns |
3.12 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
758,954.7 ns |
5,949.36 ns |
5,565.04 ns |
1,108.60 |
12.41 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
671.2 ns |
11.74 ns |
10.98 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
66,624,625.7 ns |
1,007,421.09 ns |
942,342.31 ns |
99,279.30 |
2,066.82 |
1000.0000 |
875.0000 |
250.0000 |
16001383 B |
51,286.48 |
| InvokeIntArrayFixed |
100000 |
71,991.9 ns |
376.97 ns |
352.62 ns |
107.28 |
1.76 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
71,483.8 ns |
532.54 ns |
498.14 ns |
106.52 |
1.82 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
91,231,545.1 ns |
1,760,209.32 ns |
2,288,769.50 ns |
135,946.79 |
3,964.38 |
2000.0000 |
1833.3333 |
1000.0000 |
27897993 B |
89,416.64 |
core-ubuntu-22.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.95GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.330 μs |
0.0184 μs |
0.0172 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.330 μs |
0.0256 μs |
0.0262 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.329 μs |
0.0198 μs |
0.0185 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.95GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
102.0 ns |
1.91 ns |
1.79 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
123.3 ns |
2.39 ns |
2.24 ns |
1.21 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
102.4 ns |
0.51 ns |
0.40 ns |
1.01 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
738.9 ns |
5.65 ns |
5.28 ns |
7.25 |
0.13 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
114.0 ns |
2.18 ns |
2.04 ns |
1.12 |
0.03 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
116.4 ns |
1.02 ns |
0.85 ns |
1.14 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
120.0 ns |
2.44 ns |
3.18 ns |
1.18 |
0.04 |
- |
- |
0.00 |
| SetStaticStringField |
724.8 ns |
6.02 ns |
5.03 ns |
7.11 |
0.13 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
119.1 ns |
1.38 ns |
1.08 ns |
1.17 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.95GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
320.7 ns |
3.53 ns |
3.13 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
323.8 ns |
4.11 ns |
3.65 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
653.5 ns |
11.35 ns |
11.14 ns |
2.04 |
0.04 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
336.6 ns |
6.29 ns |
5.89 ns |
1.05 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
696.0 ns |
10.99 ns |
10.28 ns |
2.17 |
0.04 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.95GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.678 μs |
0.0157 μs |
0.0147 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.95GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,269.6 ns |
25.18 ns |
24.73 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,268.0 ns |
13.80 ns |
11.52 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,598.2 ns |
21.58 ns |
20.19 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,219.9 ns |
76.68 ns |
71.73 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
493.4 ns |
9.79 ns |
10.05 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
507.4 ns |
6.37 ns |
5.96 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
814.5 ns |
8.32 ns |
7.38 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,364.6 ns |
46.05 ns |
43.08 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 2.95GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
640.62 ns |
11.875 ns |
10.527 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
649.02 ns |
11.622 ns |
10.303 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
931.44 ns |
8.646 ns |
8.087 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,576.71 ns |
72.462 ns |
67.781 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
34.21 ns |
0.389 ns |
0.325 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
33.73 ns |
0.516 ns |
0.482 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
241.44 ns |
1.787 ns |
1.672 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,759.30 ns |
34.088 ns |
28.465 ns |
0.0300 |
656 B |
core-ubuntu-22.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
476.3 ns |
7.21 ns |
6.74 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,374.5 ns |
34.14 ns |
26.65 ns |
11.29 |
0.16 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,068.5 ns |
6.78 ns |
5.67 ns |
2.24 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,070.8 ns |
8.77 ns |
7.78 ns |
2.25 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
7,413.9 ns |
106.00 ns |
93.97 ns |
15.57 |
0.29 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
486.7 ns |
4.04 ns |
3.37 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
394,740.8 ns |
6,155.98 ns |
5,758.31 ns |
811.12 |
12.67 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,818.1 ns |
11.82 ns |
11.06 ns |
3.74 |
0.03 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,781.4 ns |
8.45 ns |
6.60 ns |
3.66 |
0.03 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
581,085.7 ns |
10,348.53 ns |
11,917.38 ns |
1,194.02 |
25.20 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
487.5 ns |
8.89 ns |
9.51 ns |
1.00 |
0.03 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
48,960,584.3 ns |
652,432.48 ns |
610,285.75 ns |
100,476.44 |
2,244.73 |
1100.0000 |
1000.0000 |
300.0000 |
16001486 B |
51,286.81 |
| InvokeIntArrayFixed |
100000 |
50,668.5 ns |
143.80 ns |
127.48 ns |
103.98 |
1.97 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
50,779.0 ns |
156.13 ns |
130.38 ns |
104.21 |
1.98 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
74,613,079.3 ns |
1,459,358.99 ns |
1,997,587.23 ns |
153,120.25 |
4,947.18 |
2000.0000 |
1857.1429 |
857.1429 |
27893778 B |
89,403.13 |
core-ubuntu-22.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
968.0 ns |
12.55 ns |
11.74 ns |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1,012.2 ns |
19.44 ns |
19.96 ns |
1.05 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
976.2 ns |
15.55 ns |
14.54 ns |
1.01 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
84.00 ns |
1.322 ns |
1.236 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
88.58 ns |
1.720 ns |
1.609 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
88.43 ns |
1.477 ns |
1.382 ns |
1.05 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
525.82 ns |
5.619 ns |
4.981 ns |
6.26 |
0.11 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
85.99 ns |
1.128 ns |
1.055 ns |
1.02 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
86.21 ns |
1.386 ns |
1.296 ns |
1.03 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
79.20 ns |
1.449 ns |
1.355 ns |
0.94 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
537.40 ns |
5.797 ns |
4.841 ns |
6.40 |
0.11 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
85.97 ns |
1.472 ns |
1.377 ns |
1.02 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
234.0 ns |
4.40 ns |
4.12 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
232.0 ns |
4.34 ns |
4.06 ns |
0.99 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
465.4 ns |
5.46 ns |
4.84 ns |
1.99 |
0.04 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
226.6 ns |
3.76 ns |
3.52 ns |
0.97 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
485.9 ns |
7.33 ns |
6.85 ns |
2.08 |
0.05 |
0.0181 |
312 B |
NA |
core-ubuntu-22.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.272 μs |
0.0138 μs |
0.0116 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-22.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
930.4 ns |
11.68 ns |
10.92 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
940.5 ns |
15.59 ns |
14.58 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,157.8 ns |
8.90 ns |
8.32 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,869.2 ns |
47.17 ns |
41.81 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
368.5 ns |
5.57 ns |
5.21 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
363.3 ns |
7.26 ns |
7.77 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
605.0 ns |
6.00 ns |
5.32 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,339.4 ns |
28.49 ns |
26.65 ns |
0.0381 |
680 B |
core-ubuntu-22.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.67GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
474.13 ns |
8.220 ns |
7.286 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
False |
True |
611.65 ns |
8.042 ns |
7.522 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
True |
False |
760.59 ns |
14.542 ns |
14.933 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,423.27 ns |
38.159 ns |
33.827 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
27.36 ns |
0.358 ns |
0.335 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
27.78 ns |
0.263 ns |
0.246 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
183.38 ns |
2.021 ns |
1.890 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,735.79 ns |
23.394 ns |
21.883 ns |
0.0350 |
656 B |
core-ubuntu-22.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
594.6 ns |
6.49 ns |
6.07 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,367.8 ns |
45.60 ns |
40.42 ns |
10.71 |
0.13 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,199.3 ns |
7.45 ns |
6.97 ns |
2.02 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,255.9 ns |
8.52 ns |
7.97 ns |
2.11 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,206.8 ns |
92.32 ns |
81.84 ns |
13.80 |
0.19 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
549.3 ns |
5.22 ns |
4.63 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
489,663.2 ns |
2,873.09 ns |
2,399.16 ns |
891.45 |
8.36 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,918.2 ns |
16.34 ns |
15.29 ns |
3.49 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,940.7 ns |
20.89 ns |
19.54 ns |
3.53 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
634,810.4 ns |
3,688.74 ns |
3,269.97 ns |
1,155.69 |
10.99 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
528.7 ns |
6.96 ns |
6.51 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
62,828,639.8 ns |
548,503.06 ns |
458,024.90 ns |
118,851.12 |
1,640.10 |
1000.0000 |
875.0000 |
250.0000 |
16000971 B |
46,514.45 |
| InvokeIntArrayFixed |
100000 |
51,897.6 ns |
102.60 ns |
90.95 ns |
98.17 |
1.18 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
51,917.9 ns |
141.18 ns |
132.06 ns |
98.21 |
1.19 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
81,029,541.3 ns |
788,623.36 ns |
737,678.78 ns |
153,281.24 |
2,266.94 |
2000.0000 |
1857.1429 |
857.1429 |
27894703 B |
81,089.25 |
core-ubuntu-22.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.134 μs |
0.0185 μs |
0.0173 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.115 μs |
0.0130 μs |
0.0121 μs |
0.98 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.121 μs |
0.0152 μs |
0.0142 μs |
0.99 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
108.7 ns |
1.60 ns |
1.50 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
123.3 ns |
1.49 ns |
1.39 ns |
1.13 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
109.2 ns |
1.43 ns |
1.34 ns |
1.00 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
637.5 ns |
5.38 ns |
5.03 ns |
5.87 |
0.09 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
116.4 ns |
1.53 ns |
1.44 ns |
1.07 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
131.0 ns |
2.05 ns |
1.92 ns |
1.21 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
106.2 ns |
1.40 ns |
1.31 ns |
0.98 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
658.6 ns |
8.22 ns |
7.69 ns |
6.06 |
0.11 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
131.1 ns |
1.68 ns |
1.57 ns |
1.21 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
305.8 ns |
3.79 ns |
3.54 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
281.9 ns |
4.90 ns |
4.58 ns |
0.92 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
519.9 ns |
9.19 ns |
8.60 ns |
1.70 |
0.03 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
316.3 ns |
4.56 ns |
4.27 ns |
1.03 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
540.1 ns |
9.84 ns |
9.21 ns |
1.77 |
0.04 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.369 μs |
0.0140 μs |
0.0124 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,046.5 ns |
15.55 ns |
14.55 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,035.1 ns |
16.91 ns |
15.82 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,270.2 ns |
13.47 ns |
12.60 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,320.0 ns |
59.44 ns |
55.60 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
370.5 ns |
3.73 ns |
3.31 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
367.2 ns |
2.97 ns |
2.32 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
589.0 ns |
6.76 ns |
6.32 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,751.4 ns |
25.34 ns |
23.70 ns |
0.0420 |
712 B |
core-ubuntu-22.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
535.42 ns |
4.988 ns |
4.666 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
530.45 ns |
5.135 ns |
4.288 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
704.11 ns |
6.000 ns |
5.010 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,809.51 ns |
22.773 ns |
19.016 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
35.27 ns |
0.223 ns |
0.209 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
35.39 ns |
0.327 ns |
0.306 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
188.14 ns |
1.932 ns |
1.807 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,144.97 ns |
34.479 ns |
32.251 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.78GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
696.5 ns |
9.79 ns |
9.15 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
8,037.4 ns |
129.45 ns |
121.09 ns |
11.54 |
0.22 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,558.4 ns |
23.52 ns |
22.00 ns |
2.24 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,546.1 ns |
13.46 ns |
11.93 ns |
2.22 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,400.4 ns |
140.53 ns |
131.45 ns |
14.94 |
0.26 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
688.4 ns |
6.25 ns |
5.85 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
605,881.2 ns |
6,400.98 ns |
5,345.11 ns |
880.21 |
10.41 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,380.3 ns |
19.52 ns |
16.30 ns |
3.46 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,405.4 ns |
21.80 ns |
19.32 ns |
3.49 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
836,149.3 ns |
11,165.91 ns |
10,444.60 ns |
1,214.74 |
17.77 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
693.5 ns |
11.01 ns |
10.30 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
72,764,519.4 ns |
1,132,564.59 ns |
1,003,989.01 ns |
104,946.94 |
2,050.91 |
1000.0000 |
857.1429 |
285.7143 |
16001558 B |
46,516.16 |
| InvokeIntArrayFixed |
100000 |
63,343.2 ns |
211.47 ns |
187.46 ns |
91.36 |
1.33 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
63,456.7 ns |
219.94 ns |
194.97 ns |
91.52 |
1.34 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
102,872,574.1 ns |
1,859,735.56 ns |
2,351,970.22 ns |
148,371.24 |
3,940.66 |
1800.0000 |
1600.0000 |
800.0000 |
27894928 B |
81,089.91 |
core-ubuntu-22.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.78GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.426 μs |
0.0131 μs |
0.0116 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.480 μs |
0.0197 μs |
0.0174 μs |
1.04 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.432 μs |
0.0190 μs |
0.0178 μs |
1.00 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.78GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
135.0 ns |
1.33 ns |
1.18 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
162.1 ns |
2.37 ns |
2.21 ns |
1.20 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
138.8 ns |
1.81 ns |
1.70 ns |
1.03 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
835.9 ns |
15.66 ns |
14.65 ns |
6.19 |
0.12 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
145.5 ns |
1.73 ns |
1.53 ns |
1.08 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
160.5 ns |
1.73 ns |
1.54 ns |
1.19 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
140.1 ns |
2.77 ns |
2.59 ns |
1.04 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
809.8 ns |
12.50 ns |
11.69 ns |
6.00 |
0.10 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
167.3 ns |
1.89 ns |
1.68 ns |
1.24 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.78GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
343.8 ns |
2.18 ns |
1.82 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
348.3 ns |
5.49 ns |
5.13 ns |
1.01 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
681.1 ns |
7.96 ns |
7.44 ns |
1.98 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
350.1 ns |
6.61 ns |
6.79 ns |
1.02 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
675.2 ns |
8.41 ns |
7.86 ns |
1.96 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.78GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.739 μs |
0.0235 μs |
0.0220 μs |
1.00 |
0.02 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.78GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,338.9 ns |
20.55 ns |
19.22 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,358.9 ns |
22.84 ns |
21.36 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,612.0 ns |
16.19 ns |
13.52 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,530.9 ns |
39.36 ns |
34.89 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
485.9 ns |
8.58 ns |
8.03 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
491.8 ns |
7.33 ns |
6.50 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
791.1 ns |
9.05 ns |
8.47 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,618.4 ns |
64.66 ns |
60.48 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.78GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
709.43 ns |
13.804 ns |
16.433 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
685.00 ns |
13.044 ns |
14.499 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
933.41 ns |
13.868 ns |
12.293 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,842.43 ns |
54.757 ns |
51.219 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
44.38 ns |
0.409 ns |
0.382 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
44.87 ns |
0.726 ns |
0.607 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
248.03 ns |
1.829 ns |
1.428 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
4,030.57 ns |
70.686 ns |
66.120 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
409.0 ns |
8.00 ns |
10.68 ns |
1.00 |
0.04 |
0.0205 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
4,610.8 ns |
89.80 ns |
125.89 ns |
11.28 |
0.42 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
887.4 ns |
17.43 ns |
17.90 ns |
2.17 |
0.07 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
875.0 ns |
15.34 ns |
14.35 ns |
2.14 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
5,899.0 ns |
104.82 ns |
112.15 ns |
14.43 |
0.45 |
0.2060 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
396.7 ns |
7.18 ns |
7.06 ns |
1.00 |
0.02 |
0.0205 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
348,787.3 ns |
4,844.39 ns |
4,045.28 ns |
879.42 |
18.14 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,364.0 ns |
25.89 ns |
31.80 ns |
3.44 |
0.10 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,342.1 ns |
22.74 ns |
22.34 ns |
3.38 |
0.08 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
486,986.1 ns |
9,689.75 ns |
9,063.80 ns |
1,227.87 |
30.70 |
15.6250 |
7.3242 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
393.8 ns |
5.63 ns |
5.27 ns |
1.00 |
0.02 |
0.0205 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
39,039,343.1 ns |
570,093.63 ns |
533,265.93 ns |
99,139.38 |
1,835.53 |
1076.9231 |
923.0769 |
307.6923 |
16000734 B |
46,513.76 |
| InvokeIntArrayFixed |
100000 |
36,873.0 ns |
548.84 ns |
486.53 ns |
93.64 |
1.70 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
36,862.7 ns |
311.41 ns |
260.04 ns |
93.61 |
1.37 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
57,602,183.9 ns |
809,966.33 ns |
718,014.05 ns |
146,279.23 |
2,587.46 |
1888.8889 |
1777.7778 |
777.7778 |
27894284 B |
81,088.03 |
core-ubuntu-22.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
802.2 ns |
15.77 ns |
16.20 ns |
1.00 |
0.03 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
810.5 ns |
10.79 ns |
9.56 ns |
1.01 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
797.1 ns |
6.30 ns |
5.26 ns |
0.99 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
64.49 ns |
0.615 ns |
0.513 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
77.57 ns |
0.774 ns |
0.646 ns |
1.20 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
65.51 ns |
0.485 ns |
0.453 ns |
1.02 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
473.94 ns |
5.305 ns |
4.963 ns |
7.35 |
0.09 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
70.31 ns |
0.753 ns |
0.667 ns |
1.09 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
87.46 ns |
0.670 ns |
0.627 ns |
1.36 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
68.23 ns |
0.810 ns |
0.758 ns |
1.06 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
470.18 ns |
5.173 ns |
4.839 ns |
7.29 |
0.09 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
88.83 ns |
0.911 ns |
0.852 ns |
1.38 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
171.1 ns |
2.55 ns |
2.13 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
157.6 ns |
2.79 ns |
2.48 ns |
0.92 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
386.0 ns |
5.87 ns |
5.20 ns |
2.26 |
0.04 |
0.0205 |
344 B |
NA |
| InvokeInstanceEmpty |
175.7 ns |
1.65 ns |
1.54 ns |
1.03 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
387.5 ns |
4.37 ns |
3.87 ns |
2.27 |
0.03 |
0.0205 |
344 B |
NA |
core-ubuntu-22.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
972.2 ns |
10.25 ns |
9.09 ns |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
718.9 ns |
6.97 ns |
6.52 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
743.1 ns |
8.29 ns |
7.35 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
876.8 ns |
13.29 ns |
12.43 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,039.1 ns |
19.55 ns |
17.33 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
241.6 ns |
1.26 ns |
1.12 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
248.9 ns |
3.67 ns |
3.25 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
406.4 ns |
3.55 ns |
3.15 ns |
0.0072 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,623.2 ns |
39.95 ns |
35.41 ns |
0.0420 |
712 B |
core-ubuntu-22.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V45 4.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
361.80 ns |
5.224 ns |
4.886 ns |
0.0047 |
80 B |
| PredicateSustained |
False |
False |
True |
371.70 ns |
3.024 ns |
2.681 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
True |
False |
487.63 ns |
5.964 ns |
5.287 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
2,648.92 ns |
33.047 ns |
29.296 ns |
0.0450 |
768 B |
| PredicateSustained |
True |
False |
False |
34.37 ns |
0.687 ns |
0.764 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
34.58 ns |
0.255 ns |
0.226 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
149.68 ns |
2.977 ns |
4.075 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,216.81 ns |
23.552 ns |
22.030 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.22GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
741.1 ns |
13.66 ns |
12.78 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,675.5 ns |
53.26 ns |
49.82 ns |
10.36 |
0.19 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,592.9 ns |
31.90 ns |
29.84 ns |
2.15 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,656.0 ns |
24.06 ns |
22.51 ns |
2.24 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,694.4 ns |
85.60 ns |
80.07 ns |
14.43 |
0.27 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
734.6 ns |
11.27 ns |
10.54 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
594,801.0 ns |
9,645.92 ns |
9,022.80 ns |
809.89 |
16.41 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,305.5 ns |
20.79 ns |
19.45 ns |
3.14 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,314.0 ns |
16.27 ns |
14.42 ns |
3.15 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
847,583.4 ns |
8,053.43 ns |
7,533.18 ns |
1,154.08 |
18.93 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
747.2 ns |
13.59 ns |
12.71 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
71,882,486.7 ns |
1,176,682.44 ns |
1,100,669.49 ns |
96,234.72 |
2,130.68 |
1000.0000 |
857.1429 |
285.7143 |
16001354 B |
46,515.56 |
| InvokeIntArrayFixed |
100000 |
73,486.4 ns |
750.78 ns |
665.54 ns |
98.38 |
1.83 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
72,319.6 ns |
516.58 ns |
457.93 ns |
96.82 |
1.70 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
101,644,052.4 ns |
929,486.92 ns |
869,442.64 ns |
136,078.86 |
2,505.28 |
1800.0000 |
1600.0000 |
800.0000 |
27893922 B |
81,086.98 |
core-ubuntu-22.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.22GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.453 μs |
0.0145 μs |
0.0136 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.450 μs |
0.0199 μs |
0.0176 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.449 μs |
0.0155 μs |
0.0130 μs |
1.00 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.22GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
117.7 ns |
1.01 ns |
0.90 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
144.8 ns |
2.34 ns |
2.19 ns |
1.23 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
121.0 ns |
2.41 ns |
2.26 ns |
1.03 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
792.6 ns |
7.47 ns |
6.99 ns |
6.73 |
0.08 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
134.4 ns |
2.10 ns |
1.97 ns |
1.14 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
151.6 ns |
1.53 ns |
1.36 ns |
1.29 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
118.3 ns |
2.21 ns |
2.07 ns |
1.00 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
790.1 ns |
10.05 ns |
9.40 ns |
6.71 |
0.09 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
155.7 ns |
2.98 ns |
3.19 ns |
1.32 |
0.03 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.22GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
351.3 ns |
5.74 ns |
5.09 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
332.1 ns |
3.57 ns |
2.79 ns |
0.95 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
717.5 ns |
13.54 ns |
14.49 ns |
2.04 |
0.05 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
378.5 ns |
4.28 ns |
3.79 ns |
1.08 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
723.7 ns |
4.96 ns |
3.88 ns |
2.06 |
0.03 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.22GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.799 μs |
0.0247 μs |
0.0232 μs |
1.00 |
0.02 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.22GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,299.8 ns |
21.28 ns |
19.91 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,291.6 ns |
19.43 ns |
18.18 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,611.0 ns |
12.38 ns |
10.98 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,579.5 ns |
52.44 ns |
46.48 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
535.8 ns |
10.63 ns |
13.05 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
526.4 ns |
9.15 ns |
10.54 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
787.4 ns |
8.00 ns |
7.10 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,655.5 ns |
61.77 ns |
57.78 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.22GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
691.72 ns |
12.929 ns |
13.834 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
False |
True |
684.40 ns |
13.454 ns |
15.494 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
939.95 ns |
18.407 ns |
17.218 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,886.07 ns |
76.908 ns |
71.939 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
44.61 ns |
0.599 ns |
0.531 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.28 ns |
0.806 ns |
0.754 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
240.10 ns |
1.908 ns |
1.691 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
4,052.84 ns |
50.670 ns |
44.917 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
518.5 ns |
9.98 ns |
9.80 ns |
1.00 |
0.03 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,248.1 ns |
49.90 ns |
44.23 ns |
12.06 |
0.23 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,226.6 ns |
12.36 ns |
11.56 ns |
2.37 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,201.3 ns |
12.68 ns |
11.24 ns |
2.32 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,131.1 ns |
70.46 ns |
58.84 ns |
15.69 |
0.30 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
517.9 ns |
9.88 ns |
9.25 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
473,208.5 ns |
7,724.01 ns |
7,225.04 ns |
913.91 |
20.64 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,712.4 ns |
12.50 ns |
11.69 ns |
3.31 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,700.8 ns |
13.24 ns |
11.74 ns |
3.28 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
637,174.9 ns |
7,675.56 ns |
7,179.72 ns |
1,230.58 |
24.93 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
526.1 ns |
5.27 ns |
4.93 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,713,412.3 ns |
649,388.27 ns |
607,438.19 ns |
109,710.24 |
1,498.42 |
1111.1111 |
1000.0000 |
333.3333 |
16002128 B |
46,517.81 |
| InvokeIntArrayFixed |
100000 |
26,731.3 ns |
120.92 ns |
100.98 ns |
50.81 |
0.50 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
26,763.7 ns |
164.20 ns |
145.56 ns |
50.88 |
0.53 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
81,858,276.5 ns |
867,022.78 ns |
811,013.65 ns |
155,608.39 |
2,056.80 |
2000.0000 |
1857.1429 |
857.1429 |
27894839 B |
81,089.65 |
core-ubuntu-22.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.190 μs |
0.0182 μs |
0.0170 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.105 μs |
0.0141 μs |
0.0132 μs |
0.93 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.069 μs |
0.0127 μs |
0.0119 μs |
0.90 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
108.4 ns |
1.47 ns |
1.37 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
121.0 ns |
1.62 ns |
1.52 ns |
1.12 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
104.0 ns |
1.49 ns |
1.39 ns |
0.96 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
713.8 ns |
9.76 ns |
9.13 ns |
6.58 |
0.11 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
109.7 ns |
1.05 ns |
0.93 ns |
1.01 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
130.1 ns |
1.68 ns |
1.58 ns |
1.20 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
100.9 ns |
1.54 ns |
1.44 ns |
0.93 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
642.3 ns |
5.12 ns |
4.53 ns |
5.92 |
0.08 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
137.5 ns |
2.10 ns |
1.96 ns |
1.27 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
263.0 ns |
5.17 ns |
5.53 ns |
1.00 |
0.03 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
251.1 ns |
5.05 ns |
4.96 ns |
0.96 |
0.03 |
- |
- |
NA |
| InvokeStaticWithFeedback |
506.9 ns |
9.69 ns |
11.16 ns |
1.93 |
0.06 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
265.7 ns |
2.26 ns |
2.00 ns |
1.01 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
528.9 ns |
10.46 ns |
9.78 ns |
2.01 |
0.05 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.352 μs |
0.0151 μs |
0.0126 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,010.5 ns |
13.86 ns |
12.96 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,035.0 ns |
13.38 ns |
12.51 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,251.2 ns |
12.36 ns |
10.95 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,217.7 ns |
38.29 ns |
35.81 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
397.3 ns |
4.43 ns |
4.14 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
365.9 ns |
4.21 ns |
3.94 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
594.6 ns |
5.87 ns |
4.90 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,556.0 ns |
37.49 ns |
35.07 ns |
0.0420 |
712 B |
core-ubuntu-22.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
556.70 ns |
11.055 ns |
10.858 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
False |
True |
536.74 ns |
7.371 ns |
6.895 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
704.16 ns |
8.009 ns |
7.100 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,707.09 ns |
55.485 ns |
51.901 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
34.90 ns |
0.536 ns |
0.501 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
34.83 ns |
0.343 ns |
0.304 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
190.58 ns |
2.292 ns |
2.032 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,064.70 ns |
25.111 ns |
23.489 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
669.3 ns |
11.32 ns |
10.04 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,908.3 ns |
126.48 ns |
118.31 ns |
11.82 |
0.24 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,526.6 ns |
17.16 ns |
15.21 ns |
2.28 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,535.4 ns |
26.03 ns |
24.35 ns |
2.29 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,103.4 ns |
161.36 ns |
150.94 ns |
15.10 |
0.31 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
645.9 ns |
7.54 ns |
6.69 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
625,113.9 ns |
11,711.28 ns |
10,954.74 ns |
967.96 |
19.07 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,169.3 ns |
34.23 ns |
32.02 ns |
3.36 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,118.6 ns |
19.88 ns |
18.60 ns |
3.28 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
793,707.7 ns |
8,426.07 ns |
7,881.75 ns |
1,229.02 |
17.06 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
654.9 ns |
12.12 ns |
11.34 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
71,546,341.7 ns |
1,421,883.40 ns |
1,260,462.60 ns |
109,277.67 |
2,609.12 |
1000.0000 |
857.1429 |
285.7143 |
16000877 B |
46,514.18 |
| InvokeIntArrayFixed |
100000 |
32,151.9 ns |
246.78 ns |
230.84 ns |
49.11 |
0.89 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
32,399.0 ns |
222.01 ns |
196.81 ns |
49.49 |
0.88 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
98,644,475.1 ns |
1,666,588.13 ns |
1,558,927.57 ns |
150,666.52 |
3,417.57 |
1666.6667 |
1500.0000 |
666.6667 |
27894120 B |
81,087.56 |
core-ubuntu-22.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.338 μs |
0.0227 μs |
0.0212 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.362 μs |
0.0196 μs |
0.0173 μs |
1.02 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.364 μs |
0.0164 μs |
0.0137 μs |
1.02 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
131.0 ns |
2.31 ns |
2.16 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
148.7 ns |
2.33 ns |
2.18 ns |
1.14 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
130.0 ns |
2.61 ns |
2.90 ns |
0.99 |
0.03 |
- |
- |
0.00 |
| SetInstanceStringField |
766.6 ns |
11.79 ns |
11.03 ns |
5.85 |
0.12 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
132.5 ns |
1.95 ns |
1.83 ns |
1.01 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
143.0 ns |
2.01 ns |
1.68 ns |
1.09 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
124.6 ns |
1.60 ns |
1.50 ns |
0.95 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
750.8 ns |
11.36 ns |
10.62 ns |
5.73 |
0.12 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
167.1 ns |
2.76 ns |
2.58 ns |
1.28 |
0.03 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
323.0 ns |
4.55 ns |
4.25 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
303.9 ns |
4.79 ns |
4.48 ns |
0.94 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
618.0 ns |
11.46 ns |
10.72 ns |
1.91 |
0.04 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
333.6 ns |
5.89 ns |
5.78 ns |
1.03 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
632.7 ns |
10.06 ns |
9.41 ns |
1.96 |
0.04 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.698 μs |
0.0175 μs |
0.0163 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,257.8 ns |
20.11 ns |
18.81 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,186.4 ns |
14.62 ns |
13.68 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,521.3 ns |
21.16 ns |
18.76 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,046.5 ns |
100.56 ns |
103.27 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
463.6 ns |
8.26 ns |
7.73 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
445.0 ns |
3.26 ns |
3.05 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
720.0 ns |
10.72 ns |
9.50 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,256.3 ns |
80.94 ns |
75.72 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
616.86 ns |
10.716 ns |
10.024 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
664.75 ns |
12.165 ns |
11.379 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
840.47 ns |
11.584 ns |
10.835 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,480.77 ns |
74.954 ns |
70.112 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
43.57 ns |
0.572 ns |
0.507 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.68 ns |
0.644 ns |
0.602 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
226.55 ns |
2.640 ns |
2.469 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,735.34 ns |
73.679 ns |
81.894 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
531.7 ns |
6.20 ns |
5.80 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,856.0 ns |
65.50 ns |
61.27 ns |
11.02 |
0.16 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,175.2 ns |
9.55 ns |
8.46 ns |
2.21 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,183.9 ns |
13.99 ns |
13.09 ns |
2.23 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
7,793.5 ns |
93.98 ns |
87.91 ns |
14.66 |
0.22 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
511.5 ns |
9.81 ns |
10.07 ns |
1.00 |
0.03 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
458,202.4 ns |
3,949.72 ns |
3,694.57 ns |
896.07 |
18.28 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,692.4 ns |
13.66 ns |
12.78 ns |
3.31 |
0.07 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,696.2 ns |
10.10 ns |
9.44 ns |
3.32 |
0.07 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
633,227.2 ns |
6,362.51 ns |
5,640.20 ns |
1,238.36 |
25.66 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
576.6 ns |
6.93 ns |
6.48 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
55,114,784.2 ns |
598,895.66 ns |
530,905.41 ns |
95,596.17 |
1,365.79 |
1111.1111 |
1000.0000 |
333.3333 |
16002968 B |
46,520.26 |
| InvokeIntArrayFixed |
100000 |
27,428.1 ns |
140.15 ns |
124.24 ns |
47.57 |
0.56 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
27,640.0 ns |
107.15 ns |
89.47 ns |
47.94 |
0.54 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
80,113,306.6 ns |
1,104,321.18 ns |
1,032,982.72 ns |
138,955.92 |
2,297.54 |
2000.0000 |
1857.1429 |
857.1429 |
27895386 B |
81,091.24 |
core-ubuntu-22.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.064 μs |
0.0159 μs |
0.0149 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.065 μs |
0.0122 μs |
0.0114 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.063 μs |
0.0147 μs |
0.0138 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
103.45 ns |
1.198 ns |
1.120 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
120.42 ns |
1.932 ns |
1.807 ns |
1.16 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
103.11 ns |
0.537 ns |
0.448 ns |
1.00 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
593.02 ns |
5.999 ns |
5.318 ns |
5.73 |
0.08 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
109.46 ns |
1.330 ns |
1.244 ns |
1.06 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
118.43 ns |
2.175 ns |
2.035 ns |
1.14 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
98.66 ns |
1.029 ns |
0.963 ns |
0.95 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
588.21 ns |
4.745 ns |
4.206 ns |
5.69 |
0.07 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
134.57 ns |
2.422 ns |
2.265 ns |
1.30 |
0.03 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
268.5 ns |
5.19 ns |
4.85 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
242.2 ns |
4.66 ns |
4.58 ns |
0.90 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
511.0 ns |
6.42 ns |
6.01 ns |
1.90 |
0.04 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
274.1 ns |
3.04 ns |
2.70 ns |
1.02 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
512.7 ns |
5.62 ns |
4.98 ns |
1.91 |
0.04 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.295 μs |
0.0142 μs |
0.0133 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,040.4 ns |
13.51 ns |
12.64 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,009.1 ns |
9.17 ns |
8.58 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,233.9 ns |
20.20 ns |
18.89 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,149.8 ns |
63.05 ns |
58.98 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
366.2 ns |
3.53 ns |
2.95 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
364.1 ns |
7.30 ns |
6.83 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
624.4 ns |
7.94 ns |
7.04 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,491.6 ns |
40.09 ns |
37.50 ns |
0.0420 |
712 B |
core-ubuntu-22.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
541.96 ns |
9.287 ns |
8.232 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
False |
True |
564.46 ns |
10.258 ns |
9.596 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
687.59 ns |
10.203 ns |
9.544 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,606.78 ns |
24.131 ns |
20.150 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
36.28 ns |
0.288 ns |
0.255 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
35.88 ns |
0.690 ns |
0.645 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
186.93 ns |
2.296 ns |
2.148 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,994.13 ns |
26.001 ns |
24.321 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
688.4 ns |
7.43 ns |
6.58 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
8,186.9 ns |
144.83 ns |
135.48 ns |
11.89 |
0.22 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,562.1 ns |
18.87 ns |
17.65 ns |
2.27 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,565.2 ns |
21.36 ns |
19.98 ns |
2.27 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,262.5 ns |
155.82 ns |
138.13 ns |
14.91 |
0.24 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
662.6 ns |
9.63 ns |
9.01 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
622,191.1 ns |
8,822.46 ns |
8,252.53 ns |
939.23 |
17.22 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,396.7 ns |
22.03 ns |
20.61 ns |
3.62 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,411.8 ns |
28.57 ns |
25.33 ns |
3.64 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
830,992.4 ns |
10,238.66 ns |
9,076.31 ns |
1,254.42 |
21.09 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
670.4 ns |
4.54 ns |
3.55 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
75,834,813.4 ns |
1,442,197.75 ns |
1,416,431.03 ns |
113,129.10 |
2,130.31 |
1000.0000 |
857.1429 |
285.7143 |
16001495 B |
46,515.97 |
| InvokeIntArrayFixed |
100000 |
63,725.3 ns |
334.42 ns |
312.81 ns |
95.06 |
0.66 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
63,845.8 ns |
190.39 ns |
158.99 ns |
95.24 |
0.54 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
105,320,864.1 ns |
2,003,867.26 ns |
1,968,065.59 ns |
157,115.90 |
2,959.87 |
1800.0000 |
1600.0000 |
800.0000 |
27894006 B |
81,087.23 |
core-ubuntu-22.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.428 μs |
0.0222 μs |
0.0208 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.467 μs |
0.0184 μs |
0.0163 μs |
1.03 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.451 μs |
0.0228 μs |
0.0213 μs |
1.02 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
139.8 ns |
2.06 ns |
1.93 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
168.8 ns |
2.70 ns |
2.53 ns |
1.21 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
140.4 ns |
2.79 ns |
2.74 ns |
1.00 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
812.8 ns |
4.21 ns |
3.51 ns |
5.81 |
0.08 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
145.3 ns |
2.85 ns |
2.66 ns |
1.04 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
189.5 ns |
1.55 ns |
1.37 ns |
1.36 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
132.9 ns |
2.04 ns |
1.91 ns |
0.95 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
844.3 ns |
10.40 ns |
9.73 ns |
6.04 |
0.10 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
176.8 ns |
3.05 ns |
2.86 ns |
1.26 |
0.03 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
397.1 ns |
2.86 ns |
2.23 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
355.2 ns |
3.57 ns |
3.16 ns |
0.89 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
670.8 ns |
13.23 ns |
12.38 ns |
1.69 |
0.03 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
420.5 ns |
7.38 ns |
6.90 ns |
1.06 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
694.9 ns |
13.94 ns |
17.12 ns |
1.75 |
0.04 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.728 μs |
0.0119 μs |
0.0106 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,360.7 ns |
20.06 ns |
17.78 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,385.9 ns |
21.26 ns |
19.88 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,681.8 ns |
27.63 ns |
25.84 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,756.5 ns |
64.02 ns |
56.75 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
487.6 ns |
9.63 ns |
9.00 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
473.6 ns |
3.16 ns |
2.80 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
791.5 ns |
9.65 ns |
9.03 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,640.1 ns |
27.93 ns |
24.76 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.86GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
726.56 ns |
14.040 ns |
15.605 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
False |
True |
701.62 ns |
10.220 ns |
9.560 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
918.55 ns |
15.108 ns |
13.393 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,889.44 ns |
70.293 ns |
65.752 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
48.55 ns |
0.334 ns |
0.279 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
46.94 ns |
0.690 ns |
0.645 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
242.87 ns |
3.033 ns |
2.837 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
4,037.59 ns |
55.893 ns |
52.283 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.15GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
755.3 ns |
8.54 ns |
7.99 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
8,020.3 ns |
55.58 ns |
46.42 ns |
10.62 |
0.12 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,610.9 ns |
21.93 ns |
20.51 ns |
2.13 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,601.9 ns |
12.14 ns |
11.36 ns |
2.12 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,547.1 ns |
109.80 ns |
97.33 ns |
13.97 |
0.19 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
716.4 ns |
11.23 ns |
10.50 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
607,923.4 ns |
4,330.20 ns |
3,838.61 ns |
848.70 |
13.07 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,338.6 ns |
19.19 ns |
16.03 ns |
3.26 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,330.8 ns |
27.32 ns |
25.56 ns |
3.25 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
837,800.4 ns |
10,509.57 ns |
9,830.66 ns |
1,169.63 |
21.21 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
738.3 ns |
8.31 ns |
7.78 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
72,391,880.4 ns |
640,245.35 ns |
567,560.82 ns |
98,061.08 |
1,244.21 |
1000.0000 |
857.1429 |
285.7143 |
16001627 B |
46,516.36 |
| InvokeIntArrayFixed |
100000 |
73,001.8 ns |
707.95 ns |
662.22 ns |
98.89 |
1.33 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
72,678.0 ns |
410.03 ns |
383.54 ns |
98.45 |
1.12 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
101,851,593.9 ns |
1,737,597.17 ns |
1,625,349.47 ns |
137,966.82 |
2,552.82 |
1800.0000 |
1600.0000 |
800.0000 |
27894059 B |
81,087.38 |
core-ubuntu-22.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.15GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.520 μs |
0.0300 μs |
0.0295 μs |
1.00 |
0.03 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.499 μs |
0.0116 μs |
0.0103 μs |
0.99 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.486 μs |
0.0163 μs |
0.0153 μs |
0.98 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.15GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
124.2 ns |
2.46 ns |
2.41 ns |
1.00 |
0.03 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
139.9 ns |
1.26 ns |
1.05 ns |
1.13 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
118.1 ns |
1.35 ns |
1.20 ns |
0.95 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
897.6 ns |
10.91 ns |
10.21 ns |
7.23 |
0.16 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
127.2 ns |
1.59 ns |
1.41 ns |
1.02 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
145.7 ns |
2.58 ns |
2.41 ns |
1.17 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
122.2 ns |
2.44 ns |
2.51 ns |
0.98 |
0.03 |
- |
- |
0.00 |
| SetStaticStringField |
864.6 ns |
5.03 ns |
4.20 ns |
6.97 |
0.13 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
155.2 ns |
3.07 ns |
3.15 ns |
1.25 |
0.03 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.15GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
359.6 ns |
7.12 ns |
7.92 ns |
1.00 |
0.03 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
309.6 ns |
3.89 ns |
3.25 ns |
0.86 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
684.2 ns |
8.02 ns |
7.11 ns |
1.90 |
0.04 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
358.1 ns |
7.17 ns |
7.04 ns |
1.00 |
0.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
718.3 ns |
3.75 ns |
3.13 ns |
2.00 |
0.04 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.15GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.799 μs |
0.0170 μs |
0.0159 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.15GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,350.6 ns |
22.82 ns |
21.34 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,342.9 ns |
24.11 ns |
22.55 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,631.7 ns |
30.80 ns |
28.81 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,626.7 ns |
90.18 ns |
84.36 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
509.9 ns |
9.93 ns |
11.82 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
507.4 ns |
10.12 ns |
12.05 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
779.3 ns |
12.71 ns |
11.89 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,735.4 ns |
52.74 ns |
46.75 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.15GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
693.66 ns |
13.234 ns |
12.379 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
711.61 ns |
13.631 ns |
16.226 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
True |
False |
956.05 ns |
18.476 ns |
17.283 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,812.45 ns |
37.556 ns |
31.361 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
42.07 ns |
0.790 ns |
0.812 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
44.22 ns |
0.756 ns |
0.707 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
240.04 ns |
1.976 ns |
1.849 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
4,087.38 ns |
48.284 ns |
40.319 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.71GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
648.8 ns |
10.18 ns |
9.52 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,937.0 ns |
150.86 ns |
167.68 ns |
12.24 |
0.31 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,495.4 ns |
22.09 ns |
20.67 ns |
2.31 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,501.8 ns |
11.11 ns |
9.28 ns |
2.32 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,103.4 ns |
68.24 ns |
60.50 ns |
15.58 |
0.24 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
644.1 ns |
10.17 ns |
9.02 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
582,786.3 ns |
5,520.98 ns |
4,894.20 ns |
904.93 |
14.14 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,326.1 ns |
28.14 ns |
24.95 ns |
3.61 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,341.2 ns |
19.03 ns |
17.80 ns |
3.64 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
795,831.2 ns |
7,940.40 ns |
7,427.46 ns |
1,235.74 |
19.92 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
673.7 ns |
7.82 ns |
6.93 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
70,904,971.9 ns |
563,675.33 ns |
527,262.25 ns |
105,252.51 |
1,284.42 |
1000.0000 |
857.1429 |
285.7143 |
16000822 B |
46,514.02 |
| InvokeIntArrayFixed |
100000 |
62,862.7 ns |
384.93 ns |
341.23 ns |
93.31 |
1.04 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
62,794.2 ns |
146.63 ns |
122.44 ns |
93.21 |
0.94 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
99,566,727.0 ns |
1,832,351.43 ns |
1,530,096.44 ns |
147,798.49 |
2,628.77 |
1800.0000 |
1600.0000 |
800.0000 |
27893542 B |
81,085.88 |
core-ubuntu-22.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.71GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.362 μs |
0.0217 μs |
0.0203 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.370 μs |
0.0230 μs |
0.0215 μs |
1.01 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.376 μs |
0.0168 μs |
0.0149 μs |
1.01 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.71GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
146.4 ns |
2.34 ns |
2.19 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
160.1 ns |
2.82 ns |
2.64 ns |
1.09 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
132.1 ns |
2.18 ns |
2.04 ns |
0.90 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
800.4 ns |
12.22 ns |
11.43 ns |
5.47 |
0.11 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
140.9 ns |
1.65 ns |
1.46 ns |
0.96 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
154.0 ns |
1.63 ns |
1.44 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
128.6 ns |
2.62 ns |
2.57 ns |
0.88 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
803.0 ns |
10.80 ns |
10.10 ns |
5.49 |
0.10 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
167.2 ns |
2.27 ns |
2.13 ns |
1.14 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.71GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
346.4 ns |
5.73 ns |
5.36 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
335.0 ns |
5.34 ns |
4.99 ns |
0.97 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
654.8 ns |
8.97 ns |
8.39 ns |
1.89 |
0.04 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
343.1 ns |
4.15 ns |
3.88 ns |
0.99 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
666.7 ns |
9.76 ns |
9.13 ns |
1.93 |
0.04 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.71GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.767 μs |
0.0268 μs |
0.0251 μs |
1.00 |
0.02 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.71GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,320.5 ns |
21.01 ns |
19.65 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,281.4 ns |
16.88 ns |
14.09 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,571.6 ns |
24.80 ns |
23.20 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,196.6 ns |
52.11 ns |
48.75 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
466.9 ns |
7.10 ns |
6.64 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
477.2 ns |
7.50 ns |
7.02 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
776.1 ns |
6.06 ns |
5.06 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,405.9 ns |
46.82 ns |
39.10 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.71GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
645.74 ns |
9.825 ns |
8.710 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
672.33 ns |
12.810 ns |
14.239 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
921.17 ns |
16.652 ns |
15.576 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,640.84 ns |
89.690 ns |
99.690 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
46.42 ns |
0.586 ns |
0.548 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
45.97 ns |
0.715 ns |
0.634 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
239.69 ns |
2.717 ns |
2.541 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,798.69 ns |
40.670 ns |
36.053 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.83GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
677.8 ns |
8.93 ns |
8.36 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,893.1 ns |
141.89 ns |
132.73 ns |
11.65 |
0.23 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,500.4 ns |
5.03 ns |
3.92 ns |
2.21 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,538.7 ns |
18.82 ns |
17.60 ns |
2.27 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,475.4 ns |
121.23 ns |
113.40 ns |
15.46 |
0.24 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
704.9 ns |
13.77 ns |
12.88 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
595,331.7 ns |
9,496.23 ns |
8,882.78 ns |
844.81 |
19.19 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,392.8 ns |
24.00 ns |
22.45 ns |
3.40 |
0.07 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,405.9 ns |
10.73 ns |
10.04 ns |
3.41 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
832,370.3 ns |
14,218.13 ns |
13,299.65 ns |
1,181.19 |
27.62 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
687.9 ns |
10.51 ns |
9.83 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
70,894,469.9 ns |
902,636.52 ns |
800,163.77 ns |
103,074.07 |
1,813.38 |
1000.0000 |
857.1429 |
285.7143 |
16001198 B |
46,515.11 |
| InvokeIntArrayFixed |
100000 |
63,337.3 ns |
366.92 ns |
343.22 ns |
92.09 |
1.36 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
63,054.0 ns |
291.58 ns |
243.49 ns |
91.67 |
1.31 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
102,343,664.2 ns |
2,039,274.96 ns |
2,002,840.68 ns |
148,798.32 |
3,493.22 |
1800.0000 |
1600.0000 |
800.0000 |
27895872 B |
81,092.65 |
core-ubuntu-22.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.83GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.393 μs |
0.0234 μs |
0.0219 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.405 μs |
0.0165 μs |
0.0155 μs |
1.01 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.419 μs |
0.0147 μs |
0.0137 μs |
1.02 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.83GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
146.6 ns |
1.95 ns |
1.82 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
152.4 ns |
2.32 ns |
2.17 ns |
1.04 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
133.8 ns |
2.19 ns |
2.05 ns |
0.91 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
781.9 ns |
12.00 ns |
10.63 ns |
5.33 |
0.09 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
137.4 ns |
1.16 ns |
1.09 ns |
0.94 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
153.4 ns |
1.98 ns |
1.85 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
126.2 ns |
1.78 ns |
1.66 ns |
0.86 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
783.3 ns |
9.85 ns |
9.22 ns |
5.34 |
0.09 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
166.5 ns |
2.37 ns |
2.21 ns |
1.14 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.83GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
338.5 ns |
4.60 ns |
4.31 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
323.8 ns |
4.51 ns |
3.99 ns |
0.96 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
654.3 ns |
7.03 ns |
6.24 ns |
1.93 |
0.03 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
347.7 ns |
5.91 ns |
5.53 ns |
1.03 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
677.6 ns |
8.92 ns |
8.35 ns |
2.00 |
0.03 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.83GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.718 μs |
0.0219 μs |
0.0194 μs |
1.00 |
0.02 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.83GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,341.1 ns |
22.14 ns |
20.71 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,318.1 ns |
22.17 ns |
20.73 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,603.9 ns |
17.28 ns |
15.32 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,356.6 ns |
50.39 ns |
47.14 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
483.1 ns |
9.19 ns |
9.44 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
477.8 ns |
6.82 ns |
6.04 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
769.3 ns |
8.84 ns |
8.27 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,587.6 ns |
71.68 ns |
67.05 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74 2.83GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
668.42 ns |
12.890 ns |
13.237 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
668.94 ns |
10.702 ns |
10.011 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
880.99 ns |
15.156 ns |
14.177 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,735.58 ns |
60.202 ns |
56.313 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
46.36 ns |
0.659 ns |
0.616 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
46.51 ns |
0.716 ns |
0.670 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
239.63 ns |
2.503 ns |
2.341 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,933.79 ns |
64.121 ns |
59.979 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
733.1 ns |
9.48 ns |
8.87 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
8,442.5 ns |
94.77 ns |
88.65 ns |
11.52 |
0.18 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,607.6 ns |
15.44 ns |
13.69 ns |
2.19 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,623.0 ns |
22.45 ns |
18.75 ns |
2.21 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,882.4 ns |
90.89 ns |
75.90 ns |
14.85 |
0.20 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
725.7 ns |
7.24 ns |
6.42 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
643,617.3 ns |
11,021.84 ns |
10,309.83 ns |
887.01 |
15.69 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,435.9 ns |
32.52 ns |
30.42 ns |
3.36 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,400.6 ns |
14.07 ns |
11.75 ns |
3.31 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
843,173.0 ns |
5,928.33 ns |
5,255.31 ns |
1,162.03 |
12.11 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
716.2 ns |
10.23 ns |
9.57 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
75,179,169.6 ns |
816,820.16 ns |
724,089.80 ns |
104,984.59 |
1,670.88 |
1000.0000 |
857.1429 |
285.7143 |
16002139 B |
46,517.85 |
| InvokeIntArrayFixed |
100000 |
73,270.8 ns |
835.33 ns |
781.37 ns |
102.32 |
1.69 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
72,242.2 ns |
469.31 ns |
438.99 ns |
100.88 |
1.43 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
103,542,395.4 ns |
1,939,045.58 ns |
1,813,784.44 ns |
144,592.66 |
3,082.26 |
2000.0000 |
1800.0000 |
1000.0000 |
27896368 B |
81,094.09 |
core-ubuntu-22.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.535 μs |
0.0203 μs |
0.0190 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.482 μs |
0.0150 μs |
0.0140 μs |
0.97 |
0.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.478 μs |
0.0191 μs |
0.0179 μs |
0.96 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
123.7 ns |
2.20 ns |
2.05 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
153.7 ns |
2.96 ns |
3.41 ns |
1.24 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
120.8 ns |
1.71 ns |
1.52 ns |
0.98 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
890.7 ns |
4.66 ns |
3.89 ns |
7.20 |
0.12 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
127.2 ns |
0.75 ns |
0.58 ns |
1.03 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
142.1 ns |
2.85 ns |
2.80 ns |
1.15 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
118.3 ns |
1.48 ns |
1.39 ns |
0.96 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
875.4 ns |
7.73 ns |
6.85 ns |
7.08 |
0.13 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
157.1 ns |
1.84 ns |
1.63 ns |
1.27 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
351.3 ns |
6.39 ns |
5.98 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
315.5 ns |
5.47 ns |
4.85 ns |
0.90 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
717.4 ns |
7.41 ns |
6.57 ns |
2.04 |
0.04 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
351.9 ns |
3.63 ns |
3.21 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
709.3 ns |
12.62 ns |
11.80 ns |
2.02 |
0.05 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.776 μs |
0.0273 μs |
0.0256 μs |
1.00 |
0.02 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,334.4 ns |
17.73 ns |
16.58 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,409.3 ns |
22.45 ns |
21.00 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,608.9 ns |
23.64 ns |
22.11 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,722.8 ns |
50.06 ns |
44.38 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
511.2 ns |
9.07 ns |
8.48 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
518.6 ns |
10.06 ns |
14.10 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
778.9 ns |
8.38 ns |
7.43 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,806.3 ns |
75.05 ns |
66.53 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
829.77 ns |
12.559 ns |
11.748 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
False |
True |
713.82 ns |
12.650 ns |
11.833 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
1,003.67 ns |
12.299 ns |
10.271 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
5,041.75 ns |
74.001 ns |
69.220 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
41.98 ns |
0.793 ns |
0.742 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.26 ns |
0.783 ns |
0.733 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
243.45 ns |
2.090 ns |
1.955 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
4,129.35 ns |
29.761 ns |
24.852 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.20GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
748.4 ns |
10.93 ns |
10.22 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,794.3 ns |
123.10 ns |
115.15 ns |
10.42 |
0.20 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,571.7 ns |
12.44 ns |
11.03 ns |
2.10 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,575.9 ns |
28.94 ns |
27.07 ns |
2.11 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,504.5 ns |
118.43 ns |
110.78 ns |
14.04 |
0.23 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
720.0 ns |
12.21 ns |
11.42 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
593,770.7 ns |
6,021.25 ns |
5,337.68 ns |
824.87 |
14.69 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,299.8 ns |
24.21 ns |
22.65 ns |
3.19 |
0.06 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,267.2 ns |
21.01 ns |
18.63 ns |
3.15 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
818,115.5 ns |
8,802.82 ns |
7,803.47 ns |
1,136.54 |
20.54 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
705.3 ns |
12.76 ns |
11.94 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
71,815,508.4 ns |
1,027,524.45 ns |
961,147.01 ns |
101,853.96 |
2,117.67 |
1000.0000 |
857.1429 |
285.7143 |
16002247 B |
46,518.16 |
| InvokeIntArrayFixed |
100000 |
72,281.9 ns |
454.10 ns |
424.76 ns |
102.52 |
1.77 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
71,526.5 ns |
303.14 ns |
253.14 ns |
101.44 |
1.69 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
102,791,653.2 ns |
1,859,714.79 ns |
1,739,578.37 ns |
145,786.58 |
3,365.36 |
1800.0000 |
1600.0000 |
800.0000 |
27895690 B |
81,092.12 |
core-ubuntu-22.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.20GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.440 μs |
0.0188 μs |
0.0176 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.441 μs |
0.0181 μs |
0.0169 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.459 μs |
0.0242 μs |
0.0227 μs |
1.01 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.20GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
118.8 ns |
1.19 ns |
1.00 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
138.6 ns |
2.42 ns |
2.15 ns |
1.17 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
118.4 ns |
1.71 ns |
1.60 ns |
1.00 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
790.9 ns |
7.54 ns |
6.68 ns |
6.66 |
0.08 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
126.3 ns |
2.06 ns |
1.93 ns |
1.06 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
146.1 ns |
2.77 ns |
2.59 ns |
1.23 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
116.5 ns |
2.33 ns |
2.29 ns |
0.98 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
811.6 ns |
10.05 ns |
9.40 ns |
6.83 |
0.09 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
151.7 ns |
2.12 ns |
1.88 ns |
1.28 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.20GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
362.0 ns |
4.79 ns |
4.25 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
321.8 ns |
6.43 ns |
6.87 ns |
0.89 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
705.4 ns |
8.78 ns |
7.78 ns |
1.95 |
0.03 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
372.3 ns |
7.01 ns |
6.89 ns |
1.03 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
738.1 ns |
11.09 ns |
10.37 ns |
2.04 |
0.04 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.20GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.809 μs |
0.0167 μs |
0.0148 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.20GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,297.4 ns |
20.74 ns |
19.40 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,278.8 ns |
14.10 ns |
13.18 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,566.0 ns |
23.13 ns |
20.50 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,507.8 ns |
87.27 ns |
81.63 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
524.8 ns |
10.32 ns |
11.88 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
495.0 ns |
7.57 ns |
7.08 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
778.9 ns |
12.29 ns |
10.90 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,615.9 ns |
91.98 ns |
94.46 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.20GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
675.63 ns |
9.420 ns |
7.866 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
682.26 ns |
12.783 ns |
13.127 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
938.20 ns |
13.748 ns |
12.860 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,777.43 ns |
59.187 ns |
52.468 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
42.08 ns |
0.697 ns |
0.652 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
41.81 ns |
0.547 ns |
0.511 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
254.55 ns |
2.059 ns |
1.926 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,952.03 ns |
41.130 ns |
34.345 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Median |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
410.1 ns |
3.59 ns |
3.00 ns |
408.9 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,278.5 ns |
77.53 ns |
68.72 ns |
5,278.1 ns |
12.87 |
0.19 |
0.0229 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
877.7 ns |
7.05 ns |
5.88 ns |
877.5 ns |
2.14 |
0.02 |
0.0048 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
855.9 ns |
4.22 ns |
3.95 ns |
855.1 ns |
2.09 |
0.02 |
0.0048 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
6,722.3 ns |
49.60 ns |
46.39 ns |
6,731.0 ns |
16.39 |
0.16 |
0.0381 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
418.9 ns |
2.53 ns |
2.37 ns |
418.4 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
433,943.2 ns |
8,648.30 ns |
16,454.29 ns |
426,155.3 ns |
1,035.94 |
39.28 |
1.4648 |
0.4883 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,509.5 ns |
5.80 ns |
4.53 ns |
1,509.6 ns |
3.60 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,560.1 ns |
25.72 ns |
26.41 ns |
1,549.6 ns |
3.72 |
0.06 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
564,421.5 ns |
6,741.56 ns |
5,976.22 ns |
564,807.5 ns |
1,347.43 |
15.62 |
2.9297 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
407.7 ns |
3.38 ns |
3.00 ns |
407.8 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
46,092,376.0 ns |
468,167.58 ns |
415,018.36 ns |
46,205,879.4 ns |
113,051.71 |
1,271.55 |
272.7273 |
181.8182 |
181.8182 |
16000844 B |
46,514.08 |
| InvokeIntArrayFixed |
100000 |
75,256.0 ns |
463.23 ns |
433.30 ns |
75,104.2 ns |
184.58 |
1.67 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
73,690.8 ns |
516.22 ns |
431.07 ns |
73,770.5 ns |
180.74 |
1.64 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
67,125,056.9 ns |
1,306,262.81 ns |
1,652,004.35 ns |
67,420,872.4 ns |
164,638.99 |
4,138.72 |
1000.0000 |
875.0000 |
875.0000 |
27894704 B |
81,089.26 |
core-ubuntu-22.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
964.8 ns |
12.01 ns |
11.23 ns |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
840.3 ns |
5.54 ns |
4.91 ns |
0.87 |
0.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
969.1 ns |
11.50 ns |
10.76 ns |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Median |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
74.89 ns |
0.301 ns |
0.281 ns |
74.86 ns |
1.00 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
88.34 ns |
0.436 ns |
0.408 ns |
88.36 ns |
1.18 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
74.39 ns |
1.510 ns |
3.469 ns |
72.73 ns |
0.99 |
0.05 |
- |
- |
0.00 |
| SetInstanceStringField |
533.82 ns |
1.833 ns |
1.625 ns |
534.42 ns |
7.13 |
0.03 |
0.0029 |
288 B |
12.00 |
| GetStaticIntField |
93.12 ns |
0.423 ns |
0.353 ns |
93.08 ns |
1.24 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
83.37 ns |
0.841 ns |
0.787 ns |
83.39 ns |
1.11 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
68.69 ns |
0.493 ns |
0.461 ns |
68.59 ns |
0.92 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
525.44 ns |
4.310 ns |
3.820 ns |
525.46 ns |
7.02 |
0.06 |
0.0029 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
92.20 ns |
0.638 ns |
0.597 ns |
91.98 ns |
1.23 |
0.01 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
213.1 ns |
4.27 ns |
7.69 ns |
1.00 |
0.05 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
184.8 ns |
1.05 ns |
0.98 ns |
0.87 |
0.03 |
- |
- |
NA |
| InvokeStaticWithFeedback |
406.3 ns |
3.00 ns |
2.66 ns |
1.91 |
0.07 |
0.0038 |
344 B |
NA |
| InvokeInstanceEmpty |
207.3 ns |
0.92 ns |
0.86 ns |
0.97 |
0.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
409.5 ns |
3.18 ns |
2.98 ns |
1.92 |
0.07 |
0.0038 |
344 B |
NA |
core-ubuntu-22.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
980.8 ns |
5.70 ns |
5.33 ns |
1.00 |
0.0076 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
697.1 ns |
5.98 ns |
5.60 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
702.9 ns |
9.27 ns |
8.21 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
859.4 ns |
5.89 ns |
5.22 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,117.9 ns |
14.76 ns |
13.08 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
266.9 ns |
1.70 ns |
1.59 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
288.3 ns |
4.85 ns |
4.30 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
452.2 ns |
5.76 ns |
5.11 ns |
0.0014 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,720.3 ns |
35.22 ns |
29.41 ns |
0.0076 |
712 B |
core-ubuntu-22.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
427.78 ns |
4.330 ns |
3.616 ns |
0.0008 |
80 B |
| PredicateSustained |
False |
False |
True |
427.51 ns |
3.559 ns |
3.330 ns |
0.0009 |
80 B |
| PredicateSustained |
False |
True |
False |
580.72 ns |
9.903 ns |
8.778 ns |
0.0011 |
176 B |
| PredicateSustained |
False |
True |
True |
2,871.65 ns |
22.416 ns |
17.501 ns |
0.0050 |
768 B |
| PredicateSustained |
True |
False |
False |
38.04 ns |
0.532 ns |
0.498 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
37.45 ns |
0.127 ns |
0.118 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
171.20 ns |
0.730 ns |
0.647 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
2,386.68 ns |
22.000 ns |
20.579 ns |
0.0067 |
688 B |
core-ubuntu-22.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
565.1 ns |
11.05 ns |
12.72 ns |
1.00 |
0.03 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,077.2 ns |
126.66 ns |
112.28 ns |
12.53 |
0.33 |
0.0229 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,204.6 ns |
22.30 ns |
20.86 ns |
2.13 |
0.06 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,180.8 ns |
21.73 ns |
23.25 ns |
2.09 |
0.06 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,921.4 ns |
103.39 ns |
86.33 ns |
15.79 |
0.37 |
0.0305 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
544.8 ns |
10.51 ns |
11.24 ns |
1.00 |
0.03 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
559,996.8 ns |
11,179.50 ns |
10,979.76 ns |
1,028.23 |
28.11 |
0.9766 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,924.0 ns |
38.15 ns |
35.68 ns |
3.53 |
0.09 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,004.4 ns |
36.73 ns |
34.36 ns |
3.68 |
0.09 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
720,736.0 ns |
14,246.77 ns |
19,501.14 ns |
1,323.37 |
43.71 |
2.9297 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
566.6 ns |
11.28 ns |
11.08 ns |
1.00 |
0.03 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,007,530.5 ns |
1,174,354.82 ns |
1,098,492.23 ns |
105,954.10 |
2,754.18 |
250.0000 |
125.0000 |
125.0000 |
16000669 B |
46,513.57 |
| InvokeIntArrayFixed |
100000 |
74,073.1 ns |
1,472.77 ns |
1,305.57 ns |
130.79 |
3.34 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
74,666.5 ns |
699.39 ns |
619.99 ns |
131.84 |
2.72 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
80,877,737.6 ns |
1,558,383.48 ns |
1,913,835.03 ns |
142,804.21 |
4,277.55 |
1000.0000 |
857.1429 |
857.1429 |
27895585 B |
81,091.82 |
core-ubuntu-22.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.277 μs |
0.0213 μs |
0.0189 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.135 μs |
0.0211 μs |
0.0197 μs |
0.89 |
0.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.264 μs |
0.0165 μs |
0.0146 μs |
0.99 |
0.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
103.0 ns |
1.02 ns |
0.96 ns |
1.00 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
121.6 ns |
2.45 ns |
2.52 ns |
1.18 |
0.03 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
104.0 ns |
1.94 ns |
1.82 ns |
1.01 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
715.6 ns |
7.94 ns |
7.42 ns |
6.95 |
0.09 |
0.0029 |
288 B |
12.00 |
| GetStaticIntField |
111.8 ns |
1.79 ns |
1.68 ns |
1.09 |
0.02 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
123.7 ns |
2.02 ns |
1.79 ns |
1.20 |
0.02 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
108.6 ns |
2.11 ns |
3.96 ns |
1.05 |
0.04 |
- |
- |
0.00 |
| SetStaticStringField |
716.9 ns |
10.30 ns |
9.13 ns |
6.96 |
0.11 |
0.0029 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
128.0 ns |
1.86 ns |
1.56 ns |
1.24 |
0.02 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
323.1 ns |
6.43 ns |
7.40 ns |
1.00 |
0.03 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
309.0 ns |
4.34 ns |
3.84 ns |
0.96 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
550.7 ns |
10.86 ns |
12.50 ns |
1.71 |
0.05 |
0.0038 |
344 B |
NA |
| InvokeInstanceEmpty |
327.3 ns |
4.93 ns |
4.37 ns |
1.01 |
0.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
536.9 ns |
3.74 ns |
3.50 ns |
1.66 |
0.04 |
0.0038 |
344 B |
NA |
core-ubuntu-22.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.350 μs |
0.0115 μs |
0.0102 μs |
1.00 |
0.0076 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
996.2 ns |
16.97 ns |
15.87 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,002.6 ns |
13.11 ns |
12.26 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,250.6 ns |
24.62 ns |
29.31 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,209.3 ns |
57.58 ns |
51.05 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
388.1 ns |
7.81 ns |
12.38 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
375.8 ns |
6.25 ns |
5.85 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
620.5 ns |
12.27 ns |
23.65 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,895.1 ns |
76.97 ns |
110.39 ns |
0.0076 |
712 B |
core-ubuntu-22.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.58GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
618.20 ns |
10.603 ns |
9.918 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
627.31 ns |
12.347 ns |
12.679 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
818.58 ns |
16.258 ns |
27.163 ns |
0.0017 |
176 B |
| PredicateSustained |
False |
True |
True |
3,851.21 ns |
42.464 ns |
35.459 ns |
- |
768 B |
| PredicateSustained |
True |
False |
False |
52.12 ns |
1.040 ns |
1.822 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
53.93 ns |
0.999 ns |
1.367 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
214.15 ns |
2.166 ns |
1.809 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
3,278.01 ns |
63.850 ns |
53.318 ns |
- |
688 B |
core-ubuntu-22.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.17GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
755.4 ns |
13.63 ns |
12.75 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
8,051.5 ns |
76.74 ns |
68.03 ns |
10.66 |
0.19 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,592.2 ns |
21.17 ns |
19.80 ns |
2.11 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,578.5 ns |
11.04 ns |
10.32 ns |
2.09 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,688.7 ns |
74.15 ns |
69.36 ns |
14.15 |
0.25 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
728.7 ns |
8.48 ns |
7.93 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
603,795.4 ns |
5,105.71 ns |
4,775.88 ns |
828.70 |
10.73 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,365.6 ns |
20.32 ns |
19.01 ns |
3.25 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,387.3 ns |
17.25 ns |
15.29 ns |
3.28 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
811,710.1 ns |
11,568.43 ns |
10,821.12 ns |
1,114.06 |
18.50 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
723.0 ns |
7.24 ns |
6.77 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
75,615,422.7 ns |
1,139,029.66 ns |
1,065,449.05 ns |
104,596.87 |
1,712.71 |
1000.0000 |
857.1429 |
285.7143 |
16001789 B |
46,516.83 |
| InvokeIntArrayFixed |
100000 |
74,076.7 ns |
1,030.38 ns |
963.81 ns |
102.47 |
1.59 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
74,616.6 ns |
521.63 ns |
487.94 ns |
103.22 |
1.14 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
102,160,468.9 ns |
1,927,645.45 ns |
1,803,120.75 ns |
141,315.96 |
2,733.10 |
1800.0000 |
1600.0000 |
800.0000 |
27894792 B |
81,089.51 |
core-ubuntu-22.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.17GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.483 μs |
0.0228 μs |
0.0191 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.505 μs |
0.0165 μs |
0.0155 μs |
1.02 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.506 μs |
0.0179 μs |
0.0159 μs |
1.02 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.17GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
125.5 ns |
2.39 ns |
2.23 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
145.7 ns |
2.89 ns |
2.70 ns |
1.16 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
118.9 ns |
2.06 ns |
1.93 ns |
0.95 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
833.7 ns |
5.32 ns |
4.98 ns |
6.65 |
0.12 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
128.7 ns |
2.40 ns |
2.25 ns |
1.03 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
143.8 ns |
2.05 ns |
1.92 ns |
1.15 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
115.0 ns |
1.32 ns |
1.23 ns |
0.92 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
838.6 ns |
9.71 ns |
9.08 ns |
6.69 |
0.13 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
161.3 ns |
3.09 ns |
2.89 ns |
1.29 |
0.03 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.17GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
346.2 ns |
4.95 ns |
4.63 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
305.4 ns |
4.53 ns |
4.24 ns |
0.88 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
725.6 ns |
14.23 ns |
13.31 ns |
2.10 |
0.05 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
366.3 ns |
5.79 ns |
5.42 ns |
1.06 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
718.4 ns |
13.25 ns |
12.39 ns |
2.08 |
0.04 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.17GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.848 μs |
0.0174 μs |
0.0162 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.17GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,313.9 ns |
19.28 ns |
17.09 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,344.1 ns |
24.24 ns |
22.68 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,581.9 ns |
16.94 ns |
15.85 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,573.5 ns |
37.86 ns |
35.41 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
495.1 ns |
9.76 ns |
9.58 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
485.4 ns |
9.38 ns |
10.04 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
771.6 ns |
7.56 ns |
6.70 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,663.6 ns |
30.89 ns |
27.39 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.17GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
698.17 ns |
13.630 ns |
15.696 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
688.77 ns |
9.118 ns |
8.083 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
948.45 ns |
9.723 ns |
9.094 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,844.25 ns |
43.793 ns |
38.821 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
42.90 ns |
0.719 ns |
0.672 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.76 ns |
0.826 ns |
0.811 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
246.02 ns |
3.243 ns |
3.033 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
4,024.83 ns |
29.190 ns |
22.790 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
530.6 ns |
10.14 ns |
9.48 ns |
1.00 |
0.02 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,484.3 ns |
91.02 ns |
85.14 ns |
12.23 |
0.26 |
0.0229 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,073.0 ns |
15.19 ns |
13.47 ns |
2.02 |
0.04 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,066.0 ns |
13.53 ns |
11.30 ns |
2.01 |
0.04 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,143.9 ns |
151.18 ns |
196.57 ns |
15.35 |
0.45 |
0.0305 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
512.5 ns |
9.97 ns |
8.84 ns |
1.00 |
0.02 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
510,171.4 ns |
10,078.62 ns |
13,795.74 ns |
995.74 |
31.22 |
0.9766 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,842.8 ns |
30.28 ns |
28.33 ns |
3.60 |
0.08 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,834.0 ns |
36.48 ns |
37.46 ns |
3.58 |
0.09 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
667,477.6 ns |
12,986.66 ns |
14,434.64 ns |
1,302.76 |
35.03 |
2.9297 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
532.8 ns |
8.81 ns |
7.35 ns |
1.00 |
0.02 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
55,680,809.5 ns |
932,358.04 ns |
826,511.12 ns |
104,523.06 |
2,038.18 |
333.3333 |
222.2222 |
222.2222 |
16001600 B |
46,516.28 |
| InvokeIntArrayFixed |
100000 |
73,472.0 ns |
1,421.09 ns |
2,525.99 ns |
137.92 |
5.03 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
74,401.2 ns |
1,465.83 ns |
1,744.96 ns |
139.66 |
3.70 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
78,117,369.6 ns |
1,534,436.43 ns |
1,995,200.95 ns |
146,640.58 |
4,151.15 |
1000.0000 |
857.1429 |
857.1429 |
27896056 B |
81,093.19 |
core-ubuntu-22.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.217 μs |
0.0243 μs |
0.0280 μs |
1.00 |
0.03 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.049 μs |
0.0202 μs |
0.0248 μs |
0.86 |
0.03 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.170 μs |
0.0186 μs |
0.0182 μs |
0.96 |
0.03 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
96.87 ns |
1.664 ns |
1.475 ns |
1.00 |
0.02 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
112.66 ns |
1.382 ns |
1.293 ns |
1.16 |
0.02 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
94.99 ns |
1.694 ns |
1.585 ns |
0.98 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
686.85 ns |
13.249 ns |
13.606 ns |
7.09 |
0.17 |
0.0029 |
288 B |
12.00 |
| GetStaticIntField |
103.50 ns |
2.102 ns |
2.158 ns |
1.07 |
0.03 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
109.45 ns |
2.056 ns |
1.923 ns |
1.13 |
0.03 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
94.57 ns |
0.781 ns |
0.692 ns |
0.98 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
695.71 ns |
12.623 ns |
11.808 ns |
7.18 |
0.16 |
0.0029 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
125.44 ns |
2.363 ns |
2.210 ns |
1.30 |
0.03 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
261.7 ns |
4.65 ns |
3.88 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
234.8 ns |
3.50 ns |
3.27 ns |
0.90 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
572.0 ns |
11.25 ns |
12.03 ns |
2.19 |
0.05 |
0.0038 |
344 B |
NA |
| InvokeInstanceEmpty |
261.0 ns |
5.06 ns |
5.19 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
514.6 ns |
9.53 ns |
8.91 ns |
1.97 |
0.04 |
0.0038 |
344 B |
NA |
core-ubuntu-22.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.258 μs |
0.0248 μs |
0.0254 μs |
1.00 |
0.03 |
0.0076 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
931.0 ns |
17.68 ns |
13.80 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
893.3 ns |
15.51 ns |
16.60 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,111.5 ns |
21.45 ns |
23.84 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,821.7 ns |
40.72 ns |
34.00 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
338.6 ns |
5.91 ns |
5.81 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
335.9 ns |
5.39 ns |
5.54 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
580.4 ns |
11.31 ns |
17.27 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,197.2 ns |
62.84 ns |
64.53 ns |
0.0076 |
712 B |
core-ubuntu-22.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.01GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
512.90 ns |
9.773 ns |
9.142 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
527.49 ns |
10.408 ns |
15.578 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
726.78 ns |
13.996 ns |
14.976 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
3,313.34 ns |
53.718 ns |
50.248 ns |
- |
768 B |
| PredicateSustained |
True |
False |
False |
50.14 ns |
0.864 ns |
0.808 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
49.16 ns |
0.979 ns |
1.465 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
207.03 ns |
3.289 ns |
3.076 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
2,845.86 ns |
33.372 ns |
29.583 ns |
0.0050 |
688 B |
core-ubuntu-22.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.23GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
807.7 ns |
15.85 ns |
18.25 ns |
1.00 |
0.03 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,626.8 ns |
86.60 ns |
81.00 ns |
9.45 |
0.23 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,572.7 ns |
27.98 ns |
26.17 ns |
1.95 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,562.5 ns |
22.31 ns |
19.78 ns |
1.94 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,409.0 ns |
99.50 ns |
93.07 ns |
12.89 |
0.31 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
714.7 ns |
13.75 ns |
12.86 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
586,009.1 ns |
7,079.79 ns |
6,622.44 ns |
820.15 |
16.75 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,316.5 ns |
26.38 ns |
24.67 ns |
3.24 |
0.07 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,296.2 ns |
35.67 ns |
33.37 ns |
3.21 |
0.07 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
841,908.3 ns |
9,676.56 ns |
9,051.46 ns |
1,178.29 |
23.74 |
15.6250 |
6.8359 |
- |
265889 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
749.6 ns |
8.90 ns |
8.32 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
69,746,026.8 ns |
1,042,160.36 ns |
974,837.45 ns |
93,058.77 |
1,606.27 |
1000.0000 |
857.1429 |
285.7143 |
16001854 B |
46,517.02 |
| InvokeIntArrayFixed |
100000 |
71,069.7 ns |
309.00 ns |
258.03 ns |
94.82 |
1.07 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
71,180.9 ns |
430.03 ns |
381.21 ns |
94.97 |
1.13 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
100,524,030.6 ns |
1,713,629.15 ns |
1,602,929.77 ns |
134,124.38 |
2,520.58 |
1800.0000 |
1600.0000 |
800.0000 |
27895275 B |
81,090.92 |
core-ubuntu-22.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.23GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.463 μs |
0.0134 μs |
0.0125 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.412 μs |
0.0128 μs |
0.0113 μs |
0.96 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.446 μs |
0.0151 μs |
0.0141 μs |
0.99 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.23GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
120.1 ns |
2.24 ns |
2.09 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
140.3 ns |
2.84 ns |
2.78 ns |
1.17 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
118.7 ns |
2.17 ns |
2.03 ns |
0.99 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
806.1 ns |
7.63 ns |
6.37 ns |
6.71 |
0.13 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
133.1 ns |
0.74 ns |
0.62 ns |
1.11 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
142.0 ns |
2.14 ns |
2.00 ns |
1.18 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
122.3 ns |
2.43 ns |
2.39 ns |
1.02 |
0.03 |
- |
- |
0.00 |
| SetStaticStringField |
810.7 ns |
6.80 ns |
6.03 ns |
6.75 |
0.12 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
159.4 ns |
3.00 ns |
2.81 ns |
1.33 |
0.03 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.23GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
346.7 ns |
6.82 ns |
7.29 ns |
1.00 |
0.03 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
316.5 ns |
5.34 ns |
5.00 ns |
0.91 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
739.2 ns |
8.58 ns |
8.02 ns |
2.13 |
0.05 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
355.6 ns |
3.97 ns |
3.52 ns |
1.03 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
748.4 ns |
10.77 ns |
9.55 ns |
2.16 |
0.05 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.23GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.727 μs |
0.0180 μs |
0.0168 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.23GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,322.4 ns |
25.39 ns |
23.75 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,281.0 ns |
13.79 ns |
12.90 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,568.5 ns |
14.31 ns |
12.68 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,432.9 ns |
105.93 ns |
99.09 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
520.0 ns |
10.44 ns |
11.60 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
524.0 ns |
9.64 ns |
9.02 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
785.9 ns |
9.76 ns |
9.13 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,690.5 ns |
75.94 ns |
71.03 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.23GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
668.98 ns |
10.781 ns |
10.084 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
659.82 ns |
12.547 ns |
12.885 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
940.16 ns |
15.262 ns |
14.276 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,792.00 ns |
62.059 ns |
55.014 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
45.96 ns |
0.809 ns |
0.757 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.70 ns |
0.685 ns |
0.641 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
249.44 ns |
4.117 ns |
3.851 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
4,019.38 ns |
49.766 ns |
44.117 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.07GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
728.6 ns |
10.22 ns |
9.06 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
8,282.1 ns |
113.08 ns |
105.77 ns |
11.37 |
0.20 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,631.7 ns |
16.33 ns |
15.28 ns |
2.24 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,625.9 ns |
12.07 ns |
10.70 ns |
2.23 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,388.3 ns |
78.73 ns |
69.79 ns |
14.26 |
0.20 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
749.2 ns |
12.96 ns |
11.49 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
622,167.6 ns |
4,791.84 ns |
4,001.40 ns |
830.65 |
13.21 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,334.0 ns |
25.03 ns |
22.19 ns |
3.12 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,369.7 ns |
16.07 ns |
15.03 ns |
3.16 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
856,601.1 ns |
9,808.61 ns |
8,695.08 ns |
1,143.64 |
20.15 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
733.8 ns |
5.62 ns |
4.99 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
74,933,400.5 ns |
789,158.96 ns |
738,179.78 ns |
102,120.02 |
1,182.35 |
1000.0000 |
857.1429 |
285.7143 |
16002224 B |
46,518.09 |
| InvokeIntArrayFixed |
100000 |
72,200.6 ns |
232.19 ns |
205.83 ns |
98.40 |
0.70 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
72,502.6 ns |
416.69 ns |
389.78 ns |
98.81 |
0.83 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
102,928,223.5 ns |
1,107,388.78 ns |
1,035,852.15 ns |
140,271.65 |
1,647.96 |
1800.0000 |
1600.0000 |
800.0000 |
27895165 B |
81,090.60 |
core-ubuntu-22.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.07GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.491 μs |
0.0210 μs |
0.0196 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.501 μs |
0.0250 μs |
0.0234 μs |
1.01 |
0.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.479 μs |
0.0157 μs |
0.0147 μs |
0.99 |
0.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.07GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
124.9 ns |
1.69 ns |
1.49 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
152.4 ns |
2.71 ns |
2.54 ns |
1.22 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
124.8 ns |
1.75 ns |
1.63 ns |
1.00 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
876.3 ns |
1.71 ns |
1.34 ns |
7.02 |
0.08 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
133.0 ns |
1.81 ns |
1.61 ns |
1.07 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
157.8 ns |
2.60 ns |
2.43 ns |
1.26 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
120.3 ns |
1.51 ns |
1.26 ns |
0.96 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
888.4 ns |
7.41 ns |
6.57 ns |
7.11 |
0.10 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
153.2 ns |
2.02 ns |
1.89 ns |
1.23 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.07GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
430.7 ns |
7.41 ns |
6.93 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
397.2 ns |
5.15 ns |
4.57 ns |
0.92 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
700.2 ns |
10.51 ns |
9.83 ns |
1.63 |
0.03 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
432.7 ns |
8.60 ns |
8.45 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
757.1 ns |
12.21 ns |
11.42 ns |
1.76 |
0.04 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.07GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.794 μs |
0.0206 μs |
0.0193 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.07GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,388.6 ns |
26.56 ns |
26.09 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,359.6 ns |
14.61 ns |
12.95 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,675.1 ns |
6.62 ns |
5.87 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,916.0 ns |
84.72 ns |
79.25 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
508.5 ns |
5.61 ns |
5.25 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
517.8 ns |
8.06 ns |
7.14 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
796.1 ns |
12.57 ns |
12.34 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,884.0 ns |
63.43 ns |
59.33 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.07GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
748.19 ns |
10.288 ns |
9.623 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
False |
True |
735.74 ns |
14.197 ns |
15.780 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
True |
False |
996.44 ns |
15.194 ns |
13.469 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
5,139.34 ns |
83.948 ns |
78.525 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
43.29 ns |
0.697 ns |
0.652 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.84 ns |
0.681 ns |
0.637 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
258.93 ns |
2.681 ns |
2.508 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
4,187.06 ns |
45.639 ns |
38.110 ns |
0.0400 |
688 B |
core-ubuntu-22.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
406.7 ns |
2.60 ns |
2.31 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,601.9 ns |
30.41 ns |
28.45 ns |
13.77 |
0.10 |
0.0229 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
917.0 ns |
17.21 ns |
18.41 ns |
2.25 |
0.05 |
0.0048 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
877.2 ns |
6.50 ns |
5.77 ns |
2.16 |
0.02 |
0.0048 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
6,993.9 ns |
82.27 ns |
72.93 ns |
17.20 |
0.20 |
0.0381 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
413.8 ns |
4.77 ns |
3.98 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
435,278.9 ns |
3,668.61 ns |
3,252.13 ns |
1,051.89 |
12.30 |
1.4648 |
0.4883 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,550.3 ns |
23.36 ns |
20.71 ns |
3.75 |
0.06 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,557.9 ns |
19.97 ns |
16.67 ns |
3.76 |
0.05 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
561,903.9 ns |
10,884.16 ns |
17,263.43 ns |
1,357.89 |
42.98 |
2.9297 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
413.6 ns |
5.34 ns |
4.46 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
46,363,808.8 ns |
878,192.73 ns |
778,494.98 ns |
112,121.24 |
2,159.97 |
272.7273 |
181.8182 |
181.8182 |
16001415 B |
46,515.74 |
| InvokeIntArrayFixed |
100000 |
75,301.4 ns |
1,358.97 ns |
1,271.18 ns |
182.10 |
3.53 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
70,954.1 ns |
1,401.78 ns |
1,242.64 ns |
171.59 |
3.41 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
65,610,225.2 ns |
1,301,001.55 ns |
2,173,681.50 ns |
158,664.70 |
5,443.40 |
1000.0000 |
875.0000 |
875.0000 |
27896197 B |
81,093.60 |
core-ubuntu-22.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
992.2 ns |
11.03 ns |
8.61 ns |
1.00 |
0.01 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
864.7 ns |
16.95 ns |
16.65 ns |
0.87 |
0.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
998.0 ns |
17.98 ns |
16.82 ns |
1.01 |
0.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
74.99 ns |
0.400 ns |
0.374 ns |
1.00 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
88.45 ns |
0.498 ns |
0.466 ns |
1.18 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
70.89 ns |
0.421 ns |
0.394 ns |
0.95 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
540.01 ns |
10.688 ns |
9.997 ns |
7.20 |
0.13 |
0.0029 |
288 B |
12.00 |
| GetStaticIntField |
81.16 ns |
0.814 ns |
0.635 ns |
1.08 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
87.06 ns |
0.488 ns |
0.381 ns |
1.16 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
70.70 ns |
0.565 ns |
0.501 ns |
0.94 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
522.16 ns |
2.522 ns |
2.106 ns |
6.96 |
0.04 |
0.0029 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
89.28 ns |
1.101 ns |
0.976 ns |
1.19 |
0.01 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
203.6 ns |
1.14 ns |
1.01 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
182.6 ns |
3.65 ns |
3.24 ns |
0.90 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
417.1 ns |
8.22 ns |
8.80 ns |
2.05 |
0.04 |
0.0038 |
344 B |
NA |
| InvokeInstanceEmpty |
212.2 ns |
2.06 ns |
1.61 ns |
1.04 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
419.2 ns |
3.85 ns |
3.22 ns |
2.06 |
0.02 |
0.0038 |
344 B |
NA |
core-ubuntu-22.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.015 μs |
0.0180 μs |
0.0159 μs |
1.00 |
0.02 |
0.0076 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
719.0 ns |
9.16 ns |
8.57 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
713.9 ns |
10.39 ns |
8.68 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
883.8 ns |
15.53 ns |
13.77 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,294.5 ns |
35.22 ns |
29.41 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
275.8 ns |
4.30 ns |
3.81 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
273.6 ns |
2.07 ns |
1.94 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
450.7 ns |
1.39 ns |
1.23 ns |
0.0014 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,784.5 ns |
18.08 ns |
16.91 ns |
0.0076 |
712 B |
core-ubuntu-22.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon 6973P-C 4.02GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
439.77 ns |
5.390 ns |
5.042 ns |
0.0008 |
80 B |
| PredicateSustained |
False |
False |
True |
440.02 ns |
8.644 ns |
11.539 ns |
0.0008 |
80 B |
| PredicateSustained |
False |
True |
False |
604.87 ns |
10.719 ns |
18.202 ns |
0.0011 |
176 B |
| PredicateSustained |
False |
True |
True |
2,873.16 ns |
38.526 ns |
30.078 ns |
0.0050 |
768 B |
| PredicateSustained |
True |
False |
False |
39.51 ns |
0.242 ns |
0.202 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
39.82 ns |
0.659 ns |
0.585 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
164.80 ns |
1.755 ns |
1.642 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
2,406.29 ns |
24.943 ns |
20.828 ns |
0.0067 |
688 B |
core-ubuntu-22.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.41GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
516.0 ns |
7.28 ns |
6.45 ns |
1.00 |
0.02 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,281.6 ns |
54.12 ns |
42.25 ns |
12.18 |
0.17 |
0.0229 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,075.7 ns |
10.06 ns |
8.92 ns |
2.08 |
0.03 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,049.7 ns |
9.13 ns |
8.54 ns |
2.03 |
0.03 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
7,934.1 ns |
81.39 ns |
76.13 ns |
15.38 |
0.23 |
0.0305 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
512.9 ns |
7.41 ns |
6.18 ns |
1.00 |
0.02 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
491,062.6 ns |
2,827.30 ns |
2,506.32 ns |
957.64 |
12.02 |
0.9766 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,820.6 ns |
22.04 ns |
18.40 ns |
3.55 |
0.05 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,826.1 ns |
17.58 ns |
15.59 ns |
3.56 |
0.05 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
642,835.5 ns |
6,806.59 ns |
5,683.81 ns |
1,253.62 |
17.99 |
2.9297 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
511.5 ns |
7.86 ns |
6.97 ns |
1.00 |
0.02 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
54,422,709.4 ns |
524,330.48 ns |
437,839.70 ns |
106,406.95 |
1,620.32 |
333.3333 |
222.2222 |
222.2222 |
16001144 B |
46,514.95 |
| InvokeIntArrayFixed |
100000 |
73,219.2 ns |
1,104.22 ns |
922.08 ns |
143.16 |
2.56 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
73,469.7 ns |
1,150.74 ns |
1,076.41 ns |
143.65 |
2.77 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
75,300,114.9 ns |
1,466,103.86 ns |
1,629,570.56 ns |
147,226.33 |
3,656.81 |
1000.0000 |
857.1429 |
857.1429 |
27896917 B |
81,095.69 |
core-ubuntu-22.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.41GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.179 μs |
0.0224 μs |
0.0220 μs |
1.00 |
0.03 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.016 μs |
0.0069 μs |
0.0065 μs |
0.86 |
0.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.172 μs |
0.0105 μs |
0.0088 μs |
0.99 |
0.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.41GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
91.61 ns |
1.431 ns |
1.269 ns |
1.00 |
0.02 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
110.71 ns |
0.791 ns |
0.740 ns |
1.21 |
0.02 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
91.57 ns |
0.782 ns |
0.693 ns |
1.00 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
650.99 ns |
8.177 ns |
7.249 ns |
7.11 |
0.12 |
0.0029 |
288 B |
12.00 |
| GetStaticIntField |
94.90 ns |
0.940 ns |
0.833 ns |
1.04 |
0.02 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
105.45 ns |
0.780 ns |
0.652 ns |
1.15 |
0.02 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
88.18 ns |
0.883 ns |
0.826 ns |
0.96 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
652.84 ns |
5.371 ns |
4.485 ns |
7.13 |
0.11 |
0.0029 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
119.73 ns |
1.470 ns |
1.228 ns |
1.31 |
0.02 |
0.0002 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.41GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
249.7 ns |
4.56 ns |
4.04 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
231.3 ns |
2.98 ns |
2.79 ns |
0.93 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
511.0 ns |
6.50 ns |
5.43 ns |
2.05 |
0.04 |
0.0038 |
344 B |
NA |
| InvokeInstanceEmpty |
252.5 ns |
1.73 ns |
1.62 ns |
1.01 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
510.4 ns |
3.88 ns |
3.63 ns |
2.04 |
0.03 |
0.0038 |
344 B |
NA |
core-ubuntu-22.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.41GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.239 μs |
0.0139 μs |
0.0116 μs |
1.00 |
0.0076 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.41GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
864.7 ns |
8.01 ns |
7.10 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
874.1 ns |
7.10 ns |
5.54 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,074.2 ns |
14.59 ns |
12.18 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,617.0 ns |
32.62 ns |
30.52 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
329.3 ns |
6.43 ns |
6.60 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
332.6 ns |
3.14 ns |
2.94 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
532.2 ns |
3.91 ns |
3.27 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,046.0 ns |
26.44 ns |
22.08 ns |
0.0076 |
712 B |
core-ubuntu-22.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
INTEL XEON PLATINUM 8573C 3.41GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
498.23 ns |
4.307 ns |
3.818 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
498.83 ns |
6.720 ns |
5.957 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
717.73 ns |
13.685 ns |
14.054 ns |
0.0013 |
176 B |
| PredicateSustained |
False |
True |
True |
3,235.78 ns |
25.321 ns |
23.686 ns |
0.0050 |
768 B |
| PredicateSustained |
True |
False |
False |
48.27 ns |
0.706 ns |
0.626 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
48.06 ns |
0.441 ns |
0.413 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
199.86 ns |
1.219 ns |
1.141 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
2,721.06 ns |
26.451 ns |
24.742 ns |
0.0050 |
688 B |
core-ubuntu-22.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
760.0 ns |
11.40 ns |
10.66 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,877.5 ns |
107.30 ns |
100.37 ns |
10.37 |
0.19 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,581.8 ns |
17.92 ns |
16.76 ns |
2.08 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,600.5 ns |
17.70 ns |
16.56 ns |
2.11 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,475.5 ns |
50.28 ns |
39.25 ns |
13.79 |
0.19 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
720.3 ns |
10.96 ns |
9.72 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
604,575.9 ns |
9,398.46 ns |
8,791.32 ns |
839.48 |
16.26 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,284.7 ns |
19.48 ns |
17.27 ns |
3.17 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,274.2 ns |
27.01 ns |
25.27 ns |
3.16 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
832,825.7 ns |
10,229.18 ns |
9,568.39 ns |
1,156.42 |
20.05 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
745.5 ns |
14.33 ns |
15.33 ns |
1.00 |
0.03 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
71,945,751.2 ns |
915,037.45 ns |
855,926.60 ns |
96,551.13 |
2,216.97 |
1000.0000 |
857.1429 |
285.7143 |
16002368 B |
46,518.51 |
| InvokeIntArrayFixed |
100000 |
73,364.0 ns |
548.10 ns |
512.69 ns |
98.45 |
2.07 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
72,794.3 ns |
587.11 ns |
520.46 ns |
97.69 |
2.05 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
112,338,587.4 ns |
1,314,921.25 ns |
1,229,978.15 ns |
150,758.28 |
3,394.38 |
1800.0000 |
1600.0000 |
800.0000 |
27896126 B |
81,093.39 |
core-ubuntu-22.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.484 μs |
0.0182 μs |
0.0170 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.457 μs |
0.0163 μs |
0.0152 μs |
0.98 |
0.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.432 μs |
0.0152 μs |
0.0135 μs |
0.97 |
0.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
120.5 ns |
0.70 ns |
0.62 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
140.6 ns |
2.01 ns |
1.88 ns |
1.17 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
121.1 ns |
2.45 ns |
2.41 ns |
1.01 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
822.1 ns |
6.23 ns |
5.52 ns |
6.82 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
123.9 ns |
1.65 ns |
1.47 ns |
1.03 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
149.6 ns |
2.37 ns |
2.21 ns |
1.24 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
114.4 ns |
2.16 ns |
2.02 ns |
0.95 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
846.5 ns |
5.90 ns |
5.52 ns |
7.03 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
159.0 ns |
2.82 ns |
2.64 ns |
1.32 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
346.8 ns |
6.57 ns |
6.15 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
311.8 ns |
5.57 ns |
5.21 ns |
0.90 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
777.1 ns |
14.83 ns |
13.87 ns |
2.24 |
0.05 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
359.4 ns |
6.21 ns |
5.81 ns |
1.04 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
732.5 ns |
8.23 ns |
7.70 ns |
2.11 |
0.04 |
0.0200 |
344 B |
NA |
core-ubuntu-22.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.840 μs |
0.0207 μs |
0.0173 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-22.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,305.4 ns |
23.69 ns |
22.16 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,299.5 ns |
21.20 ns |
19.83 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,578.0 ns |
13.54 ns |
12.67 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,475.4 ns |
78.54 ns |
73.46 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
521.0 ns |
10.39 ns |
11.96 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
502.3 ns |
6.58 ns |
5.83 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
784.5 ns |
9.73 ns |
9.10 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,565.2 ns |
36.23 ns |
32.12 ns |
0.0381 |
712 B |
core-ubuntu-22.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763 3.24GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
670.56 ns |
10.631 ns |
9.944 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
680.93 ns |
13.609 ns |
12.730 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
True |
False |
938.93 ns |
7.702 ns |
6.013 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,854.30 ns |
87.339 ns |
81.697 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
43.32 ns |
0.342 ns |
0.285 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.55 ns |
0.851 ns |
0.911 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
249.11 ns |
2.908 ns |
2.720 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
4,049.34 ns |
63.298 ns |
59.209 ns |
0.0400 |
688 B |
core-ubuntu-24.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
520.7 ns |
0.75 ns |
0.67 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,921.2 ns |
8.84 ns |
7.84 ns |
13.29 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,123.1 ns |
2.30 ns |
2.04 ns |
2.16 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,121.1 ns |
3.47 ns |
2.90 ns |
2.15 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,982.7 ns |
22.95 ns |
21.46 ns |
17.25 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
529.0 ns |
0.90 ns |
0.71 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
556,345.6 ns |
1,277.41 ns |
1,194.89 ns |
1,051.65 |
2.57 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,859.3 ns |
11.78 ns |
11.02 ns |
3.51 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,841.9 ns |
4.47 ns |
4.18 ns |
3.48 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
737,268.5 ns |
1,019.51 ns |
851.34 ns |
1,393.64 |
2.36 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
539.9 ns |
0.40 ns |
0.34 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,357,445.0 ns |
311,560.32 ns |
291,433.72 ns |
106,229.28 |
526.64 |
333.3333 |
222.2222 |
222.2222 |
16001391 B |
51,286.51 |
| InvokeIntArrayFixed |
100000 |
60,432.8 ns |
482.31 ns |
451.15 ns |
111.92 |
0.81 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
59,898.2 ns |
152.50 ns |
135.18 ns |
110.93 |
0.25 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,178,030.0 ns |
549,150.43 ns |
486,807.55 ns |
154,050.49 |
876.06 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-24.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.059 μs |
0.0011 μs |
0.0009 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.049 μs |
0.0005 μs |
0.0004 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.064 μs |
0.0009 μs |
0.0007 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
92.57 ns |
0.023 ns |
0.020 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
117.16 ns |
0.029 ns |
0.026 ns |
1.27 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
113.14 ns |
0.102 ns |
0.090 ns |
1.22 |
- |
- |
0.00 |
| SetInstanceStringField |
663.85 ns |
0.913 ns |
0.809 ns |
7.17 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
122.90 ns |
0.038 ns |
0.034 ns |
1.33 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
120.30 ns |
0.020 ns |
0.017 ns |
1.30 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
107.58 ns |
0.033 ns |
0.031 ns |
1.16 |
- |
- |
0.00 |
| SetStaticStringField |
666.62 ns |
1.500 ns |
1.403 ns |
7.20 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
108.77 ns |
0.042 ns |
0.037 ns |
1.18 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
370.7 ns |
0.29 ns |
0.27 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
385.8 ns |
0.40 ns |
0.37 ns |
1.04 |
- |
- |
NA |
| InvokeStaticWithFeedback |
540.7 ns |
1.13 ns |
0.94 ns |
1.46 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
377.0 ns |
0.46 ns |
0.43 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
543.4 ns |
0.59 ns |
0.55 ns |
1.47 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.273 μs |
0.0030 μs |
0.0028 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,054.5 ns |
5.78 ns |
5.41 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,079.9 ns |
5.87 ns |
5.49 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,312.6 ns |
7.29 ns |
6.81 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,899.3 ns |
17.14 ns |
16.03 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
466.9 ns |
0.34 ns |
0.29 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
454.3 ns |
1.06 ns |
0.99 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
709.1 ns |
0.79 ns |
0.70 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,005.6 ns |
7.15 ns |
6.34 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
611.80 ns |
1.622 ns |
1.517 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
614.33 ns |
0.981 ns |
0.819 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
817.84 ns |
3.807 ns |
3.561 ns |
0.0017 |
176 B |
| PredicateSustained |
False |
True |
True |
4,255.41 ns |
23.271 ns |
21.768 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
50.49 ns |
0.817 ns |
0.764 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
50.50 ns |
0.821 ns |
0.768 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
273.64 ns |
0.613 ns |
0.574 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,479.70 ns |
14.802 ns |
13.846 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
563.2 ns |
0.44 ns |
0.39 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,441.5 ns |
27.07 ns |
24.00 ns |
13.21 |
0.04 |
0.0153 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,162.9 ns |
1.13 ns |
0.94 ns |
2.06 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,233.9 ns |
9.51 ns |
8.90 ns |
2.19 |
0.02 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,691.8 ns |
30.74 ns |
28.75 ns |
17.21 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
540.8 ns |
0.37 ns |
0.32 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
552,795.7 ns |
914.06 ns |
763.28 ns |
1,022.14 |
1.48 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,891.4 ns |
8.03 ns |
7.51 ns |
3.50 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,906.5 ns |
7.53 ns |
7.05 ns |
3.53 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
751,884.6 ns |
1,623.81 ns |
1,355.95 ns |
1,390.26 |
2.55 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
560.9 ns |
0.93 ns |
0.82 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,641,347.3 ns |
201,870.93 ns |
188,830.19 ns |
104,547.85 |
358.12 |
333.3333 |
222.2222 |
222.2222 |
16001182 B |
51,285.84 |
| InvokeIntArrayFixed |
100000 |
61,568.9 ns |
283.69 ns |
265.36 ns |
109.77 |
0.48 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,917.4 ns |
624.66 ns |
553.75 ns |
108.61 |
0.97 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,129,086.0 ns |
1,092,554.80 ns |
1,021,976.43 ns |
148,205.46 |
1,776.90 |
666.6667 |
500.0000 |
500.0000 |
27894008 B |
89,403.87 |
core-ubuntu-24.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Median |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.092 μs |
0.0114 μs |
0.0107 μs |
1.083 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.093 μs |
0.0102 μs |
0.0096 μs |
1.087 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.091 μs |
0.0095 μs |
0.0088 μs |
1.087 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
92.37 ns |
0.091 ns |
0.085 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
116.56 ns |
0.050 ns |
0.044 ns |
1.26 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
101.39 ns |
0.015 ns |
0.014 ns |
1.10 |
- |
- |
0.00 |
| SetInstanceStringField |
684.18 ns |
1.123 ns |
0.937 ns |
7.41 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
107.89 ns |
0.036 ns |
0.032 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
111.35 ns |
0.026 ns |
0.023 ns |
1.21 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
97.08 ns |
0.226 ns |
0.212 ns |
1.05 |
- |
- |
0.00 |
| SetStaticStringField |
680.71 ns |
0.986 ns |
0.922 ns |
7.37 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
106.32 ns |
0.032 ns |
0.029 ns |
1.15 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
304.6 ns |
0.25 ns |
0.23 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
311.8 ns |
0.54 ns |
0.50 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
563.0 ns |
0.66 ns |
0.55 ns |
1.85 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
310.8 ns |
0.22 ns |
0.20 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
560.3 ns |
0.23 ns |
0.20 ns |
1.84 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.376 μs |
0.0147 μs |
0.0138 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,072.1 ns |
7.90 ns |
7.39 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,082.9 ns |
8.40 ns |
7.86 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,407.9 ns |
13.34 ns |
11.82 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
7,272.3 ns |
86.98 ns |
77.11 ns |
- |
760 B |
| PredicateRoundTrip |
True |
False |
False |
456.8 ns |
2.66 ns |
2.49 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
459.6 ns |
0.48 ns |
0.42 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
693.8 ns |
3.37 ns |
2.63 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,698.8 ns |
32.92 ns |
30.79 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
609.78 ns |
0.503 ns |
0.393 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
604.94 ns |
1.614 ns |
1.509 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
821.07 ns |
0.745 ns |
0.622 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,418.63 ns |
28.430 ns |
26.594 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
43.27 ns |
0.540 ns |
0.505 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.75 ns |
0.635 ns |
0.594 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
259.01 ns |
0.358 ns |
0.335 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
4,832.76 ns |
71.151 ns |
66.554 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
535.0 ns |
0.35 ns |
0.30 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,189.4 ns |
21.39 ns |
20.01 ns |
13.44 |
0.04 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,128.7 ns |
1.86 ns |
1.74 ns |
2.11 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,135.5 ns |
2.23 ns |
1.98 ns |
2.12 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,017.2 ns |
40.55 ns |
37.93 ns |
16.86 |
0.07 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
536.3 ns |
0.53 ns |
0.44 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
556,781.1 ns |
1,248.13 ns |
1,167.50 ns |
1,038.16 |
2.26 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,852.8 ns |
7.95 ns |
7.44 ns |
3.45 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,914.6 ns |
5.95 ns |
5.27 ns |
3.57 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
732,847.3 ns |
1,447.83 ns |
1,209.00 ns |
1,366.45 |
2.43 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
533.1 ns |
0.35 ns |
0.31 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,308,150.2 ns |
145,063.15 ns |
128,594.70 ns |
109,380.90 |
241.15 |
333.3333 |
222.2222 |
222.2222 |
16001333 B |
51,286.32 |
| InvokeIntArrayFixed |
100000 |
60,688.2 ns |
716.53 ns |
670.24 ns |
113.85 |
1.22 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,562.8 ns |
426.51 ns |
398.96 ns |
113.61 |
0.73 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
84,701,415.0 ns |
683,337.95 ns |
639,194.74 ns |
158,892.32 |
1,164.66 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-24.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.050 μs |
0.0110 μs |
0.0103 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.048 μs |
0.0109 μs |
0.0102 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.031 μs |
0.0015 μs |
0.0013 μs |
0.98 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
96.50 ns |
0.031 ns |
0.028 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
114.44 ns |
0.073 ns |
0.064 ns |
1.19 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
110.88 ns |
0.017 ns |
0.016 ns |
1.15 |
- |
- |
0.00 |
| SetInstanceStringField |
667.61 ns |
0.941 ns |
0.881 ns |
6.92 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
118.03 ns |
0.095 ns |
0.088 ns |
1.22 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
114.40 ns |
0.035 ns |
0.031 ns |
1.19 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
102.25 ns |
0.009 ns |
0.008 ns |
1.06 |
- |
- |
0.00 |
| SetStaticStringField |
663.99 ns |
1.061 ns |
0.941 ns |
6.88 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
109.21 ns |
0.028 ns |
0.024 ns |
1.13 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
305.8 ns |
0.29 ns |
0.27 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
311.3 ns |
0.16 ns |
0.14 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
523.6 ns |
0.19 ns |
0.16 ns |
1.71 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
310.2 ns |
0.12 ns |
0.11 ns |
1.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
543.1 ns |
0.57 ns |
0.51 ns |
1.78 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.355 μs |
0.0053 μs |
0.0044 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,036.2 ns |
9.47 ns |
8.86 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,038.5 ns |
8.68 ns |
8.12 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,274.1 ns |
8.30 ns |
7.36 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
6,330.4 ns |
47.96 ns |
42.51 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
439.5 ns |
0.73 ns |
0.69 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
450.3 ns |
0.37 ns |
0.33 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
673.6 ns |
0.79 ns |
0.62 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,438.1 ns |
36.04 ns |
33.72 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
594.00 ns |
0.483 ns |
0.452 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
599.18 ns |
0.354 ns |
0.314 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
800.18 ns |
1.043 ns |
0.814 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
5,593.36 ns |
48.121 ns |
42.658 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
45.81 ns |
0.871 ns |
0.932 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
45.24 ns |
0.660 ns |
0.515 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
256.76 ns |
0.379 ns |
0.354 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,363.24 ns |
20.160 ns |
18.858 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
553.7 ns |
0.35 ns |
0.31 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,459.6 ns |
19.89 ns |
17.63 ns |
13.47 |
0.03 |
0.0153 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,155.9 ns |
1.40 ns |
1.24 ns |
2.09 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,139.4 ns |
1.37 ns |
1.21 ns |
2.06 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,478.8 ns |
28.69 ns |
25.43 ns |
17.12 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
552.1 ns |
0.37 ns |
0.33 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
560,917.9 ns |
1,116.12 ns |
1,044.02 ns |
1,015.93 |
1.92 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,873.9 ns |
3.01 ns |
2.51 ns |
3.39 |
0.00 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,892.4 ns |
5.57 ns |
4.65 ns |
3.43 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
742,757.0 ns |
1,646.23 ns |
1,374.68 ns |
1,345.27 |
2.52 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
552.2 ns |
1.15 ns |
1.02 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,212,948.3 ns |
190,801.88 ns |
178,476.19 ns |
107,230.75 |
366.26 |
333.3333 |
222.2222 |
222.2222 |
16000703 B |
51,284.30 |
| InvokeIntArrayFixed |
100000 |
60,095.1 ns |
156.49 ns |
138.72 ns |
108.83 |
0.31 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,289.8 ns |
230.23 ns |
204.09 ns |
109.18 |
0.41 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,820,035.0 ns |
786,060.96 ns |
696,822.57 ns |
149,981.63 |
1,247.81 |
1166.6667 |
1000.0000 |
1000.0000 |
27897003 B |
89,413.47 |
core-ubuntu-24.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.064 μs |
0.0072 μs |
0.0060 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.080 μs |
0.0091 μs |
0.0085 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.078 μs |
0.0130 μs |
0.0121 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
96.89 ns |
0.026 ns |
0.023 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
121.03 ns |
0.037 ns |
0.033 ns |
1.25 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
113.93 ns |
0.024 ns |
0.019 ns |
1.18 |
- |
- |
0.00 |
| SetInstanceStringField |
679.38 ns |
0.954 ns |
0.892 ns |
7.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
113.19 ns |
0.021 ns |
0.016 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
115.82 ns |
0.029 ns |
0.025 ns |
1.20 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
100.28 ns |
0.047 ns |
0.044 ns |
1.03 |
- |
- |
0.00 |
| SetStaticStringField |
671.80 ns |
0.960 ns |
0.898 ns |
6.93 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
115.64 ns |
0.041 ns |
0.037 ns |
1.19 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
318.0 ns |
0.25 ns |
0.22 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
313.2 ns |
0.27 ns |
0.24 ns |
0.98 |
- |
- |
NA |
| InvokeStaticWithFeedback |
539.4 ns |
0.50 ns |
0.45 ns |
1.70 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
314.1 ns |
0.28 ns |
0.27 ns |
0.99 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
567.8 ns |
0.49 ns |
0.45 ns |
1.79 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
2.829 μs |
0.0261 μs |
0.0218 μs |
1.00 |
0.0076 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,056.5 ns |
10.82 ns |
10.12 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,045.0 ns |
9.91 ns |
9.27 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,332.5 ns |
18.14 ns |
16.97 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,770.1 ns |
115.00 ns |
96.03 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
461.7 ns |
5.00 ns |
4.17 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
453.8 ns |
0.40 ns |
0.32 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
712.4 ns |
8.04 ns |
7.12 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,684.8 ns |
86.52 ns |
76.70 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
606.11 ns |
1.475 ns |
1.152 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
602.40 ns |
1.629 ns |
1.272 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
807.40 ns |
5.276 ns |
4.935 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,568.63 ns |
70.132 ns |
58.563 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
42.08 ns |
0.775 ns |
0.725 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
41.91 ns |
0.706 ns |
0.661 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
259.96 ns |
0.339 ns |
0.317 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,863.57 ns |
57.993 ns |
71.221 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
543.8 ns |
0.25 ns |
0.22 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,216.9 ns |
17.00 ns |
15.07 ns |
13.27 |
0.03 |
0.0153 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,263.9 ns |
17.81 ns |
16.66 ns |
2.32 |
0.03 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,126.9 ns |
0.97 ns |
0.86 ns |
2.07 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,161.5 ns |
61.20 ns |
57.25 ns |
16.85 |
0.10 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
539.6 ns |
0.25 ns |
0.21 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
534,979.6 ns |
890.16 ns |
832.66 ns |
991.44 |
1.54 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,671.8 ns |
5.03 ns |
4.71 ns |
3.10 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,741.8 ns |
5.34 ns |
4.74 ns |
3.23 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
720,827.2 ns |
1,479.78 ns |
1,235.68 ns |
1,335.85 |
2.26 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
539.9 ns |
0.23 ns |
0.19 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
56,392,026.8 ns |
282,573.78 ns |
264,319.69 ns |
104,452.47 |
475.55 |
333.3333 |
222.2222 |
222.2222 |
16001729 B |
51,287.59 |
| InvokeIntArrayFixed |
100000 |
44,589.5 ns |
213.67 ns |
189.41 ns |
82.59 |
0.34 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
44,582.2 ns |
186.65 ns |
165.46 ns |
82.58 |
0.30 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
86,531,001.2 ns |
997,890.83 ns |
933,427.70 ns |
160,277.57 |
1,675.52 |
1142.8571 |
1000.0000 |
857.1429 |
27897478 B |
89,414.99 |
core-ubuntu-24.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Median |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.066 μs |
0.0146 μs |
0.0137 μs |
1.055 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.071 μs |
0.0126 μs |
0.0118 μs |
1.062 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.051 μs |
0.0118 μs |
0.0111 μs |
1.043 μs |
0.99 |
0.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
95.17 ns |
0.030 ns |
0.026 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
111.31 ns |
0.037 ns |
0.033 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
100.74 ns |
0.013 ns |
0.011 ns |
1.06 |
- |
- |
0.00 |
| SetInstanceStringField |
659.24 ns |
1.079 ns |
1.009 ns |
6.93 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
111.19 ns |
0.101 ns |
0.095 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
108.80 ns |
0.046 ns |
0.039 ns |
1.14 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
98.97 ns |
0.021 ns |
0.019 ns |
1.04 |
- |
- |
0.00 |
| SetStaticStringField |
654.15 ns |
0.777 ns |
0.727 ns |
6.87 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
101.42 ns |
0.037 ns |
0.033 ns |
1.07 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
288.8 ns |
0.23 ns |
0.22 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
294.1 ns |
0.15 ns |
0.11 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
548.3 ns |
0.35 ns |
0.27 ns |
1.90 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
300.8 ns |
0.14 ns |
0.13 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
556.9 ns |
0.52 ns |
0.46 ns |
1.93 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.250 μs |
0.0015 μs |
0.0014 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,039.3 ns |
8.55 ns |
8.00 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,048.4 ns |
7.24 ns |
6.77 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,397.7 ns |
11.12 ns |
9.86 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,311.6 ns |
24.50 ns |
20.46 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
462.3 ns |
0.20 ns |
0.16 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
456.7 ns |
0.47 ns |
0.41 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
684.4 ns |
0.39 ns |
0.30 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,305.8 ns |
62.87 ns |
58.81 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
597.41 ns |
1.523 ns |
1.272 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
601.44 ns |
0.880 ns |
0.823 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
809.17 ns |
2.451 ns |
2.173 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,843.28 ns |
63.922 ns |
59.793 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
43.31 ns |
0.028 ns |
0.026 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.16 ns |
0.016 ns |
0.014 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
257.99 ns |
0.432 ns |
0.383 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
4,064.31 ns |
45.502 ns |
40.336 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
531.0 ns |
0.25 ns |
0.20 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,928.9 ns |
17.14 ns |
16.03 ns |
13.05 |
0.03 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,112.0 ns |
3.02 ns |
2.82 ns |
2.09 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,125.5 ns |
1.86 ns |
1.65 ns |
2.12 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,740.9 ns |
28.94 ns |
27.07 ns |
16.46 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
534.2 ns |
0.34 ns |
0.31 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
550,632.5 ns |
1,248.24 ns |
1,167.61 ns |
1,030.77 |
2.19 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,684.7 ns |
5.30 ns |
4.70 ns |
3.15 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,692.9 ns |
3.81 ns |
3.38 ns |
3.17 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
721,662.5 ns |
927.89 ns |
774.83 ns |
1,350.93 |
1.58 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
540.6 ns |
0.60 ns |
0.50 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,161,997.5 ns |
151,022.76 ns |
141,266.78 ns |
105,732.42 |
270.35 |
333.3333 |
222.2222 |
222.2222 |
16000617 B |
51,284.03 |
| InvokeIntArrayFixed |
100000 |
44,885.1 ns |
366.42 ns |
342.75 ns |
83.02 |
0.62 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
44,827.4 ns |
213.48 ns |
189.25 ns |
82.92 |
0.35 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
80,295,077.5 ns |
1,325,618.22 ns |
1,239,984.10 ns |
148,521.63 |
2,225.54 |
1000.0000 |
833.3333 |
833.3333 |
27896573 B |
89,412.09 |
core-ubuntu-24.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.058 μs |
0.0094 μs |
0.0088 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.042 μs |
0.0088 μs |
0.0082 μs |
0.98 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.030 μs |
0.0006 μs |
0.0005 μs |
0.97 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
96.11 ns |
0.026 ns |
0.023 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
120.69 ns |
0.064 ns |
0.056 ns |
1.26 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
104.19 ns |
0.012 ns |
0.011 ns |
1.08 |
- |
- |
0.00 |
| SetInstanceStringField |
664.24 ns |
0.899 ns |
0.841 ns |
6.91 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
112.56 ns |
0.035 ns |
0.031 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
111.65 ns |
0.023 ns |
0.020 ns |
1.16 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
102.40 ns |
0.013 ns |
0.011 ns |
1.07 |
- |
- |
0.00 |
| SetStaticStringField |
669.83 ns |
0.865 ns |
0.810 ns |
6.97 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
109.86 ns |
0.039 ns |
0.035 ns |
1.14 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
301.8 ns |
0.13 ns |
0.11 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
303.1 ns |
0.99 ns |
0.93 ns |
1.00 |
- |
- |
NA |
| InvokeStaticWithFeedback |
533.6 ns |
0.38 ns |
0.32 ns |
1.77 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
312.0 ns |
0.55 ns |
0.51 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
552.8 ns |
0.30 ns |
0.25 ns |
1.83 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.286 μs |
0.0019 μs |
0.0017 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,027.7 ns |
5.93 ns |
5.26 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,024.7 ns |
5.43 ns |
5.08 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,267.2 ns |
7.53 ns |
7.05 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,098.2 ns |
39.26 ns |
36.72 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
457.3 ns |
0.41 ns |
0.37 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
440.7 ns |
0.67 ns |
0.63 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
684.2 ns |
0.60 ns |
0.47 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,126.5 ns |
40.61 ns |
37.98 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
589.15 ns |
0.241 ns |
0.213 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
591.26 ns |
0.197 ns |
0.164 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
799.04 ns |
6.004 ns |
5.616 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,170.62 ns |
37.252 ns |
34.845 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
44.73 ns |
0.870 ns |
1.002 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
44.55 ns |
0.857 ns |
0.986 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
255.56 ns |
0.438 ns |
0.409 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,485.49 ns |
37.381 ns |
34.966 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
536.4 ns |
0.37 ns |
0.33 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,164.2 ns |
17.73 ns |
16.58 ns |
13.36 |
0.03 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,231.6 ns |
8.23 ns |
7.70 ns |
2.30 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,152.9 ns |
2.03 ns |
1.69 ns |
2.15 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,320.0 ns |
37.62 ns |
35.19 ns |
17.38 |
0.06 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
552.6 ns |
0.40 ns |
0.36 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
549,144.2 ns |
964.08 ns |
854.63 ns |
993.70 |
1.62 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,674.6 ns |
7.86 ns |
7.35 ns |
3.03 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,694.5 ns |
3.48 ns |
2.72 ns |
3.07 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
725,178.4 ns |
1,141.02 ns |
890.83 ns |
1,312.24 |
1.75 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
536.9 ns |
0.22 ns |
0.20 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,724,787.4 ns |
293,818.82 ns |
274,838.31 ns |
107,524.68 |
497.20 |
333.3333 |
222.2222 |
222.2222 |
16001036 B |
51,285.37 |
| InvokeIntArrayFixed |
100000 |
44,298.2 ns |
160.52 ns |
125.33 ns |
82.51 |
0.23 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
44,606.8 ns |
319.58 ns |
298.93 ns |
83.09 |
0.54 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,976,977.5 ns |
1,608,114.96 ns |
1,579,383.92 ns |
152,699.54 |
2,855.40 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-24.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.043 μs |
0.0051 μs |
0.0040 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.046 μs |
0.0135 μs |
0.0127 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.053 μs |
0.0130 μs |
0.0121 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
99.45 ns |
0.043 ns |
0.036 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
120.70 ns |
0.041 ns |
0.037 ns |
1.21 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
107.23 ns |
0.043 ns |
0.040 ns |
1.08 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
676.96 ns |
0.966 ns |
0.856 ns |
6.81 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
113.40 ns |
0.025 ns |
0.020 ns |
1.14 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
112.47 ns |
0.025 ns |
0.022 ns |
1.13 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
101.31 ns |
0.010 ns |
0.009 ns |
1.02 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
665.26 ns |
1.923 ns |
1.798 ns |
6.69 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
108.27 ns |
0.041 ns |
0.036 ns |
1.09 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
302.3 ns |
0.28 ns |
0.24 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
305.0 ns |
0.20 ns |
0.19 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
548.8 ns |
0.27 ns |
0.24 ns |
1.82 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
313.9 ns |
0.10 ns |
0.09 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
547.0 ns |
0.52 ns |
0.46 ns |
1.81 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
2.647 μs |
0.0389 μs |
0.0364 μs |
1.00 |
0.02 |
0.0076 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,024.5 ns |
0.67 ns |
0.52 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,018.8 ns |
0.71 ns |
0.59 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,396.0 ns |
13.33 ns |
12.47 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,875.9 ns |
58.60 ns |
48.93 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
448.5 ns |
0.52 ns |
0.48 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
438.0 ns |
0.49 ns |
0.43 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
689.3 ns |
3.00 ns |
2.50 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,066.1 ns |
55.92 ns |
52.31 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
592.53 ns |
0.650 ns |
0.507 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
600.10 ns |
5.092 ns |
4.763 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
797.60 ns |
2.619 ns |
2.045 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,420.12 ns |
33.028 ns |
25.786 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
44.53 ns |
0.390 ns |
0.346 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
44.76 ns |
0.398 ns |
0.372 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
256.85 ns |
0.538 ns |
0.504 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
4,913.73 ns |
85.453 ns |
91.434 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
528.5 ns |
0.65 ns |
0.55 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,790.4 ns |
20.46 ns |
19.13 ns |
12.85 |
0.04 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,104.5 ns |
2.12 ns |
1.88 ns |
2.09 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,135.8 ns |
2.87 ns |
2.69 ns |
2.15 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,889.8 ns |
13.97 ns |
11.66 ns |
16.82 |
0.03 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
521.5 ns |
0.44 ns |
0.39 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
541,970.7 ns |
2,017.56 ns |
1,887.23 ns |
1,039.18 |
3.58 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,847.1 ns |
5.05 ns |
4.72 ns |
3.54 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,848.0 ns |
7.32 ns |
6.85 ns |
3.54 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
729,578.2 ns |
1,232.12 ns |
1,092.25 ns |
1,398.91 |
2.26 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
528.8 ns |
0.57 ns |
0.51 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,471,890.1 ns |
268,165.90 ns |
250,842.55 ns |
108,675.44 |
470.18 |
333.3333 |
222.2222 |
222.2222 |
16001107 B |
51,285.60 |
| InvokeIntArrayFixed |
100000 |
59,944.8 ns |
517.67 ns |
484.23 ns |
113.35 |
0.89 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,054.1 ns |
548.44 ns |
513.01 ns |
113.56 |
0.95 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,823,713.5 ns |
684,420.62 ns |
606,721.05 ns |
158,504.95 |
1,118.00 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-24.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.063 μs |
0.0071 μs |
0.0066 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.054 μs |
0.0018 μs |
0.0016 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.059 μs |
0.0057 μs |
0.0051 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
97.38 ns |
0.026 ns |
0.023 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
114.78 ns |
0.062 ns |
0.055 ns |
1.18 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
105.53 ns |
0.012 ns |
0.011 ns |
1.08 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
650.97 ns |
1.662 ns |
1.555 ns |
6.68 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
117.57 ns |
0.061 ns |
0.054 ns |
1.21 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
118.10 ns |
0.027 ns |
0.023 ns |
1.21 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
107.99 ns |
0.017 ns |
0.016 ns |
1.11 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
645.92 ns |
1.416 ns |
1.325 ns |
6.63 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
109.34 ns |
0.056 ns |
0.050 ns |
1.12 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
372.3 ns |
0.15 ns |
0.14 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
368.0 ns |
0.17 ns |
0.16 ns |
0.99 |
- |
- |
NA |
| InvokeStaticWithFeedback |
543.6 ns |
0.32 ns |
0.28 ns |
1.46 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
374.5 ns |
0.17 ns |
0.16 ns |
1.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
532.6 ns |
0.71 ns |
0.63 ns |
1.43 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.259 μs |
0.0017 μs |
0.0014 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,055.3 ns |
5.46 ns |
5.11 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,067.2 ns |
6.12 ns |
5.43 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,283.7 ns |
8.97 ns |
8.39 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,701.6 ns |
36.97 ns |
32.78 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
461.0 ns |
0.74 ns |
0.69 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
449.7 ns |
0.61 ns |
0.57 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
693.3 ns |
0.33 ns |
0.28 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,053.3 ns |
10.35 ns |
9.18 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
608.14 ns |
0.279 ns |
0.247 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
613.57 ns |
0.372 ns |
0.310 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
814.72 ns |
4.583 ns |
4.287 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,129.88 ns |
18.163 ns |
16.989 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
50.69 ns |
0.020 ns |
0.019 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
50.95 ns |
0.018 ns |
0.017 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
268.35 ns |
0.663 ns |
0.588 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,468.15 ns |
10.160 ns |
9.504 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
527.9 ns |
0.45 ns |
0.40 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,781.6 ns |
7.99 ns |
6.67 ns |
12.85 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,116.5 ns |
0.62 ns |
0.49 ns |
2.12 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,140.4 ns |
2.12 ns |
1.65 ns |
2.16 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,773.4 ns |
16.63 ns |
14.74 ns |
16.62 |
0.03 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
548.8 ns |
0.42 ns |
0.37 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
537,974.6 ns |
1,021.24 ns |
955.26 ns |
980.31 |
1.80 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,831.3 ns |
6.71 ns |
6.28 ns |
3.34 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,853.0 ns |
6.67 ns |
5.21 ns |
3.38 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
723,267.8 ns |
1,569.83 ns |
1,310.88 ns |
1,317.95 |
2.46 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
534.0 ns |
0.42 ns |
0.37 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
56,685,290.7 ns |
270,001.50 ns |
252,559.58 ns |
106,155.72 |
463.57 |
333.3333 |
222.2222 |
222.2222 |
16001765 B |
51,287.71 |
| InvokeIntArrayFixed |
100000 |
60,076.8 ns |
179.63 ns |
150.00 ns |
112.51 |
0.28 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,153.2 ns |
236.07 ns |
209.27 ns |
112.65 |
0.39 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,131,551.7 ns |
655,197.92 ns |
612,872.54 ns |
155,682.18 |
1,116.41 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-24.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.061 μs |
0.0096 μs |
0.0090 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.069 μs |
0.0098 μs |
0.0092 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.072 μs |
0.0012 μs |
0.0010 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
93.07 ns |
0.047 ns |
0.044 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
106.89 ns |
0.056 ns |
0.049 ns |
1.15 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
99.30 ns |
0.013 ns |
0.012 ns |
1.07 |
- |
- |
0.00 |
| SetInstanceStringField |
658.54 ns |
0.764 ns |
0.677 ns |
7.08 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
102.23 ns |
0.038 ns |
0.034 ns |
1.10 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
105.87 ns |
0.041 ns |
0.036 ns |
1.14 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
92.18 ns |
0.015 ns |
0.014 ns |
0.99 |
- |
- |
0.00 |
| SetStaticStringField |
661.48 ns |
0.988 ns |
0.924 ns |
7.11 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
105.70 ns |
0.071 ns |
0.066 ns |
1.14 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
293.5 ns |
0.26 ns |
0.24 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
293.8 ns |
0.17 ns |
0.16 ns |
1.00 |
- |
- |
NA |
| InvokeStaticWithFeedback |
548.1 ns |
0.37 ns |
0.33 ns |
1.87 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
304.2 ns |
0.16 ns |
0.15 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
539.2 ns |
0.72 ns |
0.63 ns |
1.84 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
2.385 μs |
0.0396 μs |
0.0370 μs |
1.00 |
0.02 |
0.0076 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,019.2 ns |
5.21 ns |
4.87 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,023.3 ns |
8.63 ns |
8.08 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,258.1 ns |
5.54 ns |
5.18 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
6,771.1 ns |
89.35 ns |
83.58 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
448.3 ns |
1.73 ns |
1.62 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
445.5 ns |
0.30 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
676.0 ns |
1.45 ns |
1.21 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,993.4 ns |
52.38 ns |
49.00 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
578.24 ns |
2.115 ns |
1.766 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
575.98 ns |
0.990 ns |
0.926 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
783.04 ns |
3.352 ns |
2.799 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,272.80 ns |
31.923 ns |
29.861 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
42.88 ns |
0.624 ns |
0.584 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.35 ns |
0.843 ns |
0.828 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
255.79 ns |
0.420 ns |
0.372 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,565.75 ns |
22.071 ns |
20.645 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
530.5 ns |
1.07 ns |
1.00 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,913.5 ns |
14.84 ns |
13.15 ns |
13.03 |
0.03 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,107.8 ns |
2.57 ns |
2.40 ns |
2.09 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,149.0 ns |
6.85 ns |
6.07 ns |
2.17 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,672.2 ns |
25.19 ns |
23.57 ns |
16.35 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
532.8 ns |
0.23 ns |
0.20 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
540,573.1 ns |
996.03 ns |
931.69 ns |
1,014.63 |
1.73 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,812.8 ns |
1.91 ns |
1.79 ns |
3.40 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,823.9 ns |
5.09 ns |
4.76 ns |
3.42 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
713,781.8 ns |
913.22 ns |
762.58 ns |
1,339.73 |
1.46 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
533.1 ns |
0.50 ns |
0.45 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,165,553.6 ns |
168,882.59 ns |
149,710.01 ns |
107,231.06 |
284.90 |
333.3333 |
222.2222 |
222.2222 |
16001383 B |
51,286.48 |
| InvokeIntArrayFixed |
100000 |
59,487.1 ns |
201.66 ns |
178.77 ns |
111.59 |
0.34 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
59,577.7 ns |
242.87 ns |
227.18 ns |
111.76 |
0.42 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,150,403.7 ns |
818,325.79 ns |
765,462.45 ns |
154,097.61 |
1,396.08 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-24.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.043 μs |
0.0121 μs |
0.0113 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.042 μs |
0.0094 μs |
0.0088 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.042 μs |
0.0085 μs |
0.0071 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
95.12 ns |
0.018 ns |
0.016 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
116.99 ns |
0.070 ns |
0.059 ns |
1.23 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
104.41 ns |
0.011 ns |
0.010 ns |
1.10 |
- |
- |
0.00 |
| SetInstanceStringField |
670.12 ns |
1.271 ns |
1.127 ns |
7.04 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
113.63 ns |
0.028 ns |
0.025 ns |
1.19 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
111.37 ns |
0.027 ns |
0.024 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
100.82 ns |
0.026 ns |
0.025 ns |
1.06 |
- |
- |
0.00 |
| SetStaticStringField |
666.49 ns |
1.007 ns |
0.841 ns |
7.01 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
113.14 ns |
0.064 ns |
0.056 ns |
1.19 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
303.3 ns |
0.20 ns |
0.19 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
308.7 ns |
0.13 ns |
0.12 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
528.2 ns |
0.20 ns |
0.18 ns |
1.74 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
310.8 ns |
0.18 ns |
0.17 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
543.4 ns |
0.40 ns |
0.36 ns |
1.79 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.341 μs |
0.0072 μs |
0.0067 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,026.6 ns |
8.33 ns |
7.79 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,015.3 ns |
9.24 ns |
8.64 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,286.9 ns |
13.74 ns |
12.85 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,648.4 ns |
63.32 ns |
59.23 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
442.0 ns |
0.53 ns |
0.41 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
445.3 ns |
3.36 ns |
3.14 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
663.8 ns |
1.06 ns |
0.83 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,991.9 ns |
25.63 ns |
23.97 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
581.42 ns |
0.842 ns |
0.787 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
581.92 ns |
0.656 ns |
0.548 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
795.76 ns |
7.835 ns |
7.329 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,006.68 ns |
17.566 ns |
16.432 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
46.85 ns |
0.927 ns |
1.139 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
45.86 ns |
0.845 ns |
0.790 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
260.30 ns |
0.356 ns |
0.315 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,280.85 ns |
15.785 ns |
13.993 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
537.7 ns |
0.43 ns |
0.33 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,302.0 ns |
13.18 ns |
12.33 ns |
13.58 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,157.0 ns |
1.56 ns |
1.38 ns |
2.15 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,144.4 ns |
1.82 ns |
1.61 ns |
2.13 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,056.4 ns |
33.97 ns |
31.78 ns |
16.84 |
0.06 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
529.3 ns |
0.19 ns |
0.17 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
551,710.1 ns |
1,803.12 ns |
1,598.42 ns |
1,042.42 |
2.94 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,845.9 ns |
7.73 ns |
7.23 ns |
3.49 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,900.0 ns |
18.34 ns |
17.16 ns |
3.59 |
0.03 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
725,568.1 ns |
1,447.56 ns |
1,208.78 ns |
1,370.91 |
2.24 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
541.1 ns |
0.30 ns |
0.27 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
56,678,551.7 ns |
211,562.86 ns |
197,896.03 ns |
104,744.17 |
357.65 |
333.3333 |
222.2222 |
222.2222 |
16000934 B |
51,285.04 |
| InvokeIntArrayFixed |
100000 |
60,278.9 ns |
437.47 ns |
409.21 ns |
111.40 |
0.73 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,345.0 ns |
246.77 ns |
218.75 ns |
111.52 |
0.39 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,672,142.8 ns |
431,225.06 ns |
360,092.46 ns |
154,629.37 |
645.33 |
857.1429 |
714.2857 |
571.4286 |
27893863 B |
89,403.41 |
core-ubuntu-24.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.048 μs |
0.0080 μs |
0.0075 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.045 μs |
0.0074 μs |
0.0069 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.064 μs |
0.0079 μs |
0.0074 μs |
1.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
101.18 ns |
0.034 ns |
0.030 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
116.51 ns |
0.031 ns |
0.028 ns |
1.15 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
108.50 ns |
0.014 ns |
0.013 ns |
1.07 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
670.27 ns |
0.848 ns |
0.793 ns |
6.62 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
114.28 ns |
0.023 ns |
0.019 ns |
1.13 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
110.68 ns |
0.022 ns |
0.020 ns |
1.09 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
97.68 ns |
0.024 ns |
0.022 ns |
0.97 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
667.32 ns |
3.422 ns |
3.201 ns |
6.60 |
0.03 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
105.94 ns |
0.076 ns |
0.071 ns |
1.05 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
302.2 ns |
0.30 ns |
0.27 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
301.0 ns |
0.29 ns |
0.27 ns |
1.00 |
- |
- |
NA |
| InvokeStaticWithFeedback |
546.5 ns |
1.07 ns |
0.84 ns |
1.81 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
313.1 ns |
0.17 ns |
0.16 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
573.8 ns |
0.44 ns |
0.39 ns |
1.90 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.309 μs |
0.0018 μs |
0.0016 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,030.0 ns |
8.39 ns |
7.84 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,055.1 ns |
1.56 ns |
1.31 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,301.1 ns |
16.06 ns |
15.02 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,547.7 ns |
42.88 ns |
35.80 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
441.8 ns |
3.43 ns |
3.21 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
456.0 ns |
1.59 ns |
1.49 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
690.1 ns |
0.95 ns |
0.74 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,931.6 ns |
51.72 ns |
43.19 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
584.67 ns |
1.027 ns |
0.801 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
587.29 ns |
0.518 ns |
0.405 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
803.28 ns |
5.912 ns |
5.530 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,084.35 ns |
41.604 ns |
51.094 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
42.18 ns |
0.837 ns |
0.895 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.78 ns |
0.320 ns |
0.250 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
255.32 ns |
0.412 ns |
0.385 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,321.73 ns |
29.699 ns |
33.011 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
540.6 ns |
0.79 ns |
0.70 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,191.1 ns |
28.52 ns |
26.68 ns |
13.30 |
0.05 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,154.2 ns |
0.83 ns |
0.64 ns |
2.13 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,155.9 ns |
1.17 ns |
0.98 ns |
2.14 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,132.6 ns |
25.80 ns |
24.13 ns |
16.89 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
554.0 ns |
0.22 ns |
0.18 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
539,098.9 ns |
1,086.72 ns |
1,016.52 ns |
973.15 |
1.80 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,846.4 ns |
6.13 ns |
5.44 ns |
3.33 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,865.4 ns |
6.10 ns |
5.09 ns |
3.37 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
740,800.9 ns |
526.96 ns |
411.42 ns |
1,337.25 |
0.83 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
553.6 ns |
0.64 ns |
0.57 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
56,809,972.5 ns |
177,547.06 ns |
166,077.63 ns |
102,628.14 |
307.94 |
333.3333 |
222.2222 |
222.2222 |
16001232 B |
51,286.00 |
| InvokeIntArrayFixed |
100000 |
60,939.1 ns |
221.83 ns |
196.65 ns |
110.09 |
0.36 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,701.0 ns |
454.14 ns |
424.81 ns |
109.66 |
0.75 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
80,126,706.8 ns |
469,096.94 ns |
438,793.57 ns |
144,750.20 |
781.02 |
666.6667 |
500.0000 |
500.0000 |
27894008 B |
89,403.87 |
core-ubuntu-24.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.053 μs |
0.0084 μs |
0.0079 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.079 μs |
0.0093 μs |
0.0087 μs |
1.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.061 μs |
0.0079 μs |
0.0074 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
94.34 ns |
0.053 ns |
0.047 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
113.16 ns |
0.109 ns |
0.102 ns |
1.20 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
101.75 ns |
0.014 ns |
0.013 ns |
1.08 |
- |
- |
0.00 |
| SetInstanceStringField |
663.69 ns |
1.137 ns |
1.008 ns |
7.04 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
106.59 ns |
0.063 ns |
0.056 ns |
1.13 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
106.52 ns |
0.061 ns |
0.047 ns |
1.13 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
98.27 ns |
0.010 ns |
0.009 ns |
1.04 |
- |
- |
0.00 |
| SetStaticStringField |
654.22 ns |
0.918 ns |
0.859 ns |
6.93 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
103.92 ns |
0.079 ns |
0.066 ns |
1.10 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
295.8 ns |
0.37 ns |
0.35 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
293.1 ns |
0.51 ns |
0.48 ns |
0.99 |
- |
- |
NA |
| InvokeStaticWithFeedback |
557.9 ns |
0.26 ns |
0.23 ns |
1.89 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
300.5 ns |
0.15 ns |
0.14 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
554.0 ns |
0.34 ns |
0.27 ns |
1.87 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.297 μs |
0.0022 μs |
0.0019 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,075.8 ns |
4.05 ns |
3.59 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,052.6 ns |
5.76 ns |
5.38 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,370.2 ns |
7.00 ns |
6.20 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,258.1 ns |
43.75 ns |
40.93 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
462.4 ns |
0.27 ns |
0.23 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
460.6 ns |
0.44 ns |
0.41 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
712.9 ns |
1.00 ns |
0.78 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,508.6 ns |
30.03 ns |
28.09 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
599.42 ns |
1.994 ns |
1.865 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
607.74 ns |
2.008 ns |
1.677 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
815.41 ns |
3.618 ns |
3.384 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,226.45 ns |
65.767 ns |
61.519 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
45.11 ns |
0.858 ns |
1.022 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.92 ns |
0.722 ns |
0.803 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
262.09 ns |
0.406 ns |
0.380 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,455.38 ns |
22.394 ns |
20.947 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
533.1 ns |
0.36 ns |
0.30 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,231.3 ns |
21.19 ns |
19.82 ns |
13.56 |
0.04 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,125.6 ns |
2.26 ns |
2.00 ns |
2.11 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,163.6 ns |
0.95 ns |
0.80 ns |
2.18 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,890.8 ns |
33.29 ns |
31.14 ns |
16.68 |
0.06 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
531.1 ns |
0.48 ns |
0.42 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
547,890.2 ns |
1,287.02 ns |
1,203.88 ns |
1,031.70 |
2.33 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,861.7 ns |
10.18 ns |
9.02 ns |
3.51 |
0.02 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,862.1 ns |
15.88 ns |
14.07 ns |
3.51 |
0.03 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
731,887.5 ns |
744.39 ns |
659.89 ns |
1,378.17 |
1.60 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
543.1 ns |
0.62 ns |
0.48 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,427,352.9 ns |
202,440.67 ns |
189,363.13 ns |
105,742.59 |
349.56 |
333.3333 |
222.2222 |
222.2222 |
16001463 B |
51,286.74 |
| InvokeIntArrayFixed |
100000 |
60,017.1 ns |
331.84 ns |
277.10 ns |
110.51 |
0.50 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,039.4 ns |
448.31 ns |
397.41 ns |
110.55 |
0.71 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
80,078,196.3 ns |
673,009.54 ns |
596,605.43 ns |
147,450.22 |
1,069.13 |
666.6667 |
500.0000 |
500.0000 |
27894008 B |
89,403.87 |
core-ubuntu-24.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Median |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.052 μs |
0.0079 μs |
0.0074 μs |
1.048 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.051 μs |
0.0084 μs |
0.0079 μs |
1.046 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.062 μs |
0.0100 μs |
0.0094 μs |
1.055 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
95.94 ns |
0.051 ns |
0.045 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
120.04 ns |
0.042 ns |
0.037 ns |
1.25 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
110.44 ns |
0.019 ns |
0.016 ns |
1.15 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
675.94 ns |
0.852 ns |
0.797 ns |
7.05 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
113.66 ns |
0.044 ns |
0.037 ns |
1.18 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
110.02 ns |
0.025 ns |
0.022 ns |
1.15 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
101.90 ns |
0.009 ns |
0.008 ns |
1.06 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
672.92 ns |
1.838 ns |
1.629 ns |
7.01 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
108.12 ns |
0.075 ns |
0.066 ns |
1.13 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
302.7 ns |
0.15 ns |
0.14 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
304.8 ns |
0.23 ns |
0.21 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
533.1 ns |
1.06 ns |
0.99 ns |
1.76 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
310.9 ns |
0.20 ns |
0.18 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
542.2 ns |
0.23 ns |
0.21 ns |
1.79 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.427 μs |
0.0227 μs |
0.0212 μs |
1.00 |
0.02 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,030.7 ns |
8.46 ns |
7.92 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,030.5 ns |
6.35 ns |
5.94 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,257.3 ns |
7.57 ns |
7.08 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,133.1 ns |
35.80 ns |
31.74 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
463.4 ns |
0.40 ns |
0.35 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
451.1 ns |
0.34 ns |
0.30 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
673.8 ns |
0.80 ns |
0.62 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,385.0 ns |
23.97 ns |
22.42 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
586.53 ns |
0.761 ns |
0.711 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
595.88 ns |
0.326 ns |
0.254 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
798.47 ns |
6.931 ns |
6.483 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,128.35 ns |
22.983 ns |
21.498 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
45.51 ns |
0.874 ns |
0.971 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
45.80 ns |
0.831 ns |
0.816 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
254.05 ns |
0.469 ns |
0.415 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,531.05 ns |
33.434 ns |
31.274 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
539.7 ns |
0.27 ns |
0.24 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,121.0 ns |
11.35 ns |
10.06 ns |
13.19 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,131.0 ns |
1.83 ns |
1.53 ns |
2.10 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,138.2 ns |
2.14 ns |
2.00 ns |
2.11 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,517.9 ns |
34.28 ns |
32.06 ns |
17.64 |
0.06 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
538.8 ns |
0.37 ns |
0.29 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
553,694.5 ns |
1,345.28 ns |
1,258.37 ns |
1,027.70 |
2.32 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,862.9 ns |
3.50 ns |
3.10 ns |
3.46 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,862.2 ns |
3.50 ns |
3.11 ns |
3.46 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
738,793.0 ns |
1,602.99 ns |
1,338.57 ns |
1,371.25 |
2.50 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
547.3 ns |
0.41 ns |
0.37 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,396,658.7 ns |
226,651.39 ns |
212,009.85 ns |
106,707.45 |
381.48 |
333.3333 |
222.2222 |
222.2222 |
16000729 B |
51,284.39 |
| InvokeIntArrayFixed |
100000 |
61,055.5 ns |
256.89 ns |
214.51 ns |
111.57 |
0.38 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,060.2 ns |
198.53 ns |
175.99 ns |
111.57 |
0.32 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,947,218.7 ns |
1,014,546.47 ns |
949,007.40 ns |
151,568.37 |
1,682.18 |
1000.0000 |
833.3333 |
833.3333 |
27896893 B |
89,413.12 |
core-ubuntu-24.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.042 μs |
0.0058 μs |
0.0054 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.060 μs |
0.0062 μs |
0.0058 μs |
1.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.070 μs |
0.0071 μs |
0.0066 μs |
1.03 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
96.57 ns |
0.029 ns |
0.026 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
119.47 ns |
0.036 ns |
0.030 ns |
1.24 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
110.27 ns |
0.013 ns |
0.013 ns |
1.14 |
- |
- |
0.00 |
| SetInstanceStringField |
677.93 ns |
1.015 ns |
0.950 ns |
7.02 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
116.32 ns |
0.078 ns |
0.065 ns |
1.20 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
117.90 ns |
0.036 ns |
0.030 ns |
1.22 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
100.81 ns |
0.029 ns |
0.027 ns |
1.04 |
- |
- |
0.00 |
| SetStaticStringField |
687.66 ns |
0.935 ns |
0.875 ns |
7.12 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
116.02 ns |
0.057 ns |
0.051 ns |
1.20 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
298.0 ns |
0.11 ns |
0.08 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
300.4 ns |
0.24 ns |
0.22 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
543.8 ns |
0.31 ns |
0.26 ns |
1.82 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
309.7 ns |
0.17 ns |
0.15 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
547.5 ns |
0.47 ns |
0.41 ns |
1.84 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.356 μs |
0.0060 μs |
0.0056 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,052.8 ns |
7.17 ns |
6.71 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,046.2 ns |
2.22 ns |
1.97 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,331.0 ns |
10.53 ns |
9.85 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,683.0 ns |
58.07 ns |
54.32 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
455.3 ns |
0.46 ns |
0.41 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
449.7 ns |
0.53 ns |
0.49 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
691.4 ns |
4.15 ns |
3.46 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,222.8 ns |
33.40 ns |
29.61 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
599.17 ns |
0.709 ns |
0.554 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
603.52 ns |
0.486 ns |
0.379 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
815.59 ns |
4.115 ns |
3.849 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,125.60 ns |
33.104 ns |
32.513 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
40.98 ns |
0.097 ns |
0.091 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.86 ns |
0.845 ns |
0.791 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
251.99 ns |
0.424 ns |
0.397 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,339.88 ns |
24.098 ns |
20.123 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
537.8 ns |
0.32 ns |
0.27 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,139.5 ns |
11.94 ns |
11.17 ns |
13.27 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,148.9 ns |
2.01 ns |
1.78 ns |
2.14 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,170.0 ns |
1.70 ns |
1.59 ns |
2.18 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,085.1 ns |
18.20 ns |
17.02 ns |
16.89 |
0.03 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
541.6 ns |
0.33 ns |
0.30 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
568,390.0 ns |
1,208.85 ns |
1,130.76 ns |
1,049.41 |
2.10 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,895.3 ns |
3.75 ns |
3.33 ns |
3.50 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,908.3 ns |
6.24 ns |
5.53 ns |
3.52 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
750,648.1 ns |
1,698.39 ns |
1,588.67 ns |
1,385.91 |
2.93 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
544.8 ns |
0.51 ns |
0.45 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,557,775.0 ns |
330,692.63 ns |
309,330.09 ns |
107,490.80 |
556.58 |
333.3333 |
222.2222 |
222.2222 |
16001134 B |
51,285.69 |
| InvokeIntArrayFixed |
100000 |
60,824.0 ns |
477.64 ns |
446.79 ns |
111.65 |
0.80 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,607.1 ns |
280.74 ns |
234.43 ns |
111.25 |
0.42 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
85,459,033.0 ns |
596,349.09 ns |
557,825.31 ns |
156,871.74 |
999.55 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-24.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.087 μs |
0.0021 μs |
0.0016 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.078 μs |
0.0025 μs |
0.0021 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.082 μs |
0.0024 μs |
0.0020 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
99.75 ns |
0.018 ns |
0.016 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
116.24 ns |
0.035 ns |
0.029 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
117.82 ns |
0.016 ns |
0.015 ns |
1.18 |
- |
- |
0.00 |
| SetInstanceStringField |
668.70 ns |
1.525 ns |
1.426 ns |
6.70 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
123.91 ns |
0.033 ns |
0.029 ns |
1.24 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
122.99 ns |
0.035 ns |
0.031 ns |
1.23 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
113.22 ns |
0.027 ns |
0.025 ns |
1.14 |
- |
- |
0.00 |
| SetStaticStringField |
677.36 ns |
1.290 ns |
1.144 ns |
6.79 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
111.69 ns |
0.056 ns |
0.053 ns |
1.12 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
366.6 ns |
0.58 ns |
0.54 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
370.1 ns |
0.24 ns |
0.22 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
544.5 ns |
1.07 ns |
1.00 ns |
1.49 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
381.9 ns |
0.12 ns |
0.11 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
547.9 ns |
0.49 ns |
0.41 ns |
1.49 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.288 μs |
0.0026 μs |
0.0024 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,087.4 ns |
7.31 ns |
6.48 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,097.1 ns |
6.14 ns |
5.12 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,291.1 ns |
6.45 ns |
6.04 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,842.6 ns |
11.32 ns |
10.03 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
475.2 ns |
0.32 ns |
0.25 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
466.5 ns |
1.06 ns |
0.88 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
696.4 ns |
0.91 ns |
0.81 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,138.5 ns |
21.06 ns |
19.70 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
619.01 ns |
2.386 ns |
2.232 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
614.99 ns |
1.122 ns |
0.995 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
843.41 ns |
1.360 ns |
1.136 ns |
0.0017 |
176 B |
| PredicateSustained |
False |
True |
True |
4,162.01 ns |
11.566 ns |
10.819 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
50.46 ns |
1.173 ns |
0.980 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
50.58 ns |
0.674 ns |
0.631 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
267.93 ns |
0.341 ns |
0.266 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,613.23 ns |
24.193 ns |
22.630 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
536.1 ns |
0.52 ns |
0.46 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,860.8 ns |
13.59 ns |
12.05 ns |
12.80 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,110.7 ns |
4.38 ns |
3.89 ns |
2.07 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,138.4 ns |
1.89 ns |
1.77 ns |
2.12 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,238.8 ns |
48.01 ns |
44.91 ns |
17.23 |
0.08 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
534.2 ns |
0.88 ns |
0.78 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
535,958.9 ns |
1,363.86 ns |
1,275.75 ns |
1,003.27 |
2.71 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,846.1 ns |
12.70 ns |
11.26 ns |
3.46 |
0.02 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,887.9 ns |
13.79 ns |
12.90 ns |
3.53 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
732,422.3 ns |
1,512.74 ns |
1,263.20 ns |
1,371.04 |
2.99 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
533.0 ns |
0.43 ns |
0.36 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,408,991.0 ns |
299,484.54 ns |
280,138.02 ns |
107,713.02 |
513.82 |
333.3333 |
222.2222 |
222.2222 |
16000986 B |
51,285.21 |
| InvokeIntArrayFixed |
100000 |
61,242.3 ns |
1,051.01 ns |
983.11 ns |
114.91 |
1.79 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,710.7 ns |
756.50 ns |
670.62 ns |
113.91 |
1.22 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,181,414.0 ns |
202,574.50 ns |
179,577.02 ns |
156,068.25 |
340.82 |
857.1429 |
714.2857 |
571.4286 |
27894518 B |
89,405.51 |
core-ubuntu-24.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.084 μs |
0.0121 μs |
0.0113 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.060 μs |
0.0105 μs |
0.0098 μs |
0.98 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.059 μs |
0.0092 μs |
0.0086 μs |
0.98 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
92.36 ns |
0.037 ns |
0.033 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
112.22 ns |
0.085 ns |
0.080 ns |
1.22 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
100.91 ns |
0.014 ns |
0.013 ns |
1.09 |
- |
- |
0.00 |
| SetInstanceStringField |
664.40 ns |
0.990 ns |
0.926 ns |
7.19 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
99.78 ns |
0.016 ns |
0.013 ns |
1.08 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
106.90 ns |
0.039 ns |
0.035 ns |
1.16 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
98.17 ns |
0.019 ns |
0.017 ns |
1.06 |
- |
- |
0.00 |
| SetStaticStringField |
657.24 ns |
0.836 ns |
0.782 ns |
7.12 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
101.10 ns |
0.020 ns |
0.017 ns |
1.09 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
296.0 ns |
0.17 ns |
0.16 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
291.9 ns |
2.41 ns |
2.26 ns |
0.99 |
- |
- |
NA |
| InvokeStaticWithFeedback |
549.6 ns |
0.43 ns |
0.36 ns |
1.86 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
300.0 ns |
0.31 ns |
0.29 ns |
1.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
534.0 ns |
0.49 ns |
0.44 ns |
1.80 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.289 μs |
0.0012 μs |
0.0010 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,002.5 ns |
4.83 ns |
4.52 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
997.7 ns |
6.82 ns |
6.38 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,271.2 ns |
4.18 ns |
3.91 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,696.7 ns |
23.82 ns |
18.60 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
439.8 ns |
0.65 ns |
0.61 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
438.6 ns |
0.87 ns |
0.82 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
652.3 ns |
1.51 ns |
1.18 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,072.2 ns |
15.51 ns |
14.51 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
574.81 ns |
1.529 ns |
1.355 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
575.50 ns |
2.280 ns |
2.133 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
781.38 ns |
7.934 ns |
7.421 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,059.58 ns |
23.203 ns |
19.375 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
44.17 ns |
0.453 ns |
0.424 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.57 ns |
0.648 ns |
0.606 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
262.89 ns |
0.303 ns |
0.283 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,611.05 ns |
69.949 ns |
83.269 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
539.9 ns |
0.40 ns |
0.36 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,850.6 ns |
8.48 ns |
7.52 ns |
12.69 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,110.4 ns |
2.38 ns |
2.23 ns |
2.06 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,128.2 ns |
2.45 ns |
2.29 ns |
2.09 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,801.6 ns |
26.32 ns |
24.62 ns |
16.30 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
530.3 ns |
0.55 ns |
0.48 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
540,601.8 ns |
1,081.42 ns |
1,011.56 ns |
1,019.48 |
2.05 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,838.4 ns |
8.96 ns |
7.94 ns |
3.47 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,833.2 ns |
10.02 ns |
8.88 ns |
3.46 |
0.02 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
725,254.0 ns |
848.60 ns |
708.62 ns |
1,367.70 |
1.76 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
545.3 ns |
0.50 ns |
0.44 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
56,926,803.9 ns |
169,527.56 ns |
158,576.18 ns |
104,386.47 |
293.32 |
333.3333 |
222.2222 |
222.2222 |
16002092 B |
51,288.76 |
| InvokeIntArrayFixed |
100000 |
60,457.9 ns |
560.11 ns |
523.93 ns |
110.86 |
0.93 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
59,875.5 ns |
384.27 ns |
359.45 ns |
109.79 |
0.64 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
85,778,853.8 ns |
556,797.93 ns |
520,829.13 ns |
157,292.37 |
933.11 |
1285.7143 |
1142.8571 |
1000.0000 |
27898230 B |
89,417.40 |
core-ubuntu-24.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.044 μs |
0.0104 μs |
0.0097 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.043 μs |
0.0090 μs |
0.0084 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.036 μs |
0.0091 μs |
0.0085 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
99.63 ns |
0.021 ns |
0.018 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
119.53 ns |
0.050 ns |
0.044 ns |
1.20 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
110.04 ns |
0.033 ns |
0.030 ns |
1.10 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
660.81 ns |
1.004 ns |
0.939 ns |
6.63 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
118.55 ns |
0.069 ns |
0.061 ns |
1.19 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
117.08 ns |
0.031 ns |
0.027 ns |
1.18 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
100.69 ns |
0.030 ns |
0.028 ns |
1.01 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
660.62 ns |
1.751 ns |
1.638 ns |
6.63 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
109.18 ns |
0.051 ns |
0.040 ns |
1.10 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
302.3 ns |
0.19 ns |
0.18 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
304.2 ns |
0.67 ns |
0.62 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
537.0 ns |
0.23 ns |
0.20 ns |
1.78 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
310.6 ns |
0.27 ns |
0.25 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
540.5 ns |
0.41 ns |
0.34 ns |
1.79 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.347 μs |
0.0086 μs |
0.0081 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,037.3 ns |
7.99 ns |
7.48 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,020.6 ns |
5.36 ns |
4.75 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,253.9 ns |
7.07 ns |
5.52 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,535.7 ns |
20.64 ns |
18.30 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
442.9 ns |
0.25 ns |
0.22 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
436.8 ns |
0.39 ns |
0.34 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
673.0 ns |
0.72 ns |
0.60 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,998.6 ns |
44.01 ns |
41.17 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
583.80 ns |
0.430 ns |
0.359 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
585.87 ns |
0.355 ns |
0.277 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
798.41 ns |
1.047 ns |
0.874 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,084.25 ns |
34.671 ns |
32.432 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
45.82 ns |
0.889 ns |
0.788 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
46.04 ns |
0.986 ns |
1.135 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
262.36 ns |
0.369 ns |
0.345 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,235.44 ns |
14.308 ns |
13.384 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
538.8 ns |
0.33 ns |
0.29 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,204.0 ns |
14.20 ns |
11.86 ns |
13.37 |
0.02 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,183.2 ns |
2.51 ns |
2.09 ns |
2.20 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,151.5 ns |
4.52 ns |
4.23 ns |
2.14 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,475.2 ns |
65.40 ns |
61.18 ns |
17.59 |
0.11 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
546.1 ns |
0.96 ns |
0.90 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
547,700.0 ns |
1,140.00 ns |
1,066.36 ns |
1,002.94 |
2.48 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,859.0 ns |
7.65 ns |
7.16 ns |
3.40 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,835.6 ns |
9.73 ns |
9.10 ns |
3.36 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
732,784.3 ns |
2,158.95 ns |
1,802.82 ns |
1,341.87 |
3.84 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
535.7 ns |
0.66 ns |
0.59 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,603,002.9 ns |
234,982.20 ns |
208,305.60 ns |
107,535.49 |
392.52 |
333.3333 |
222.2222 |
222.2222 |
16001357 B |
51,286.40 |
| InvokeIntArrayFixed |
100000 |
60,633.1 ns |
422.62 ns |
374.64 ns |
113.19 |
0.69 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,483.3 ns |
396.19 ns |
351.21 ns |
112.91 |
0.64 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
80,829,866.6 ns |
1,385,612.17 ns |
1,296,102.49 ns |
150,896.29 |
2,348.58 |
1000.0000 |
833.3333 |
833.3333 |
27896893 B |
89,413.12 |
core-ubuntu-24.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.046 μs |
0.0100 μs |
0.0093 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.033 μs |
0.0089 μs |
0.0083 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.033 μs |
0.0077 μs |
0.0072 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
100.4 ns |
0.03 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
121.7 ns |
0.06 ns |
0.05 ns |
1.21 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
113.8 ns |
0.02 ns |
0.02 ns |
1.13 |
- |
- |
0.00 |
| SetInstanceStringField |
674.2 ns |
1.26 ns |
1.17 ns |
6.72 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
117.0 ns |
0.07 ns |
0.06 ns |
1.16 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
122.5 ns |
0.03 ns |
0.03 ns |
1.22 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
100.8 ns |
0.03 ns |
0.03 ns |
1.00 |
- |
- |
0.00 |
| SetStaticStringField |
659.5 ns |
1.51 ns |
1.42 ns |
6.57 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
116.7 ns |
0.09 ns |
0.09 ns |
1.16 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
298.6 ns |
0.25 ns |
0.24 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
305.7 ns |
0.19 ns |
0.18 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
530.6 ns |
0.45 ns |
0.40 ns |
1.78 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
310.0 ns |
0.20 ns |
0.19 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
547.2 ns |
0.34 ns |
0.30 ns |
1.83 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.330 μs |
0.0080 μs |
0.0075 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,016.3 ns |
6.90 ns |
6.45 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,029.6 ns |
7.51 ns |
7.02 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,308.6 ns |
12.16 ns |
11.37 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,759.4 ns |
114.09 ns |
95.27 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
445.5 ns |
0.30 ns |
0.25 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
443.8 ns |
0.73 ns |
0.65 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
1,145.1 ns |
22.51 ns |
23.12 ns |
- |
120 B |
| PredicateRoundTrip |
True |
True |
True |
7,595.2 ns |
119.44 ns |
111.72 ns |
- |
680 B |
core-ubuntu-24.04-arm_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
589.32 ns |
0.753 ns |
0.588 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
580.31 ns |
0.690 ns |
0.539 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
800.39 ns |
7.472 ns |
6.990 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,514.65 ns |
41.486 ns |
50.949 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
42.57 ns |
0.030 ns |
0.028 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.81 ns |
0.190 ns |
0.178 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
255.67 ns |
0.469 ns |
0.438 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,626.99 ns |
32.779 ns |
25.592 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
557.1 ns |
0.39 ns |
0.34 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,024.1 ns |
19.71 ns |
18.43 ns |
12.61 |
0.03 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,158.1 ns |
1.31 ns |
1.09 ns |
2.08 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,155.1 ns |
3.39 ns |
3.01 ns |
2.07 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,126.8 ns |
28.93 ns |
27.06 ns |
16.38 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
540.3 ns |
0.26 ns |
0.23 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
570,333.0 ns |
1,032.56 ns |
965.85 ns |
1,055.51 |
1.78 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,906.8 ns |
5.06 ns |
4.73 ns |
3.53 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,890.7 ns |
6.02 ns |
5.63 ns |
3.50 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
755,944.9 ns |
679.86 ns |
602.67 ns |
1,399.02 |
1.22 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
549.5 ns |
0.51 ns |
0.46 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,458,665.2 ns |
420,266.65 ns |
393,117.69 ns |
108,196.41 |
698.12 |
250.0000 |
125.0000 |
125.0000 |
16000917 B |
51,284.99 |
| InvokeIntArrayFixed |
100000 |
61,021.8 ns |
398.99 ns |
373.21 ns |
111.04 |
0.66 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,953.0 ns |
386.27 ns |
361.32 ns |
110.92 |
0.64 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
84,852,075.7 ns |
946,089.77 ns |
884,972.96 ns |
154,404.58 |
1,564.36 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-24.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.075 μs |
0.0010 μs |
0.0008 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.074 μs |
0.0081 μs |
0.0072 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.078 μs |
0.0116 μs |
0.0108 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
97.59 ns |
0.021 ns |
0.018 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
114.15 ns |
0.026 ns |
0.023 ns |
1.17 |
0.0004 |
24 B |
1.00 |
| GetInstanceStringField |
114.37 ns |
0.052 ns |
0.046 ns |
1.17 |
- |
- |
0.00 |
| SetInstanceStringField |
669.12 ns |
0.815 ns |
0.762 ns |
6.86 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
126.41 ns |
0.034 ns |
0.030 ns |
1.30 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
121.35 ns |
0.031 ns |
0.027 ns |
1.24 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
111.32 ns |
0.066 ns |
0.061 ns |
1.14 |
- |
- |
0.00 |
| SetStaticStringField |
678.04 ns |
0.860 ns |
0.804 ns |
6.95 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
110.30 ns |
0.047 ns |
0.044 ns |
1.13 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
376.3 ns |
0.21 ns |
0.20 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
380.0 ns |
0.68 ns |
0.64 ns |
1.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
545.1 ns |
0.22 ns |
0.20 ns |
1.45 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
386.9 ns |
0.16 ns |
0.15 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
552.3 ns |
0.43 ns |
0.41 ns |
1.47 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.313 μs |
0.0019 μs |
0.0017 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,059.0 ns |
8.65 ns |
8.09 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,071.3 ns |
4.14 ns |
3.67 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,311.5 ns |
7.97 ns |
7.45 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,838.5 ns |
24.91 ns |
23.30 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
471.0 ns |
0.63 ns |
0.56 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
474.3 ns |
0.17 ns |
0.13 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
707.9 ns |
0.91 ns |
0.76 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,178.6 ns |
14.59 ns |
13.65 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
613.32 ns |
2.846 ns |
2.662 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
621.58 ns |
4.578 ns |
4.282 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
831.99 ns |
0.529 ns |
0.469 ns |
0.0017 |
176 B |
| PredicateSustained |
False |
True |
True |
4,278.81 ns |
12.005 ns |
11.230 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
50.66 ns |
0.891 ns |
0.834 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
50.55 ns |
0.851 ns |
0.796 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
271.00 ns |
0.380 ns |
0.356 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,541.58 ns |
16.064 ns |
15.026 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
541.8 ns |
0.38 ns |
0.34 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,290.3 ns |
26.67 ns |
24.95 ns |
13.46 |
0.05 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,160.9 ns |
6.39 ns |
5.66 ns |
2.14 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,161.9 ns |
1.41 ns |
1.25 ns |
2.14 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
10,554.3 ns |
38.93 ns |
34.51 ns |
19.48 |
0.06 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
547.7 ns |
0.44 ns |
0.39 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
557,726.5 ns |
1,171.57 ns |
1,038.56 ns |
1,018.29 |
1.96 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,913.4 ns |
14.37 ns |
13.44 ns |
3.49 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,903.1 ns |
19.43 ns |
18.18 ns |
3.47 |
0.03 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
759,353.8 ns |
236.13 ns |
184.36 ns |
1,386.41 |
1.01 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
546.2 ns |
0.32 ns |
0.28 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,419,105.9 ns |
236,209.27 ns |
220,950.30 ns |
106,956.23 |
395.34 |
333.3333 |
222.2222 |
222.2222 |
16001318 B |
51,286.28 |
| InvokeIntArrayFixed |
100000 |
60,723.5 ns |
690.44 ns |
645.84 ns |
111.18 |
1.15 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
61,322.8 ns |
406.91 ns |
339.79 ns |
112.27 |
0.60 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
84,551,070.8 ns |
960,243.82 ns |
851,231.14 ns |
154,799.76 |
1,507.60 |
1166.6667 |
1000.0000 |
1000.0000 |
27898336 B |
89,417.74 |
core-ubuntu-24.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.103 μs |
0.0134 μs |
0.0125 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.095 μs |
0.0109 μs |
0.0102 μs |
0.99 |
0.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.094 μs |
0.0126 μs |
0.0118 μs |
0.99 |
0.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
93.98 ns |
0.147 ns |
0.138 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
117.67 ns |
0.053 ns |
0.047 ns |
1.25 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
103.60 ns |
0.020 ns |
0.018 ns |
1.10 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
681.28 ns |
1.472 ns |
1.377 ns |
7.25 |
0.02 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
107.00 ns |
0.115 ns |
0.108 ns |
1.14 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
108.36 ns |
0.131 ns |
0.123 ns |
1.15 |
0.00 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
99.21 ns |
0.079 ns |
0.074 ns |
1.06 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
673.63 ns |
1.151 ns |
1.020 ns |
7.17 |
0.01 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
108.11 ns |
0.078 ns |
0.073 ns |
1.15 |
0.00 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
302.2 ns |
0.21 ns |
0.17 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
308.1 ns |
0.83 ns |
0.78 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
557.8 ns |
0.33 ns |
0.29 ns |
1.85 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
316.2 ns |
0.21 ns |
0.20 ns |
1.05 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
555.2 ns |
0.56 ns |
0.46 ns |
1.84 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.493 μs |
0.0178 μs |
0.0166 μs |
1.00 |
0.02 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,090.9 ns |
7.71 ns |
6.83 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,087.1 ns |
11.41 ns |
10.67 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,381.1 ns |
19.17 ns |
17.93 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
6,034.1 ns |
55.42 ns |
49.13 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
463.1 ns |
1.57 ns |
1.31 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
461.3 ns |
0.29 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
696.2 ns |
1.23 ns |
1.02 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
5,348.5 ns |
46.37 ns |
41.11 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
614.75 ns |
2.233 ns |
1.980 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
598.46 ns |
0.362 ns |
0.321 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
818.52 ns |
7.786 ns |
7.283 ns |
0.0017 |
176 B |
| PredicateSustained |
False |
True |
True |
4,743.94 ns |
41.645 ns |
36.917 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
42.66 ns |
0.658 ns |
0.615 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
43.21 ns |
0.573 ns |
0.536 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
256.14 ns |
0.664 ns |
0.621 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
5,095.75 ns |
85.659 ns |
80.126 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
543.2 ns |
0.32 ns |
0.28 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,240.5 ns |
17.07 ns |
15.97 ns |
13.33 |
0.03 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,148.5 ns |
3.18 ns |
2.82 ns |
2.11 |
0.01 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,159.5 ns |
1.24 ns |
1.04 ns |
2.13 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,087.3 ns |
42.84 ns |
40.07 ns |
16.73 |
0.07 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
542.7 ns |
0.52 ns |
0.43 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
555,313.6 ns |
1,267.45 ns |
1,185.58 ns |
1,023.25 |
2.26 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,871.7 ns |
5.71 ns |
5.06 ns |
3.45 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,888.6 ns |
9.50 ns |
8.42 ns |
3.48 |
0.02 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
740,283.4 ns |
1,175.72 ns |
981.78 ns |
1,364.08 |
2.04 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
543.3 ns |
0.45 ns |
0.40 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,151,905.1 ns |
219,436.64 ns |
194,524.87 ns |
105,189.40 |
353.77 |
333.3333 |
222.2222 |
222.2222 |
16000578 B |
51,283.90 |
| InvokeIntArrayFixed |
100000 |
60,305.6 ns |
345.35 ns |
306.14 ns |
110.99 |
0.55 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,240.5 ns |
212.29 ns |
188.19 ns |
110.87 |
0.34 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,009,689.6 ns |
914,178.55 ns |
810,395.47 ns |
152,781.24 |
1,445.01 |
1166.6667 |
1000.0000 |
1000.0000 |
27897003 B |
89,413.47 |
core-ubuntu-24.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.053 μs |
0.0095 μs |
0.0089 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.063 μs |
0.0090 μs |
0.0084 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.041 μs |
0.0010 μs |
0.0008 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
95.39 ns |
0.041 ns |
0.036 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
120.50 ns |
0.022 ns |
0.019 ns |
1.26 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
113.85 ns |
0.008 ns |
0.007 ns |
1.19 |
- |
- |
0.00 |
| SetInstanceStringField |
673.18 ns |
0.730 ns |
0.647 ns |
7.06 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
109.47 ns |
0.038 ns |
0.034 ns |
1.15 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
112.22 ns |
0.023 ns |
0.019 ns |
1.18 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
102.87 ns |
0.026 ns |
0.024 ns |
1.08 |
- |
- |
0.00 |
| SetStaticStringField |
675.59 ns |
0.882 ns |
0.825 ns |
7.08 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
108.68 ns |
0.047 ns |
0.042 ns |
1.14 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
304.8 ns |
0.17 ns |
0.15 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
310.9 ns |
0.52 ns |
0.49 ns |
1.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
540.9 ns |
0.34 ns |
0.30 ns |
1.77 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
320.9 ns |
0.16 ns |
0.15 ns |
1.05 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
554.7 ns |
0.24 ns |
0.21 ns |
1.82 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.297 μs |
0.0031 μs |
0.0029 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,051.3 ns |
6.50 ns |
6.08 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,060.8 ns |
7.08 ns |
6.62 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,295.9 ns |
8.22 ns |
7.69 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,176.8 ns |
41.60 ns |
38.92 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
443.4 ns |
0.28 ns |
0.25 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
444.6 ns |
0.30 ns |
0.28 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
681.8 ns |
1.02 ns |
0.85 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,408.9 ns |
25.64 ns |
22.73 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
598.52 ns |
1.454 ns |
1.214 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
595.40 ns |
0.637 ns |
0.596 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
806.99 ns |
2.727 ns |
2.129 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,242.70 ns |
27.574 ns |
25.793 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
44.72 ns |
0.977 ns |
0.866 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
45.57 ns |
0.902 ns |
1.073 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
260.69 ns |
0.430 ns |
0.381 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,509.86 ns |
15.929 ns |
14.900 ns |
- |
656 B |
core-ubuntu-24.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
558.2 ns |
0.50 ns |
0.44 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,425.0 ns |
18.30 ns |
16.22 ns |
13.30 |
0.03 |
0.0153 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,147.6 ns |
2.89 ns |
2.56 ns |
2.06 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,144.2 ns |
2.38 ns |
2.23 ns |
2.05 |
0.00 |
0.0057 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,451.0 ns |
32.50 ns |
30.40 ns |
16.93 |
0.05 |
0.0458 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
543.4 ns |
0.57 ns |
0.50 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
564,635.5 ns |
1,177.70 ns |
1,101.62 ns |
1,038.99 |
2.17 |
1.9531 |
- |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,867.9 ns |
4.66 ns |
4.13 ns |
3.44 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,853.0 ns |
3.85 ns |
3.41 ns |
3.41 |
0.01 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
751,976.4 ns |
1,236.21 ns |
1,032.29 ns |
1,383.72 |
2.21 |
3.9063 |
0.9766 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
545.8 ns |
0.55 ns |
0.46 ns |
1.00 |
0.00 |
0.0038 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,806,975.5 ns |
260,326.42 ns |
243,509.50 ns |
107,741.03 |
440.82 |
333.3333 |
222.2222 |
222.2222 |
16000759 B |
51,284.48 |
| InvokeIntArrayFixed |
100000 |
60,799.6 ns |
194.30 ns |
172.24 ns |
111.39 |
0.32 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
60,439.3 ns |
141.04 ns |
117.77 ns |
110.73 |
0.23 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,642,856.0 ns |
753,939.29 ns |
705,235.28 ns |
153,243.17 |
1,257.60 |
1000.0000 |
833.3333 |
833.3333 |
27896893 B |
89,413.12 |
core-ubuntu-24.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.067 μs |
0.0079 μs |
0.0074 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.059 μs |
0.0075 μs |
0.0071 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.056 μs |
0.0074 μs |
0.0069 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
96.85 ns |
0.033 ns |
0.026 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
119.49 ns |
0.022 ns |
0.020 ns |
1.23 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.09 ns |
0.018 ns |
0.017 ns |
1.19 |
- |
- |
0.00 |
| SetInstanceStringField |
673.99 ns |
1.056 ns |
0.988 ns |
6.96 |
0.0038 |
256 B |
10.67 |
| GetStaticIntField |
116.18 ns |
0.026 ns |
0.023 ns |
1.20 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
114.10 ns |
0.027 ns |
0.024 ns |
1.18 |
0.0004 |
24 B |
1.00 |
| GetStaticStringField |
103.45 ns |
0.023 ns |
0.021 ns |
1.07 |
- |
- |
0.00 |
| SetStaticStringField |
673.64 ns |
1.392 ns |
1.302 ns |
6.96 |
0.0038 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
114.00 ns |
0.038 ns |
0.032 ns |
1.18 |
0.0004 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
306.6 ns |
0.40 ns |
0.37 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
317.3 ns |
0.18 ns |
0.16 ns |
1.03 |
- |
- |
NA |
| InvokeStaticWithFeedback |
543.7 ns |
0.39 ns |
0.35 ns |
1.77 |
0.0038 |
312 B |
NA |
| InvokeInstanceEmpty |
316.5 ns |
0.17 ns |
0.15 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
557.1 ns |
0.27 ns |
0.24 ns |
1.82 |
0.0038 |
312 B |
NA |
core-ubuntu-24.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.449 μs |
0.0052 μs |
0.0046 μs |
1.00 |
0.0095 |
680 B |
1.00 |
core-ubuntu-24.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,050.7 ns |
7.64 ns |
7.15 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,059.5 ns |
6.39 ns |
5.66 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,314.4 ns |
5.74 ns |
5.09 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,658.6 ns |
69.11 ns |
61.26 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
452.1 ns |
0.31 ns |
0.28 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
449.0 ns |
0.32 ns |
0.28 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
713.0 ns |
0.98 ns |
0.77 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,963.3 ns |
32.15 ns |
25.10 ns |
0.0076 |
680 B |
core-ubuntu-24.04-arm_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
603.35 ns |
3.339 ns |
3.124 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
595.98 ns |
0.537 ns |
0.419 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
809.09 ns |
5.156 ns |
4.570 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,436.59 ns |
39.173 ns |
38.473 ns |
0.0100 |
736 B |
| PredicateSustained |
True |
False |
False |
42.08 ns |
0.624 ns |
0.583 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
41.78 ns |
0.606 ns |
0.567 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
255.16 ns |
0.278 ns |
0.232 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,638.33 ns |
37.178 ns |
31.045 ns |
- |
656 B |
core-ubuntu-24.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
537.7 ns |
0.42 ns |
0.37 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,296.6 ns |
12.30 ns |
10.90 ns |
13.57 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,199.1 ns |
1.90 ns |
1.68 ns |
2.23 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,208.1 ns |
2.28 ns |
2.13 ns |
2.25 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,177.2 ns |
19.82 ns |
17.57 ns |
17.07 |
0.03 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
537.9 ns |
0.61 ns |
0.51 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
588,720.6 ns |
1,242.44 ns |
1,162.18 ns |
1,094.53 |
2.32 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,914.6 ns |
3.42 ns |
3.20 ns |
3.56 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,916.1 ns |
3.84 ns |
3.40 ns |
3.56 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
768,893.2 ns |
1,023.41 ns |
907.23 ns |
1,429.51 |
2.08 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
531.6 ns |
0.62 ns |
0.55 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,814,964.7 ns |
362,428.80 ns |
339,016.12 ns |
112,515.04 |
627.59 |
250.0000 |
125.0000 |
125.0000 |
16000719 B |
46,513.72 |
| InvokeIntArrayFixed |
100000 |
61,021.0 ns |
480.93 ns |
449.86 ns |
114.78 |
0.83 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,082.5 ns |
484.20 ns |
452.93 ns |
114.90 |
0.83 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,449,650.7 ns |
1,252,306.60 ns |
977,718.62 ns |
160,735.21 |
1,773.32 |
1000.0000 |
833.3333 |
833.3333 |
27895348 B |
81,091.13 |
core-ubuntu-24.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.134 μs |
0.0013 μs |
0.0011 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.147 μs |
0.0019 μs |
0.0016 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.144 μs |
0.0023 μs |
0.0022 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
110.1 ns |
0.02 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
143.5 ns |
0.04 ns |
0.04 ns |
1.30 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
117.1 ns |
0.03 ns |
0.03 ns |
1.06 |
- |
- |
0.00 |
| SetInstanceStringField |
723.7 ns |
1.20 ns |
1.12 ns |
6.57 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
134.1 ns |
0.04 ns |
0.03 ns |
1.22 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
157.6 ns |
0.05 ns |
0.04 ns |
1.43 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
121.3 ns |
0.07 ns |
0.06 ns |
1.10 |
- |
- |
0.00 |
| SetStaticStringField |
726.1 ns |
1.15 ns |
1.02 ns |
6.59 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
156.8 ns |
0.05 ns |
0.05 ns |
1.42 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
370.6 ns |
0.23 ns |
0.21 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
349.2 ns |
0.25 ns |
0.24 ns |
0.94 |
- |
- |
NA |
| InvokeStaticWithFeedback |
558.8 ns |
0.20 ns |
0.16 ns |
1.51 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
377.4 ns |
0.26 ns |
0.24 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
528.6 ns |
0.36 ns |
0.32 ns |
1.43 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.343 μs |
0.0029 μs |
0.0027 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,060.7 ns |
6.36 ns |
5.95 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,057.2 ns |
5.91 ns |
5.52 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,258.7 ns |
6.29 ns |
5.88 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,687.6 ns |
4.79 ns |
4.48 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
440.9 ns |
0.40 ns |
0.35 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
432.1 ns |
1.80 ns |
1.68 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
641.0 ns |
1.53 ns |
1.43 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,921.6 ns |
9.68 ns |
9.05 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
624.50 ns |
0.545 ns |
0.426 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
626.43 ns |
0.400 ns |
0.355 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
838.15 ns |
6.267 ns |
5.862 ns |
0.0017 |
176 B |
| PredicateSustained |
False |
True |
True |
4,183.67 ns |
14.374 ns |
13.446 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
58.92 ns |
1.142 ns |
1.222 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
58.61 ns |
1.123 ns |
1.293 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
253.79 ns |
0.427 ns |
0.399 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,559.66 ns |
15.321 ns |
14.331 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
543.9 ns |
0.47 ns |
0.42 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,312.4 ns |
9.95 ns |
9.30 ns |
13.44 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,214.1 ns |
1.77 ns |
1.57 ns |
2.23 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,208.5 ns |
1.76 ns |
1.64 ns |
2.22 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,415.2 ns |
32.71 ns |
30.60 ns |
17.31 |
0.06 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
535.3 ns |
0.53 ns |
0.47 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
590,473.9 ns |
1,413.91 ns |
1,322.58 ns |
1,103.01 |
2.57 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,944.8 ns |
6.72 ns |
5.95 ns |
3.63 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,955.3 ns |
8.64 ns |
8.08 ns |
3.65 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
791,355.7 ns |
1,088.42 ns |
908.88 ns |
1,478.25 |
2.06 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
540.2 ns |
0.51 ns |
0.46 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,458,051.5 ns |
264,890.71 ns |
234,818.71 ns |
111,918.26 |
429.77 |
250.0000 |
125.0000 |
125.0000 |
16000928 B |
46,514.33 |
| InvokeIntArrayFixed |
100000 |
62,289.1 ns |
567.82 ns |
531.14 ns |
115.31 |
0.96 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,462.6 ns |
328.20 ns |
290.94 ns |
113.78 |
0.53 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
87,188,047.2 ns |
734,558.83 ns |
687,106.79 ns |
161,400.08 |
1,238.78 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-24.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.158 μs |
0.0111 μs |
0.0103 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.157 μs |
0.0110 μs |
0.0102 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.164 μs |
0.0102 μs |
0.0095 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
102.8 ns |
0.02 ns |
0.02 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
150.8 ns |
0.05 ns |
0.04 ns |
1.47 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.0 ns |
0.04 ns |
0.04 ns |
1.12 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
751.8 ns |
1.82 ns |
1.71 ns |
7.31 |
0.02 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
124.7 ns |
0.04 ns |
0.03 ns |
1.21 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
145.1 ns |
0.06 ns |
0.05 ns |
1.41 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
110.8 ns |
0.03 ns |
0.03 ns |
1.08 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
735.2 ns |
1.34 ns |
1.26 ns |
7.15 |
0.01 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
154.5 ns |
0.08 ns |
0.07 ns |
1.50 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
297.5 ns |
0.26 ns |
0.20 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
271.0 ns |
0.10 ns |
0.10 ns |
0.91 |
- |
- |
NA |
| InvokeStaticWithFeedback |
552.6 ns |
0.32 ns |
0.27 ns |
1.86 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
316.9 ns |
0.11 ns |
0.10 ns |
1.07 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
546.1 ns |
0.38 ns |
0.31 ns |
1.84 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.338 μs |
0.0019 μs |
0.0016 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,074.3 ns |
6.58 ns |
6.16 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,077.3 ns |
4.93 ns |
4.61 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,285.8 ns |
4.14 ns |
3.87 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,949.6 ns |
33.54 ns |
31.37 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
445.4 ns |
0.42 ns |
0.40 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
441.4 ns |
0.43 ns |
0.38 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
623.6 ns |
1.77 ns |
1.38 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,058.6 ns |
17.50 ns |
16.37 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
620.03 ns |
0.872 ns |
0.728 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
617.06 ns |
1.529 ns |
1.277 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
824.36 ns |
6.526 ns |
6.105 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,347.44 ns |
22.579 ns |
21.120 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
50.69 ns |
1.083 ns |
1.063 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
52.58 ns |
1.031 ns |
1.228 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
240.98 ns |
0.511 ns |
0.478 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,601.90 ns |
17.911 ns |
16.754 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
531.5 ns |
0.49 ns |
0.43 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,236.1 ns |
7.31 ns |
6.10 ns |
13.61 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,191.1 ns |
1.59 ns |
1.49 ns |
2.24 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,191.9 ns |
1.42 ns |
1.26 ns |
2.24 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,115.7 ns |
29.25 ns |
27.36 ns |
17.15 |
0.05 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
543.1 ns |
0.49 ns |
0.46 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
574,061.1 ns |
1,359.42 ns |
1,271.61 ns |
1,056.93 |
2.43 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,891.5 ns |
2.34 ns |
2.07 ns |
3.48 |
0.00 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,888.3 ns |
4.81 ns |
4.26 ns |
3.48 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
771,686.9 ns |
967.52 ns |
857.68 ns |
1,420.79 |
1.92 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
529.7 ns |
0.24 ns |
0.20 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,327,457.0 ns |
193,719.59 ns |
181,205.43 ns |
112,006.02 |
333.95 |
250.0000 |
125.0000 |
125.0000 |
16001392 B |
46,515.67 |
| InvokeIntArrayFixed |
100000 |
60,308.3 ns |
368.16 ns |
326.37 ns |
113.86 |
0.60 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,587.7 ns |
204.99 ns |
181.72 ns |
114.39 |
0.33 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
83,646,085.6 ns |
1,033,578.70 ns |
916,240.60 ns |
157,917.86 |
1,672.50 |
1000.0000 |
833.3333 |
833.3333 |
27894896 B |
81,089.81 |
core-ubuntu-24.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.123 μs |
0.0107 μs |
0.0100 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.125 μs |
0.0008 μs |
0.0006 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.112 μs |
0.0074 μs |
0.0066 μs |
0.99 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
103.9 ns |
0.04 ns |
0.04 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
148.9 ns |
0.05 ns |
0.04 ns |
1.43 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.7 ns |
0.04 ns |
0.03 ns |
1.12 |
- |
- |
0.00 |
| SetInstanceStringField |
733.3 ns |
1.16 ns |
1.03 ns |
7.06 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
124.6 ns |
0.03 ns |
0.02 ns |
1.20 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
148.7 ns |
0.07 ns |
0.06 ns |
1.43 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
115.4 ns |
0.03 ns |
0.03 ns |
1.11 |
- |
- |
0.00 |
| SetStaticStringField |
712.9 ns |
1.10 ns |
0.98 ns |
6.86 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
157.7 ns |
0.07 ns |
0.06 ns |
1.52 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
308.3 ns |
0.16 ns |
0.15 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
274.7 ns |
0.13 ns |
0.12 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
529.8 ns |
0.47 ns |
0.42 ns |
1.72 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
316.9 ns |
0.10 ns |
0.10 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
535.7 ns |
0.51 ns |
0.42 ns |
1.74 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.314 μs |
0.0014 μs |
0.0013 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,018.9 ns |
5.60 ns |
5.23 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,023.5 ns |
6.27 ns |
5.87 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,237.5 ns |
5.91 ns |
5.53 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,669.0 ns |
20.04 ns |
18.75 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
417.9 ns |
0.19 ns |
0.17 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
418.3 ns |
0.30 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
625.8 ns |
1.17 ns |
0.91 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,879.6 ns |
8.79 ns |
8.22 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
594.45 ns |
1.012 ns |
0.845 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
613.35 ns |
2.614 ns |
2.317 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
804.22 ns |
0.891 ns |
0.834 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,136.59 ns |
15.271 ns |
14.284 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.11 ns |
1.014 ns |
1.085 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
52.20 ns |
1.041 ns |
1.157 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
240.73 ns |
0.670 ns |
0.627 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,718.36 ns |
21.412 ns |
16.717 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
543.5 ns |
0.62 ns |
0.55 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,188.9 ns |
9.88 ns |
8.75 ns |
13.23 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,191.5 ns |
1.69 ns |
1.50 ns |
2.19 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,203.4 ns |
2.54 ns |
2.25 ns |
2.21 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,158.6 ns |
28.18 ns |
24.98 ns |
16.85 |
0.05 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
550.5 ns |
0.19 ns |
0.18 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
579,425.0 ns |
1,353.50 ns |
1,266.06 ns |
1,052.46 |
2.25 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,928.0 ns |
6.08 ns |
5.39 ns |
3.50 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,939.5 ns |
6.76 ns |
6.33 ns |
3.52 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
764,940.2 ns |
1,645.70 ns |
1,374.23 ns |
1,389.42 |
2.44 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
544.1 ns |
0.35 ns |
0.31 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,196,405.4 ns |
183,749.45 ns |
171,879.35 ns |
110,640.18 |
312.04 |
333.3333 |
222.2222 |
222.2222 |
16001049 B |
46,514.68 |
| InvokeIntArrayFixed |
100000 |
60,418.0 ns |
256.42 ns |
214.12 ns |
111.05 |
0.38 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,986.1 ns |
346.93 ns |
324.52 ns |
112.09 |
0.58 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,725,188.6 ns |
1,149,875.55 ns |
1,019,334.73 ns |
157,561.73 |
1,812.11 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-24.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.142 μs |
0.0150 μs |
0.0141 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.137 μs |
0.0115 μs |
0.0108 μs |
1.00 |
0.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.133 μs |
0.0096 μs |
0.0090 μs |
0.99 |
0.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
108.5 ns |
0.03 ns |
0.03 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
155.2 ns |
0.07 ns |
0.06 ns |
1.43 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
118.2 ns |
0.05 ns |
0.04 ns |
1.09 |
- |
- |
0.00 |
| SetInstanceStringField |
726.7 ns |
1.09 ns |
0.97 ns |
6.70 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
125.0 ns |
0.03 ns |
0.03 ns |
1.15 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
150.6 ns |
0.08 ns |
0.07 ns |
1.39 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
120.2 ns |
0.03 ns |
0.03 ns |
1.11 |
- |
- |
0.00 |
| SetStaticStringField |
718.2 ns |
0.87 ns |
0.77 ns |
6.62 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
156.9 ns |
0.04 ns |
0.03 ns |
1.45 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
315.0 ns |
0.14 ns |
0.12 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
282.0 ns |
0.19 ns |
0.18 ns |
0.90 |
- |
- |
NA |
| InvokeStaticWithFeedback |
526.2 ns |
0.43 ns |
0.36 ns |
1.67 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
328.6 ns |
0.12 ns |
0.11 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
547.2 ns |
0.37 ns |
0.31 ns |
1.74 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.328 μs |
0.0013 μs |
0.0011 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,028.7 ns |
6.81 ns |
6.37 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,043.7 ns |
0.77 ns |
0.60 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,254.2 ns |
7.42 ns |
6.94 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,610.1 ns |
5.05 ns |
4.21 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
439.7 ns |
0.56 ns |
0.49 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
438.0 ns |
0.29 ns |
0.24 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
641.4 ns |
0.85 ns |
0.66 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,848.0 ns |
9.35 ns |
8.28 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
605.20 ns |
0.707 ns |
0.552 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
613.56 ns |
4.963 ns |
4.643 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
801.02 ns |
7.811 ns |
7.306 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,239.23 ns |
82.709 ns |
88.498 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
50.85 ns |
0.328 ns |
0.307 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
50.37 ns |
0.313 ns |
0.293 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
239.67 ns |
0.688 ns |
0.644 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,557.73 ns |
18.847 ns |
20.949 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
546.2 ns |
0.83 ns |
0.77 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,092.5 ns |
4.70 ns |
4.17 ns |
12.98 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,176.5 ns |
1.11 ns |
0.98 ns |
2.15 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,188.0 ns |
0.68 ns |
0.56 ns |
2.17 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,623.6 ns |
32.97 ns |
30.84 ns |
17.62 |
0.06 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
535.0 ns |
0.26 ns |
0.23 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
566,626.8 ns |
1,050.94 ns |
983.05 ns |
1,059.04 |
1.83 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,759.7 ns |
9.99 ns |
9.35 ns |
3.29 |
0.02 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,754.7 ns |
9.05 ns |
8.47 ns |
3.28 |
0.02 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
753,114.0 ns |
730.89 ns |
647.91 ns |
1,407.59 |
1.31 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
539.2 ns |
0.28 ns |
0.23 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,653,395.7 ns |
228,675.67 ns |
213,903.36 ns |
110,642.69 |
386.96 |
333.3333 |
222.2222 |
222.2222 |
16001756 B |
46,516.73 |
| InvokeIntArrayFixed |
100000 |
45,024.0 ns |
410.00 ns |
383.52 ns |
83.51 |
0.69 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
44,899.0 ns |
216.55 ns |
191.97 ns |
83.28 |
0.35 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
83,511,050.0 ns |
781,799.21 ns |
731,295.46 ns |
154,892.90 |
1,315.30 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-24.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Median |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.113 μs |
0.0006 μs |
0.0005 μs |
1.112 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.125 μs |
0.0126 μs |
0.0118 μs |
1.117 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.133 μs |
0.0130 μs |
0.0122 μs |
1.123 μs |
1.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
102.3 ns |
0.02 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
144.0 ns |
0.07 ns |
0.05 ns |
1.41 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
113.8 ns |
0.03 ns |
0.03 ns |
1.11 |
- |
- |
0.00 |
| SetInstanceStringField |
721.0 ns |
0.36 ns |
0.30 ns |
7.05 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
127.0 ns |
0.05 ns |
0.04 ns |
1.24 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
150.9 ns |
0.05 ns |
0.04 ns |
1.47 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
112.9 ns |
0.05 ns |
0.05 ns |
1.10 |
- |
- |
0.00 |
| SetStaticStringField |
701.2 ns |
0.88 ns |
0.78 ns |
6.86 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
153.5 ns |
0.04 ns |
0.03 ns |
1.50 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
299.0 ns |
0.19 ns |
0.17 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
269.4 ns |
0.14 ns |
0.13 ns |
0.90 |
- |
- |
NA |
| InvokeStaticWithFeedback |
528.4 ns |
0.35 ns |
0.31 ns |
1.77 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
316.2 ns |
0.46 ns |
0.43 ns |
1.06 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
545.2 ns |
0.50 ns |
0.42 ns |
1.82 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.313 μs |
0.0012 μs |
0.0010 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,043.4 ns |
5.34 ns |
4.74 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,069.5 ns |
7.43 ns |
6.95 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,272.6 ns |
6.58 ns |
5.83 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,858.9 ns |
15.91 ns |
14.10 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
441.8 ns |
0.13 ns |
0.11 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
429.4 ns |
0.13 ns |
0.12 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
637.3 ns |
0.25 ns |
0.23 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,377.9 ns |
34.15 ns |
31.94 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
616.31 ns |
0.699 ns |
0.546 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
620.33 ns |
1.048 ns |
0.980 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
827.15 ns |
6.936 ns |
6.488 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,193.18 ns |
8.569 ns |
7.597 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.57 ns |
0.025 ns |
0.024 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.91 ns |
0.020 ns |
0.019 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
243.24 ns |
0.414 ns |
0.388 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,601.91 ns |
16.074 ns |
15.036 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
530.9 ns |
0.37 ns |
0.32 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,984.5 ns |
10.23 ns |
9.57 ns |
13.16 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,177.6 ns |
2.11 ns |
1.97 ns |
2.22 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,171.0 ns |
1.79 ns |
1.49 ns |
2.21 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,870.6 ns |
18.85 ns |
17.63 ns |
16.71 |
0.03 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
521.2 ns |
0.36 ns |
0.32 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
581,293.7 ns |
1,814.49 ns |
1,697.27 ns |
1,115.37 |
3.22 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,749.5 ns |
8.10 ns |
7.18 ns |
3.36 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,763.4 ns |
10.19 ns |
9.53 ns |
3.38 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
737,859.2 ns |
1,010.17 ns |
944.92 ns |
1,415.78 |
1.94 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
528.7 ns |
0.34 ns |
0.30 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,871,772.2 ns |
245,666.24 ns |
229,796.35 ns |
111,355.59 |
425.35 |
250.0000 |
125.0000 |
125.0000 |
16001273 B |
46,515.33 |
| InvokeIntArrayFixed |
100000 |
44,848.3 ns |
378.50 ns |
354.05 ns |
84.83 |
0.65 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
44,790.1 ns |
479.38 ns |
448.41 ns |
84.72 |
0.82 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,024,721.8 ns |
533,427.53 ns |
498,968.44 ns |
160,823.73 |
918.23 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-24.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.092 μs |
0.0102 μs |
0.0095 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.083 μs |
0.0112 μs |
0.0105 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.116 μs |
0.0084 μs |
0.0079 μs |
1.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
103.7 ns |
0.03 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
146.5 ns |
0.04 ns |
0.03 ns |
1.41 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
117.3 ns |
0.03 ns |
0.03 ns |
1.13 |
- |
- |
0.00 |
| SetInstanceStringField |
719.1 ns |
1.32 ns |
1.24 ns |
6.94 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
125.4 ns |
0.02 ns |
0.02 ns |
1.21 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
149.8 ns |
0.03 ns |
0.03 ns |
1.44 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
111.4 ns |
0.02 ns |
0.02 ns |
1.07 |
- |
- |
0.00 |
| SetStaticStringField |
715.2 ns |
1.10 ns |
0.92 ns |
6.90 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
154.4 ns |
0.05 ns |
0.04 ns |
1.49 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
306.9 ns |
0.14 ns |
0.13 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
273.9 ns |
0.25 ns |
0.23 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
523.1 ns |
0.30 ns |
0.23 ns |
1.70 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
317.0 ns |
0.19 ns |
0.17 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
534.5 ns |
0.59 ns |
0.52 ns |
1.74 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.329 μs |
0.0018 μs |
0.0017 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,023.8 ns |
4.28 ns |
4.00 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,037.7 ns |
5.50 ns |
5.14 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,230.3 ns |
5.05 ns |
4.72 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,541.6 ns |
11.23 ns |
10.51 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
444.4 ns |
0.46 ns |
0.41 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
427.3 ns |
0.82 ns |
0.73 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
625.2 ns |
0.98 ns |
0.77 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,958.3 ns |
12.26 ns |
10.87 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
604.68 ns |
0.941 ns |
0.786 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
604.95 ns |
0.501 ns |
0.444 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
799.53 ns |
0.575 ns |
0.481 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,317.30 ns |
25.104 ns |
23.482 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.92 ns |
1.023 ns |
1.095 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
52.31 ns |
1.022 ns |
1.255 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
241.45 ns |
0.365 ns |
0.341 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,478.80 ns |
16.078 ns |
15.039 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
530.4 ns |
0.43 ns |
0.38 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,062.7 ns |
17.26 ns |
16.15 ns |
13.31 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,168.2 ns |
1.31 ns |
1.10 ns |
2.20 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,180.2 ns |
0.60 ns |
0.47 ns |
2.22 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,417.9 ns |
43.95 ns |
41.11 ns |
17.75 |
0.08 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
518.6 ns |
0.34 ns |
0.27 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
565,813.7 ns |
999.99 ns |
935.39 ns |
1,091.02 |
1.83 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,661.7 ns |
7.45 ns |
6.97 ns |
3.20 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,742.7 ns |
7.57 ns |
7.08 ns |
3.36 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
757,849.0 ns |
2,593.75 ns |
2,165.90 ns |
1,461.31 |
4.09 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
521.4 ns |
0.24 ns |
0.21 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,412,626.0 ns |
334,902.34 ns |
313,267.86 ns |
115,858.92 |
583.55 |
333.3333 |
222.2222 |
222.2222 |
16000924 B |
46,514.31 |
| InvokeIntArrayFixed |
100000 |
44,602.0 ns |
372.78 ns |
348.70 ns |
85.54 |
0.65 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
44,835.6 ns |
406.63 ns |
339.56 ns |
85.99 |
0.63 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,106,664.0 ns |
1,459,700.54 ns |
1,365,404.79 ns |
163,216.98 |
2,536.62 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-24.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.115 μs |
0.0112 μs |
0.0105 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.133 μs |
0.0096 μs |
0.0089 μs |
1.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.131 μs |
0.0102 μs |
0.0096 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
104.6 ns |
0.03 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
151.2 ns |
0.04 ns |
0.04 ns |
1.45 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.2 ns |
0.01 ns |
0.01 ns |
1.10 |
- |
- |
0.00 |
| SetInstanceStringField |
719.1 ns |
1.36 ns |
1.27 ns |
6.88 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
126.8 ns |
0.05 ns |
0.04 ns |
1.21 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
154.9 ns |
0.03 ns |
0.03 ns |
1.48 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
118.4 ns |
0.02 ns |
0.02 ns |
1.13 |
- |
- |
0.00 |
| SetStaticStringField |
712.1 ns |
1.56 ns |
1.46 ns |
6.81 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
154.8 ns |
0.04 ns |
0.04 ns |
1.48 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
302.8 ns |
0.14 ns |
0.13 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
276.7 ns |
0.10 ns |
0.10 ns |
0.91 |
- |
- |
NA |
| InvokeStaticWithFeedback |
527.5 ns |
0.34 ns |
0.30 ns |
1.74 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
315.7 ns |
0.23 ns |
0.20 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
528.1 ns |
0.34 ns |
0.30 ns |
1.74 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.308 μs |
0.0020 μs |
0.0018 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,020.7 ns |
4.63 ns |
4.11 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,018.2 ns |
5.89 ns |
5.51 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,244.8 ns |
6.57 ns |
6.15 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,291.5 ns |
64.79 ns |
54.11 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
421.5 ns |
0.44 ns |
0.41 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
431.7 ns |
0.37 ns |
0.33 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
618.1 ns |
0.97 ns |
0.76 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,787.2 ns |
7.71 ns |
6.44 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
610.15 ns |
0.489 ns |
0.382 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
606.78 ns |
0.446 ns |
0.348 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
795.70 ns |
3.446 ns |
2.877 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,241.55 ns |
74.262 ns |
82.542 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.19 ns |
0.473 ns |
0.442 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.53 ns |
0.999 ns |
1.367 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
239.28 ns |
0.308 ns |
0.273 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,390.34 ns |
44.550 ns |
41.672 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
535.8 ns |
0.47 ns |
0.41 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,154.5 ns |
21.45 ns |
17.91 ns |
13.35 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,196.2 ns |
0.86 ns |
0.67 ns |
2.23 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,203.2 ns |
3.12 ns |
2.92 ns |
2.25 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,126.5 ns |
24.57 ns |
22.99 ns |
17.03 |
0.04 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
524.7 ns |
0.98 ns |
0.91 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
572,152.4 ns |
1,791.72 ns |
1,675.97 ns |
1,090.39 |
3.60 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,940.2 ns |
6.65 ns |
6.22 ns |
3.70 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,917.8 ns |
12.92 ns |
12.09 ns |
3.65 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
763,213.6 ns |
561.57 ns |
468.94 ns |
1,454.51 |
2.60 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
523.6 ns |
1.06 ns |
0.99 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,229,809.1 ns |
289,511.46 ns |
241,755.18 ns |
113,114.31 |
490.95 |
250.0000 |
125.0000 |
125.0000 |
16000617 B |
46,513.42 |
| InvokeIntArrayFixed |
100000 |
60,210.5 ns |
695.22 ns |
616.29 ns |
114.99 |
1.16 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,467.6 ns |
506.14 ns |
473.44 ns |
115.48 |
0.90 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,690,739.1 ns |
533,503.43 ns |
472,936.90 ns |
165,557.90 |
923.98 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-24.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.120 μs |
0.0016 μs |
0.0013 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.135 μs |
0.0017 μs |
0.0015 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.138 μs |
0.0077 μs |
0.0068 μs |
1.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
108.4 ns |
0.04 ns |
0.03 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
142.6 ns |
0.06 ns |
0.05 ns |
1.31 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
121.1 ns |
0.04 ns |
0.04 ns |
1.12 |
- |
- |
0.00 |
| SetInstanceStringField |
731.6 ns |
1.72 ns |
1.61 ns |
6.75 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
126.7 ns |
0.07 ns |
0.06 ns |
1.17 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
149.2 ns |
0.05 ns |
0.05 ns |
1.38 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
116.1 ns |
0.04 ns |
0.04 ns |
1.07 |
- |
- |
0.00 |
| SetStaticStringField |
722.0 ns |
1.61 ns |
1.51 ns |
6.66 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
153.4 ns |
0.04 ns |
0.04 ns |
1.41 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
384.1 ns |
3.60 ns |
3.37 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
347.8 ns |
0.18 ns |
0.17 ns |
0.91 |
- |
- |
NA |
| InvokeStaticWithFeedback |
539.3 ns |
0.56 ns |
0.49 ns |
1.40 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
384.3 ns |
0.17 ns |
0.16 ns |
1.00 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
529.9 ns |
0.59 ns |
0.55 ns |
1.38 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.306 μs |
0.0026 μs |
0.0023 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,044.5 ns |
11.81 ns |
11.05 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,046.0 ns |
4.28 ns |
4.01 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,237.8 ns |
6.25 ns |
5.85 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,620.2 ns |
8.30 ns |
7.36 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
441.2 ns |
2.39 ns |
2.24 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
438.1 ns |
0.95 ns |
0.89 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
636.4 ns |
0.34 ns |
0.26 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,931.7 ns |
7.99 ns |
7.48 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
622.62 ns |
0.705 ns |
0.625 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
620.85 ns |
0.994 ns |
0.881 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
799.97 ns |
7.411 ns |
6.933 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,176.68 ns |
12.318 ns |
11.523 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
58.73 ns |
1.145 ns |
1.071 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
58.96 ns |
1.138 ns |
1.217 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
251.88 ns |
1.564 ns |
1.463 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,556.32 ns |
10.279 ns |
9.615 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
542.1 ns |
0.56 ns |
0.49 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,181.2 ns |
9.47 ns |
8.40 ns |
13.25 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,173.5 ns |
1.24 ns |
1.04 ns |
2.16 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,182.4 ns |
0.69 ns |
0.54 ns |
2.18 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,270.4 ns |
18.40 ns |
17.21 ns |
17.10 |
0.03 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
530.0 ns |
1.50 ns |
1.40 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
570,268.8 ns |
741.15 ns |
693.27 ns |
1,076.00 |
3.02 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,891.1 ns |
2.85 ns |
2.38 ns |
3.57 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,888.1 ns |
8.18 ns |
7.25 ns |
3.56 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
771,097.5 ns |
1,625.18 ns |
1,357.10 ns |
1,454.93 |
4.46 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
534.0 ns |
0.29 ns |
0.25 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,501,071.0 ns |
266,032.55 ns |
248,847.01 ns |
111,427.19 |
454.08 |
333.3333 |
222.2222 |
222.2222 |
16000788 B |
46,513.92 |
| InvokeIntArrayFixed |
100000 |
60,996.6 ns |
356.91 ns |
316.39 ns |
114.23 |
0.57 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,700.2 ns |
279.65 ns |
247.91 ns |
115.55 |
0.45 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
84,816,214.0 ns |
777,414.54 ns |
727,194.04 ns |
158,834.66 |
1,320.91 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-24.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.144 μs |
0.0126 μs |
0.0118 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.146 μs |
0.0007 μs |
0.0005 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.153 μs |
0.0138 μs |
0.0130 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
101.5 ns |
0.05 ns |
0.04 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
142.8 ns |
0.05 ns |
0.05 ns |
1.41 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
113.9 ns |
0.03 ns |
0.02 ns |
1.12 |
- |
- |
0.00 |
| SetInstanceStringField |
722.3 ns |
0.74 ns |
0.66 ns |
7.11 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
115.8 ns |
0.02 ns |
0.02 ns |
1.14 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
136.2 ns |
0.11 ns |
0.10 ns |
1.34 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
100.1 ns |
0.02 ns |
0.01 ns |
0.99 |
- |
- |
0.00 |
| SetStaticStringField |
717.2 ns |
1.04 ns |
0.92 ns |
7.06 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
153.1 ns |
0.06 ns |
0.05 ns |
1.51 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
304.6 ns |
0.21 ns |
0.20 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
265.2 ns |
0.13 ns |
0.12 ns |
0.87 |
- |
- |
NA |
| InvokeStaticWithFeedback |
536.5 ns |
0.55 ns |
0.49 ns |
1.76 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
308.0 ns |
0.10 ns |
0.09 ns |
1.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
533.4 ns |
0.30 ns |
0.26 ns |
1.75 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.334 μs |
0.0032 μs |
0.0028 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,025.9 ns |
5.56 ns |
5.20 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,015.0 ns |
7.17 ns |
6.71 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,220.4 ns |
7.36 ns |
6.89 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,712.2 ns |
12.37 ns |
10.96 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
426.2 ns |
0.72 ns |
0.67 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
425.3 ns |
0.59 ns |
0.55 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
625.5 ns |
1.23 ns |
0.96 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,044.0 ns |
17.84 ns |
16.69 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
591.21 ns |
5.544 ns |
5.186 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
592.49 ns |
1.280 ns |
1.134 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
793.94 ns |
7.643 ns |
7.149 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,174.74 ns |
18.523 ns |
17.327 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.35 ns |
1.008 ns |
0.990 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.61 ns |
0.951 ns |
0.889 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
243.04 ns |
0.459 ns |
0.429 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,873.46 ns |
36.245 ns |
33.904 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
517.0 ns |
0.88 ns |
0.82 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,055.4 ns |
11.76 ns |
11.00 ns |
13.65 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,167.8 ns |
1.64 ns |
1.54 ns |
2.26 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,183.1 ns |
1.75 ns |
1.63 ns |
2.29 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,172.3 ns |
49.41 ns |
43.80 ns |
17.74 |
0.09 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
529.3 ns |
0.76 ns |
0.71 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
563,276.7 ns |
1,415.34 ns |
1,323.91 ns |
1,064.21 |
2.79 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,881.2 ns |
7.67 ns |
7.17 ns |
3.55 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,876.3 ns |
8.56 ns |
8.00 ns |
3.54 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
746,949.1 ns |
1,481.11 ns |
1,156.35 ns |
1,411.23 |
2.78 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
526.1 ns |
0.77 ns |
0.68 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,361,440.0 ns |
228,931.64 ns |
202,941.94 ns |
112,840.41 |
398.30 |
250.0000 |
125.0000 |
125.0000 |
16000537 B |
46,513.19 |
| InvokeIntArrayFixed |
100000 |
60,923.2 ns |
1,026.02 ns |
959.74 ns |
115.81 |
1.77 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,793.6 ns |
599.63 ns |
560.90 ns |
115.56 |
1.04 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,337,537.8 ns |
268,602.38 ns |
251,250.83 ns |
164,119.39 |
505.64 |
1142.8571 |
1000.0000 |
857.1429 |
27895032 B |
81,090.21 |
core-ubuntu-24.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.114 μs |
0.0071 μs |
0.0067 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.110 μs |
0.0085 μs |
0.0080 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.133 μs |
0.0080 μs |
0.0074 μs |
1.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
111.8 ns |
0.02 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
147.8 ns |
0.04 ns |
0.04 ns |
1.32 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.5 ns |
0.02 ns |
0.02 ns |
1.04 |
- |
- |
0.00 |
| SetInstanceStringField |
729.2 ns |
0.90 ns |
0.84 ns |
6.52 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
126.3 ns |
0.08 ns |
0.07 ns |
1.13 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
143.3 ns |
0.03 ns |
0.03 ns |
1.28 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
119.6 ns |
0.03 ns |
0.02 ns |
1.07 |
- |
- |
0.00 |
| SetStaticStringField |
720.4 ns |
1.63 ns |
1.53 ns |
6.44 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
164.1 ns |
0.04 ns |
0.04 ns |
1.47 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
305.8 ns |
0.17 ns |
0.15 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
275.6 ns |
0.11 ns |
0.10 ns |
0.90 |
- |
- |
NA |
| InvokeStaticWithFeedback |
536.0 ns |
0.32 ns |
0.28 ns |
1.75 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
312.4 ns |
0.08 ns |
0.07 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
533.7 ns |
0.75 ns |
0.67 ns |
1.74 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.338 μs |
0.0026 μs |
0.0024 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
995.2 ns |
5.69 ns |
5.32 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,007.0 ns |
7.88 ns |
7.37 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,228.3 ns |
6.13 ns |
5.73 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,501.2 ns |
4.99 ns |
3.90 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
417.1 ns |
2.45 ns |
2.29 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
433.3 ns |
0.34 ns |
0.32 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
627.3 ns |
1.16 ns |
0.90 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,763.2 ns |
11.90 ns |
10.55 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
591.74 ns |
0.938 ns |
0.733 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
593.40 ns |
0.480 ns |
0.426 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
777.42 ns |
5.456 ns |
5.103 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
3,977.30 ns |
4.883 ns |
3.813 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
54.23 ns |
0.961 ns |
0.899 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
52.94 ns |
1.004 ns |
1.074 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
241.68 ns |
0.357 ns |
0.316 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,430.91 ns |
15.559 ns |
14.554 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
537.5 ns |
0.41 ns |
0.34 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,097.4 ns |
10.02 ns |
9.38 ns |
13.20 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,191.3 ns |
1.26 ns |
1.11 ns |
2.22 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,196.5 ns |
2.51 ns |
2.35 ns |
2.23 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,318.4 ns |
30.99 ns |
28.99 ns |
17.34 |
0.05 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
535.0 ns |
0.65 ns |
0.55 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
570,489.3 ns |
1,976.85 ns |
1,849.15 ns |
1,066.24 |
3.51 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,907.0 ns |
7.36 ns |
6.52 ns |
3.56 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,926.6 ns |
9.59 ns |
8.97 ns |
3.60 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
757,442.7 ns |
951.70 ns |
743.03 ns |
1,415.66 |
1.93 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
534.0 ns |
0.68 ns |
0.53 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,240,132.3 ns |
238,753.32 ns |
223,330.01 ns |
112,807.48 |
419.36 |
333.3333 |
222.2222 |
222.2222 |
16001230 B |
46,515.20 |
| InvokeIntArrayFixed |
100000 |
61,164.0 ns |
373.92 ns |
349.76 ns |
114.54 |
0.64 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,648.5 ns |
656.34 ns |
613.94 ns |
115.44 |
1.12 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
83,750,892.4 ns |
762,886.59 ns |
713,604.59 ns |
156,834.43 |
1,303.32 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-24.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.120 μs |
0.0096 μs |
0.0090 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.133 μs |
0.0102 μs |
0.0095 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.146 μs |
0.0064 μs |
0.0060 μs |
1.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
108.8 ns |
0.06 ns |
0.05 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
149.5 ns |
0.04 ns |
0.03 ns |
1.37 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.6 ns |
0.03 ns |
0.02 ns |
1.07 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
736.2 ns |
2.30 ns |
2.15 ns |
6.77 |
0.02 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
126.1 ns |
0.14 ns |
0.13 ns |
1.16 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
145.5 ns |
0.05 ns |
0.05 ns |
1.34 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
115.6 ns |
0.03 ns |
0.02 ns |
1.06 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
721.4 ns |
1.58 ns |
1.48 ns |
6.63 |
0.01 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
150.6 ns |
0.06 ns |
0.05 ns |
1.38 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
302.9 ns |
0.11 ns |
0.11 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
270.8 ns |
0.13 ns |
0.12 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
530.8 ns |
0.33 ns |
0.29 ns |
1.75 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
312.7 ns |
0.31 ns |
0.26 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
548.0 ns |
0.59 ns |
0.53 ns |
1.81 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.344 μs |
0.0026 μs |
0.0023 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,040.4 ns |
0.79 ns |
0.66 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,021.3 ns |
3.77 ns |
3.34 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,243.3 ns |
1.59 ns |
1.24 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,397.2 ns |
8.59 ns |
6.71 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
433.1 ns |
0.38 ns |
0.34 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
431.6 ns |
0.50 ns |
0.47 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
623.8 ns |
4.37 ns |
3.88 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,731.3 ns |
5.99 ns |
5.31 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
586.76 ns |
0.742 ns |
0.579 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
588.72 ns |
1.245 ns |
0.972 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
786.12 ns |
5.102 ns |
4.772 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,205.14 ns |
23.630 ns |
29.019 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
49.41 ns |
0.294 ns |
0.275 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
49.05 ns |
0.332 ns |
0.311 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
238.46 ns |
0.585 ns |
0.547 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,671.33 ns |
61.878 ns |
60.772 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
546.1 ns |
0.35 ns |
0.31 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,240.6 ns |
7.53 ns |
6.68 ns |
13.26 |
0.01 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,190.5 ns |
1.56 ns |
1.46 ns |
2.18 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,183.8 ns |
0.84 ns |
0.66 ns |
2.17 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,143.0 ns |
21.10 ns |
19.73 ns |
16.74 |
0.04 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
542.7 ns |
0.55 ns |
0.49 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
575,215.2 ns |
1,176.86 ns |
1,043.25 ns |
1,059.84 |
2.07 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,898.3 ns |
1.25 ns |
1.05 ns |
3.50 |
0.00 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,886.8 ns |
6.95 ns |
6.16 ns |
3.48 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
762,584.2 ns |
820.17 ns |
640.34 ns |
1,405.06 |
1.67 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
557.2 ns |
0.41 ns |
0.35 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,232,834.3 ns |
185,885.67 ns |
164,782.81 ns |
106,310.40 |
292.75 |
250.0000 |
125.0000 |
125.0000 |
16000933 B |
46,514.34 |
| InvokeIntArrayFixed |
100000 |
60,995.5 ns |
348.81 ns |
326.27 ns |
109.47 |
0.57 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,037.7 ns |
280.22 ns |
234.00 ns |
109.55 |
0.41 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,447,874.4 ns |
612,139.88 ns |
542,646.06 ns |
155,155.63 |
945.65 |
1000.0000 |
833.3333 |
833.3333 |
27895431 B |
81,091.37 |
core-ubuntu-24.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.151 μs |
0.0120 μs |
0.0113 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.147 μs |
0.0113 μs |
0.0106 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.161 μs |
0.0111 μs |
0.0104 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
107.7 ns |
0.03 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
148.7 ns |
0.06 ns |
0.05 ns |
1.38 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
114.4 ns |
0.04 ns |
0.04 ns |
1.06 |
- |
- |
0.00 |
| SetInstanceStringField |
727.0 ns |
1.38 ns |
1.23 ns |
6.75 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
124.4 ns |
0.03 ns |
0.02 ns |
1.16 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
147.0 ns |
0.04 ns |
0.03 ns |
1.36 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
114.6 ns |
0.08 ns |
0.07 ns |
1.06 |
- |
- |
0.00 |
| SetStaticStringField |
705.8 ns |
0.98 ns |
0.82 ns |
6.55 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
152.4 ns |
0.04 ns |
0.03 ns |
1.42 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
296.9 ns |
0.20 ns |
0.19 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
268.2 ns |
0.13 ns |
0.12 ns |
0.90 |
- |
- |
NA |
| InvokeStaticWithFeedback |
555.7 ns |
0.56 ns |
0.50 ns |
1.87 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
305.9 ns |
0.17 ns |
0.16 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
545.1 ns |
0.33 ns |
0.30 ns |
1.84 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.319 μs |
0.0014 μs |
0.0011 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,040.6 ns |
6.06 ns |
5.38 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,059.4 ns |
5.49 ns |
5.14 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,243.7 ns |
6.40 ns |
5.98 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,153.9 ns |
29.79 ns |
26.41 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
434.1 ns |
0.30 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
425.8 ns |
0.27 ns |
0.24 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
633.7 ns |
1.18 ns |
0.92 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,913.3 ns |
11.52 ns |
10.77 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
616.78 ns |
0.960 ns |
0.802 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
634.64 ns |
1.151 ns |
0.962 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
813.37 ns |
0.776 ns |
0.606 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,394.94 ns |
25.772 ns |
22.846 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.96 ns |
0.984 ns |
0.967 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.96 ns |
0.927 ns |
0.910 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
242.02 ns |
0.360 ns |
0.319 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,683.16 ns |
11.552 ns |
10.806 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
527.0 ns |
0.50 ns |
0.45 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,123.8 ns |
8.49 ns |
7.52 ns |
13.52 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,181.2 ns |
2.29 ns |
2.14 ns |
2.24 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,182.8 ns |
1.23 ns |
1.03 ns |
2.24 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,945.3 ns |
16.59 ns |
14.71 ns |
16.97 |
0.03 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
530.1 ns |
0.29 ns |
0.26 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
568,504.3 ns |
1,019.26 ns |
953.41 ns |
1,072.52 |
1.81 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,887.6 ns |
9.27 ns |
8.68 ns |
3.56 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,911.8 ns |
8.80 ns |
8.23 ns |
3.61 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
750,327.1 ns |
894.80 ns |
793.22 ns |
1,415.55 |
1.59 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
543.6 ns |
0.12 ns |
0.11 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,617,613.0 ns |
234,627.85 ns |
219,471.04 ns |
107,834.19 |
391.53 |
250.0000 |
125.0000 |
125.0000 |
16001086 B |
46,514.78 |
| InvokeIntArrayFixed |
100000 |
59,614.3 ns |
305.80 ns |
271.08 ns |
109.67 |
0.48 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
59,390.0 ns |
209.31 ns |
185.55 ns |
109.26 |
0.33 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,840,335.4 ns |
599,034.23 ns |
560,336.99 ns |
157,913.69 |
998.69 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-24.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.122 μs |
0.0093 μs |
0.0087 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.112 μs |
0.0106 μs |
0.0099 μs |
0.99 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.119 μs |
0.0086 μs |
0.0076 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
104.9 ns |
0.03 ns |
0.03 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
152.4 ns |
0.04 ns |
0.04 ns |
1.45 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.9 ns |
0.03 ns |
0.03 ns |
1.11 |
- |
- |
0.00 |
| SetInstanceStringField |
724.9 ns |
1.18 ns |
1.11 ns |
6.91 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
126.0 ns |
0.03 ns |
0.02 ns |
1.20 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
151.3 ns |
0.04 ns |
0.03 ns |
1.44 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
120.6 ns |
0.03 ns |
0.03 ns |
1.15 |
- |
- |
0.00 |
| SetStaticStringField |
730.2 ns |
1.04 ns |
0.97 ns |
6.96 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
155.6 ns |
0.04 ns |
0.03 ns |
1.48 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
305.4 ns |
0.16 ns |
0.15 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
272.9 ns |
0.28 ns |
0.25 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
528.4 ns |
0.26 ns |
0.23 ns |
1.73 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
330.0 ns |
0.18 ns |
0.17 ns |
1.08 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
543.0 ns |
0.27 ns |
0.21 ns |
1.78 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.350 μs |
0.0020 μs |
0.0019 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,025.5 ns |
5.40 ns |
5.06 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,008.6 ns |
6.15 ns |
5.76 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,221.1 ns |
5.94 ns |
5.56 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,505.1 ns |
10.69 ns |
10.00 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
442.0 ns |
4.09 ns |
3.82 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
427.6 ns |
0.31 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
636.5 ns |
1.02 ns |
0.80 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,924.1 ns |
18.05 ns |
16.89 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
610.93 ns |
0.439 ns |
0.389 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
602.44 ns |
0.382 ns |
0.339 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
788.88 ns |
6.008 ns |
5.620 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,196.27 ns |
27.686 ns |
25.897 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
52.38 ns |
1.022 ns |
1.050 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
52.40 ns |
1.023 ns |
1.256 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
242.42 ns |
0.440 ns |
0.412 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,404.67 ns |
25.993 ns |
24.314 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
546.5 ns |
0.39 ns |
0.35 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,173.8 ns |
8.62 ns |
7.64 ns |
13.13 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,185.7 ns |
1.62 ns |
1.43 ns |
2.17 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,198.7 ns |
1.87 ns |
1.75 ns |
2.19 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,364.8 ns |
41.32 ns |
38.65 ns |
17.14 |
0.07 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
544.0 ns |
0.51 ns |
0.45 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
580,073.7 ns |
1,289.81 ns |
1,206.49 ns |
1,066.22 |
2.31 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,914.9 ns |
5.61 ns |
5.25 ns |
3.52 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,906.6 ns |
6.85 ns |
6.40 ns |
3.50 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
748,973.0 ns |
1,595.84 ns |
1,332.60 ns |
1,376.67 |
2.61 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
529.2 ns |
0.25 ns |
0.22 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,794,591.4 ns |
163,757.40 ns |
145,166.67 ns |
114,873.39 |
269.13 |
333.3333 |
222.2222 |
222.2222 |
16001608 B |
46,516.30 |
| InvokeIntArrayFixed |
100000 |
61,212.0 ns |
201.10 ns |
188.11 ns |
115.66 |
0.35 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,982.9 ns |
231.04 ns |
204.81 ns |
115.23 |
0.38 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
83,828,541.3 ns |
469,682.96 ns |
392,206.54 ns |
158,396.80 |
716.91 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-24.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.105 μs |
0.0090 μs |
0.0084 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.117 μs |
0.0097 μs |
0.0091 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.130 μs |
0.0074 μs |
0.0069 μs |
1.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
108.5 ns |
0.03 ns |
0.03 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
152.9 ns |
0.04 ns |
0.04 ns |
1.41 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.5 ns |
0.02 ns |
0.01 ns |
1.06 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
726.4 ns |
0.77 ns |
0.72 ns |
6.69 |
0.01 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
125.7 ns |
0.05 ns |
0.04 ns |
1.16 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
146.5 ns |
0.03 ns |
0.03 ns |
1.35 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
117.2 ns |
0.07 ns |
0.07 ns |
1.08 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
720.9 ns |
6.50 ns |
5.76 ns |
6.64 |
0.05 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
154.8 ns |
0.07 ns |
0.06 ns |
1.43 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
306.1 ns |
0.11 ns |
0.10 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
272.3 ns |
0.09 ns |
0.09 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
523.1 ns |
0.27 ns |
0.24 ns |
1.71 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
313.0 ns |
0.15 ns |
0.14 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
529.7 ns |
0.74 ns |
0.70 ns |
1.73 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.334 μs |
0.0011 μs |
0.0009 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,028.2 ns |
5.00 ns |
4.43 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,029.7 ns |
8.09 ns |
7.56 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,244.5 ns |
7.07 ns |
6.61 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,768.3 ns |
13.98 ns |
11.67 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
433.7 ns |
0.34 ns |
0.30 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
426.3 ns |
0.35 ns |
0.31 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
627.4 ns |
4.20 ns |
3.72 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,101.1 ns |
35.64 ns |
27.83 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
605.19 ns |
0.954 ns |
0.745 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
599.69 ns |
0.721 ns |
0.563 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
795.21 ns |
5.821 ns |
5.445 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,142.15 ns |
53.212 ns |
49.775 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
48.51 ns |
0.928 ns |
1.069 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
50.60 ns |
0.297 ns |
0.278 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
241.14 ns |
0.364 ns |
0.340 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,403.29 ns |
14.156 ns |
11.821 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
541.5 ns |
0.44 ns |
0.39 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,442.2 ns |
13.74 ns |
12.18 ns |
13.74 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,243.8 ns |
1.92 ns |
1.80 ns |
2.30 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,221.2 ns |
1.75 ns |
1.55 ns |
2.25 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,254.5 ns |
15.75 ns |
13.96 ns |
17.09 |
0.03 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
542.8 ns |
0.21 ns |
0.17 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
599,827.3 ns |
1,164.24 ns |
1,089.03 ns |
1,105.06 |
1.97 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,960.0 ns |
9.41 ns |
8.80 ns |
3.61 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,948.9 ns |
4.33 ns |
4.05 ns |
3.59 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
775,047.5 ns |
666.21 ns |
556.31 ns |
1,427.87 |
1.08 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
550.1 ns |
0.47 ns |
0.42 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
61,847,868.7 ns |
377,225.44 ns |
352,856.91 ns |
112,422.75 |
626.56 |
250.0000 |
125.0000 |
125.0000 |
16001015 B |
46,514.58 |
| InvokeIntArrayFixed |
100000 |
60,336.3 ns |
189.58 ns |
168.06 ns |
109.68 |
0.31 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,469.3 ns |
209.77 ns |
185.95 ns |
109.92 |
0.34 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
88,150,179.1 ns |
559,245.31 ns |
495,756.40 ns |
160,233.26 |
878.46 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-24.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.169 μs |
0.0009 μs |
0.0007 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.145 μs |
0.0006 μs |
0.0005 μs |
0.98 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.163 μs |
0.0087 μs |
0.0082 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
112.3 ns |
0.04 ns |
0.03 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
148.7 ns |
0.06 ns |
0.05 ns |
1.32 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
124.4 ns |
0.04 ns |
0.04 ns |
1.11 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
749.5 ns |
3.48 ns |
3.25 ns |
6.67 |
0.03 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
134.4 ns |
0.05 ns |
0.04 ns |
1.20 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
154.8 ns |
0.04 ns |
0.04 ns |
1.38 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
124.3 ns |
0.04 ns |
0.04 ns |
1.11 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
774.1 ns |
1.17 ns |
1.09 ns |
6.89 |
0.01 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
147.6 ns |
0.05 ns |
0.05 ns |
1.31 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
369.5 ns |
0.31 ns |
0.29 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
356.4 ns |
1.57 ns |
1.47 ns |
0.96 |
- |
- |
NA |
| InvokeStaticWithFeedback |
532.7 ns |
0.40 ns |
0.34 ns |
1.44 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
401.9 ns |
0.19 ns |
0.18 ns |
1.09 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
545.8 ns |
0.41 ns |
0.32 ns |
1.48 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.372 μs |
0.0021 μs |
0.0020 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,061.7 ns |
6.18 ns |
5.78 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,090.2 ns |
3.42 ns |
3.20 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,293.5 ns |
5.09 ns |
4.51 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,742.9 ns |
3.84 ns |
3.20 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
446.6 ns |
0.56 ns |
0.53 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
461.4 ns |
0.37 ns |
0.33 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
653.4 ns |
0.89 ns |
0.83 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,041.6 ns |
15.87 ns |
14.85 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
633.83 ns |
0.784 ns |
0.655 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
636.10 ns |
1.059 ns |
0.884 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
823.51 ns |
1.088 ns |
1.018 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,289.72 ns |
29.921 ns |
27.988 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
59.90 ns |
0.022 ns |
0.017 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
59.27 ns |
1.084 ns |
0.961 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
254.44 ns |
0.495 ns |
0.463 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,632.59 ns |
15.081 ns |
14.106 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
525.7 ns |
0.33 ns |
0.29 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,283.6 ns |
10.70 ns |
10.01 ns |
13.85 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,184.1 ns |
1.57 ns |
1.39 ns |
2.25 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,187.7 ns |
2.44 ns |
2.28 ns |
2.26 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,314.5 ns |
15.48 ns |
14.48 ns |
17.72 |
0.03 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
527.4 ns |
0.31 ns |
0.27 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
580,847.5 ns |
1,410.52 ns |
1,319.40 ns |
1,101.38 |
2.48 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,902.2 ns |
2.44 ns |
2.17 ns |
3.61 |
0.00 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,924.5 ns |
4.02 ns |
3.35 ns |
3.65 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
790,293.2 ns |
951.91 ns |
794.89 ns |
1,498.52 |
1.63 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
531.0 ns |
0.55 ns |
0.49 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,574,863.4 ns |
311,827.93 ns |
291,684.04 ns |
114,080.85 |
541.58 |
250.0000 |
125.0000 |
125.0000 |
16000571 B |
46,513.29 |
| InvokeIntArrayFixed |
100000 |
60,950.6 ns |
418.15 ns |
370.68 ns |
114.79 |
0.68 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,858.9 ns |
380.24 ns |
355.67 ns |
114.62 |
0.66 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
88,794,689.0 ns |
789,569.28 ns |
699,932.60 ns |
167,227.34 |
1,282.16 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-24.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.145 μs |
0.0087 μs |
0.0082 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.165 μs |
0.0090 μs |
0.0084 μs |
1.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.165 μs |
0.0096 μs |
0.0089 μs |
1.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
106.8 ns |
0.05 ns |
0.04 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
147.3 ns |
0.04 ns |
0.03 ns |
1.38 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
115.6 ns |
0.02 ns |
0.02 ns |
1.08 |
- |
- |
0.00 |
| SetInstanceStringField |
731.7 ns |
1.21 ns |
1.13 ns |
6.85 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
115.9 ns |
0.02 ns |
0.02 ns |
1.09 |
0.0004 |
24 B |
1.00 |
| SetStaticIntField |
139.8 ns |
0.03 ns |
0.03 ns |
1.31 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
117.4 ns |
0.03 ns |
0.03 ns |
1.10 |
- |
- |
0.00 |
| SetStaticStringField |
728.6 ns |
0.82 ns |
0.77 ns |
6.82 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
148.3 ns |
0.08 ns |
0.07 ns |
1.39 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
289.4 ns |
0.17 ns |
0.15 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
262.0 ns |
0.13 ns |
0.12 ns |
0.91 |
- |
- |
NA |
| InvokeStaticWithFeedback |
532.6 ns |
0.52 ns |
0.46 ns |
1.84 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
311.4 ns |
0.16 ns |
0.15 ns |
1.08 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
543.8 ns |
0.75 ns |
0.67 ns |
1.88 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.328 μs |
0.0017 μs |
0.0016 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,042.7 ns |
4.15 ns |
3.68 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,027.3 ns |
3.95 ns |
3.50 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,213.2 ns |
5.47 ns |
5.12 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,747.2 ns |
15.81 ns |
14.01 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
438.3 ns |
0.58 ns |
0.51 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
425.7 ns |
0.53 ns |
0.49 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
612.4 ns |
1.79 ns |
1.40 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,010.9 ns |
9.93 ns |
8.80 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
593.10 ns |
3.811 ns |
3.565 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
597.39 ns |
1.605 ns |
1.502 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
783.20 ns |
6.251 ns |
5.847 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,344.82 ns |
18.148 ns |
16.088 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.40 ns |
0.951 ns |
0.934 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.51 ns |
0.990 ns |
0.972 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
239.93 ns |
0.349 ns |
0.309 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,562.59 ns |
23.425 ns |
21.912 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
530.0 ns |
0.34 ns |
0.31 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,190.7 ns |
9.57 ns |
7.99 ns |
13.57 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,173.2 ns |
1.65 ns |
1.46 ns |
2.21 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,183.0 ns |
0.88 ns |
0.68 ns |
2.23 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,219.6 ns |
28.93 ns |
25.65 ns |
17.40 |
0.05 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
531.3 ns |
0.37 ns |
0.33 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
574,865.9 ns |
982.08 ns |
820.08 ns |
1,081.97 |
1.62 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,889.9 ns |
5.51 ns |
4.88 ns |
3.56 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,907.1 ns |
4.75 ns |
4.21 ns |
3.59 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
758,029.4 ns |
1,051.54 ns |
878.08 ns |
1,426.70 |
1.80 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
531.9 ns |
0.45 ns |
0.38 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,803,388.8 ns |
181,879.84 ns |
170,130.52 ns |
110,554.39 |
318.78 |
250.0000 |
125.0000 |
125.0000 |
16000911 B |
46,514.28 |
| InvokeIntArrayFixed |
100000 |
60,585.6 ns |
298.07 ns |
278.81 ns |
113.91 |
0.51 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,806.8 ns |
496.98 ns |
464.88 ns |
114.32 |
0.85 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,344,951.0 ns |
624,361.11 ns |
553,479.86 ns |
162,334.41 |
1,011.53 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-24.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Median |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.118 μs |
0.0134 μs |
0.0125 μs |
1.108 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.134 μs |
0.0140 μs |
0.0131 μs |
1.125 μs |
1.01 |
0.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.125 μs |
0.0147 μs |
0.0137 μs |
1.114 μs |
1.01 |
0.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
112.9 ns |
0.02 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
154.7 ns |
0.05 ns |
0.05 ns |
1.37 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
118.0 ns |
0.03 ns |
0.03 ns |
1.05 |
- |
- |
0.00 |
| SetInstanceStringField |
732.5 ns |
1.13 ns |
1.06 ns |
6.49 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
127.3 ns |
0.04 ns |
0.04 ns |
1.13 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
151.2 ns |
0.05 ns |
0.04 ns |
1.34 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
119.8 ns |
0.03 ns |
0.03 ns |
1.06 |
- |
- |
0.00 |
| SetStaticStringField |
739.8 ns |
1.63 ns |
1.44 ns |
6.55 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
148.5 ns |
0.04 ns |
0.03 ns |
1.32 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
307.5 ns |
0.12 ns |
0.11 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
276.4 ns |
0.16 ns |
0.15 ns |
0.90 |
- |
- |
NA |
| InvokeStaticWithFeedback |
527.7 ns |
0.27 ns |
0.22 ns |
1.72 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
313.7 ns |
0.13 ns |
0.12 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
543.4 ns |
0.37 ns |
0.31 ns |
1.77 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.322 μs |
0.0012 μs |
0.0010 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,019.9 ns |
8.26 ns |
7.72 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,005.7 ns |
5.39 ns |
5.04 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,226.7 ns |
8.09 ns |
7.57 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,782.1 ns |
21.53 ns |
20.14 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
424.3 ns |
0.23 ns |
0.19 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
429.5 ns |
0.30 ns |
0.27 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
616.3 ns |
0.60 ns |
0.50 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,849.9 ns |
12.47 ns |
11.66 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
602.63 ns |
0.278 ns |
0.232 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
594.19 ns |
0.999 ns |
0.935 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
790.16 ns |
6.732 ns |
6.297 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
3,959.71 ns |
12.843 ns |
10.725 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.79 ns |
0.944 ns |
0.837 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.90 ns |
0.913 ns |
1.014 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
242.86 ns |
0.434 ns |
0.406 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,435.34 ns |
11.137 ns |
10.418 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
545.2 ns |
0.51 ns |
0.46 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,272.7 ns |
15.79 ns |
14.77 ns |
13.34 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,213.7 ns |
2.80 ns |
2.62 ns |
2.23 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,205.9 ns |
1.73 ns |
1.54 ns |
2.21 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,894.9 ns |
39.37 ns |
36.83 ns |
18.15 |
0.07 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
544.2 ns |
0.74 ns |
0.66 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
587,209.7 ns |
1,194.68 ns |
1,117.50 ns |
1,079.02 |
2.35 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,931.7 ns |
7.41 ns |
6.93 ns |
3.55 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,946.5 ns |
9.63 ns |
9.01 ns |
3.58 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
765,722.1 ns |
2,004.82 ns |
1,674.12 ns |
1,407.05 |
3.39 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
544.4 ns |
0.36 ns |
0.30 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,420,890.9 ns |
244,179.67 ns |
228,405.81 ns |
110,978.84 |
410.66 |
333.3333 |
222.2222 |
222.2222 |
16001008 B |
46,514.56 |
| InvokeIntArrayFixed |
100000 |
60,382.3 ns |
608.85 ns |
569.52 ns |
110.91 |
1.01 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,736.2 ns |
516.55 ns |
457.91 ns |
111.56 |
0.81 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
84,857,406.8 ns |
813,729.69 ns |
761,163.26 ns |
155,862.92 |
1,356.71 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-24.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.118 μs |
0.0110 μs |
0.0103 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.129 μs |
0.0076 μs |
0.0071 μs |
1.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.121 μs |
0.0084 μs |
0.0079 μs |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
113.1 ns |
0.20 ns |
0.19 ns |
1.00 |
0.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
151.8 ns |
0.07 ns |
0.06 ns |
1.34 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
120.1 ns |
0.03 ns |
0.03 ns |
1.06 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
727.1 ns |
1.64 ns |
1.53 ns |
6.43 |
0.02 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
127.2 ns |
0.04 ns |
0.03 ns |
1.12 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
162.4 ns |
0.06 ns |
0.05 ns |
1.44 |
0.00 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
122.2 ns |
0.05 ns |
0.05 ns |
1.08 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
725.4 ns |
1.10 ns |
0.97 ns |
6.41 |
0.01 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
154.2 ns |
0.11 ns |
0.09 ns |
1.36 |
0.00 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
308.9 ns |
0.16 ns |
0.15 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
278.8 ns |
0.18 ns |
0.17 ns |
0.90 |
- |
- |
NA |
| InvokeStaticWithFeedback |
543.6 ns |
1.18 ns |
1.11 ns |
1.76 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
317.4 ns |
0.22 ns |
0.21 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
546.2 ns |
0.55 ns |
0.49 ns |
1.77 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.343 μs |
0.0023 μs |
0.0022 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,031.4 ns |
1.13 ns |
0.89 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,030.6 ns |
8.22 ns |
7.69 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,270.6 ns |
6.87 ns |
6.43 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,507.3 ns |
11.81 ns |
9.22 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
445.7 ns |
0.36 ns |
0.32 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
431.7 ns |
0.46 ns |
0.43 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
646.1 ns |
4.77 ns |
4.23 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,849.3 ns |
10.55 ns |
8.24 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
592.04 ns |
0.525 ns |
0.410 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
595.21 ns |
0.771 ns |
0.602 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
794.64 ns |
5.044 ns |
4.718 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,797.59 ns |
51.115 ns |
56.814 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
48.65 ns |
0.956 ns |
0.982 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
49.73 ns |
0.950 ns |
1.056 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
238.97 ns |
0.511 ns |
0.478 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,505.99 ns |
18.119 ns |
20.139 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
544.5 ns |
0.25 ns |
0.19 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,464.9 ns |
13.01 ns |
12.17 ns |
13.71 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,231.7 ns |
1.37 ns |
1.28 ns |
2.26 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,233.9 ns |
2.01 ns |
1.88 ns |
2.27 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,283.7 ns |
23.70 ns |
22.17 ns |
17.05 |
0.04 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
543.4 ns |
0.49 ns |
0.44 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
598,837.3 ns |
1,127.67 ns |
1,054.82 ns |
1,102.10 |
2.07 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,962.4 ns |
9.62 ns |
9.00 ns |
3.61 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,950.7 ns |
12.49 ns |
11.69 ns |
3.59 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
785,654.2 ns |
1,219.35 ns |
1,018.21 ns |
1,445.92 |
2.13 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
549.9 ns |
0.39 ns |
0.32 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,456,095.2 ns |
361,231.73 ns |
337,896.38 ns |
109,939.23 |
598.42 |
250.0000 |
125.0000 |
125.0000 |
16001411 B |
46,515.73 |
| InvokeIntArrayFixed |
100000 |
61,162.8 ns |
483.70 ns |
428.78 ns |
111.22 |
0.76 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,122.4 ns |
229.89 ns |
203.79 ns |
111.15 |
0.36 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,770,452.8 ns |
495,164.43 ns |
463,177.12 ns |
157,791.82 |
820.72 |
1000.0000 |
833.3333 |
833.3333 |
27894277 B |
81,088.01 |
core-ubuntu-24.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.149 μs |
0.0058 μs |
0.0051 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.190 μs |
0.0014 μs |
0.0012 μs |
1.04 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.188 μs |
0.0066 μs |
0.0061 μs |
1.03 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
107.7 ns |
0.03 ns |
0.03 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
151.5 ns |
0.03 ns |
0.03 ns |
1.41 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
120.6 ns |
0.02 ns |
0.02 ns |
1.12 |
- |
- |
0.00 |
| SetInstanceStringField |
744.4 ns |
0.94 ns |
0.84 ns |
6.91 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
135.4 ns |
0.05 ns |
0.05 ns |
1.26 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
154.5 ns |
0.06 ns |
0.05 ns |
1.44 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
121.0 ns |
0.07 ns |
0.06 ns |
1.12 |
- |
- |
0.00 |
| SetStaticStringField |
728.3 ns |
0.96 ns |
0.90 ns |
6.76 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
154.8 ns |
0.03 ns |
0.03 ns |
1.44 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
383.8 ns |
0.21 ns |
0.20 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
337.2 ns |
0.16 ns |
0.14 ns |
0.88 |
- |
- |
NA |
| InvokeStaticWithFeedback |
536.7 ns |
0.32 ns |
0.30 ns |
1.40 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
394.5 ns |
0.81 ns |
0.75 ns |
1.03 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
550.6 ns |
0.42 ns |
0.38 ns |
1.43 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.361 μs |
0.0027 μs |
0.0025 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,054.2 ns |
5.09 ns |
4.76 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,064.9 ns |
9.02 ns |
8.43 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,262.8 ns |
3.89 ns |
3.45 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,829.7 ns |
11.35 ns |
10.62 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
442.0 ns |
0.73 ns |
0.68 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
444.9 ns |
0.81 ns |
0.76 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
659.4 ns |
0.91 ns |
0.81 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,047.6 ns |
16.03 ns |
15.00 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
630.43 ns |
0.802 ns |
0.626 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
628.37 ns |
0.687 ns |
0.537 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
820.09 ns |
4.338 ns |
4.058 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,261.77 ns |
10.759 ns |
10.064 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
59.93 ns |
1.189 ns |
1.221 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
58.98 ns |
1.159 ns |
1.241 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
250.41 ns |
0.320 ns |
0.300 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,604.67 ns |
9.864 ns |
9.226 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
534.0 ns |
0.66 ns |
0.51 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,370.6 ns |
14.30 ns |
12.67 ns |
13.80 |
0.03 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,238.4 ns |
1.48 ns |
1.31 ns |
2.32 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,223.1 ns |
1.80 ns |
1.60 ns |
2.29 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
10,096.7 ns |
53.29 ns |
49.85 ns |
18.91 |
0.09 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
533.5 ns |
0.29 ns |
0.26 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
581,574.8 ns |
1,309.47 ns |
1,224.88 ns |
1,090.06 |
2.28 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,970.0 ns |
7.85 ns |
7.35 ns |
3.69 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,952.0 ns |
5.35 ns |
4.74 ns |
3.66 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
788,731.4 ns |
1,304.35 ns |
1,089.19 ns |
1,478.34 |
2.08 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
547.1 ns |
0.55 ns |
0.49 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,724,314.8 ns |
241,128.20 ns |
225,551.46 ns |
109,174.81 |
410.14 |
250.0000 |
125.0000 |
125.0000 |
16000588 B |
46,513.34 |
| InvokeIntArrayFixed |
100000 |
61,907.2 ns |
230.74 ns |
192.68 ns |
113.17 |
0.35 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
61,498.8 ns |
450.78 ns |
421.66 ns |
112.42 |
0.75 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
88,438,025.3 ns |
1,444,376.89 ns |
1,351,071.04 ns |
161,662.88 |
2,395.72 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-24.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.175 μs |
0.0145 μs |
0.0136 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.160 μs |
0.0011 μs |
0.0009 μs |
0.99 |
0.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.172 μs |
0.0122 μs |
0.0114 μs |
1.00 |
0.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
108.3 ns |
0.03 ns |
0.02 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
153.4 ns |
0.05 ns |
0.05 ns |
1.42 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
116.4 ns |
0.01 ns |
0.01 ns |
1.08 |
- |
- |
0.00 |
| SetInstanceStringField |
737.5 ns |
0.98 ns |
0.87 ns |
6.81 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
124.6 ns |
0.04 ns |
0.03 ns |
1.15 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
150.3 ns |
0.04 ns |
0.03 ns |
1.39 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
111.8 ns |
0.05 ns |
0.05 ns |
1.03 |
- |
- |
0.00 |
| SetStaticStringField |
724.9 ns |
1.36 ns |
1.27 ns |
6.69 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
151.0 ns |
0.03 ns |
0.02 ns |
1.39 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
299.8 ns |
0.13 ns |
0.12 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
275.2 ns |
0.20 ns |
0.18 ns |
0.92 |
- |
- |
NA |
| InvokeStaticWithFeedback |
549.4 ns |
0.47 ns |
0.42 ns |
1.83 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
319.6 ns |
0.16 ns |
0.15 ns |
1.07 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
562.2 ns |
0.48 ns |
0.43 ns |
1.87 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.349 μs |
0.0008 μs |
0.0007 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,054.4 ns |
8.35 ns |
7.81 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,061.5 ns |
6.57 ns |
5.82 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,333.8 ns |
6.01 ns |
5.33 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,555.8 ns |
46.24 ns |
40.99 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
430.7 ns |
0.60 ns |
0.53 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
428.8 ns |
1.08 ns |
0.96 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
627.3 ns |
2.14 ns |
1.67 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,195.2 ns |
14.23 ns |
12.61 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
620.41 ns |
1.252 ns |
0.977 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
613.57 ns |
0.663 ns |
0.518 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
822.73 ns |
6.699 ns |
6.266 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
5,335.76 ns |
64.619 ns |
57.283 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.57 ns |
0.834 ns |
0.739 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.47 ns |
0.956 ns |
0.939 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
242.29 ns |
0.395 ns |
0.369 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
4,604.48 ns |
70.744 ns |
66.174 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
544.6 ns |
0.87 ns |
0.81 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,183.8 ns |
9.02 ns |
8.00 ns |
13.19 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,220.8 ns |
2.36 ns |
2.21 ns |
2.24 |
0.01 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,191.2 ns |
1.06 ns |
0.88 ns |
2.19 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,626.5 ns |
50.45 ns |
47.19 ns |
17.68 |
0.09 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
548.3 ns |
0.52 ns |
0.46 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
578,187.6 ns |
1,754.23 ns |
1,640.91 ns |
1,054.55 |
3.02 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,931.3 ns |
8.88 ns |
7.87 ns |
3.52 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,937.9 ns |
6.50 ns |
6.08 ns |
3.53 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
757,621.4 ns |
1,422.89 ns |
1,188.18 ns |
1,381.82 |
2.38 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
547.7 ns |
0.48 ns |
0.43 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,718,104.1 ns |
172,798.52 ns |
161,635.84 ns |
109,026.19 |
297.25 |
250.0000 |
125.0000 |
125.0000 |
16001506 B |
46,516.01 |
| InvokeIntArrayFixed |
100000 |
60,926.4 ns |
391.94 ns |
366.62 ns |
111.23 |
0.65 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,955.5 ns |
214.85 ns |
179.41 ns |
111.29 |
0.33 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
84,972,314.7 ns |
928,539.87 ns |
823,126.41 ns |
155,132.31 |
1,456.47 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-24.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.138 μs |
0.0100 μs |
0.0094 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.139 μs |
0.0116 μs |
0.0109 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.167 μs |
0.0112 μs |
0.0105 μs |
1.03 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
108.1 ns |
0.04 ns |
0.04 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
155.5 ns |
0.07 ns |
0.06 ns |
1.44 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
119.0 ns |
0.06 ns |
0.05 ns |
1.10 |
- |
- |
0.00 |
| SetInstanceStringField |
717.9 ns |
1.27 ns |
1.19 ns |
6.64 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
125.4 ns |
0.08 ns |
0.07 ns |
1.16 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
157.7 ns |
0.06 ns |
0.05 ns |
1.46 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
117.1 ns |
0.04 ns |
0.04 ns |
1.08 |
- |
- |
0.00 |
| SetStaticStringField |
716.1 ns |
1.31 ns |
1.23 ns |
6.62 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
157.6 ns |
0.11 ns |
0.10 ns |
1.46 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
301.3 ns |
0.18 ns |
0.16 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
277.3 ns |
0.12 ns |
0.11 ns |
0.92 |
- |
- |
NA |
| InvokeStaticWithFeedback |
532.7 ns |
0.67 ns |
0.59 ns |
1.77 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
319.9 ns |
0.13 ns |
0.11 ns |
1.06 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
541.9 ns |
0.93 ns |
0.87 ns |
1.80 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.386 μs |
0.0024 μs |
0.0022 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,031.6 ns |
6.75 ns |
6.31 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,035.1 ns |
3.92 ns |
3.67 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,260.7 ns |
4.19 ns |
3.92 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,642.1 ns |
13.15 ns |
12.30 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
435.5 ns |
0.76 ns |
0.71 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
434.1 ns |
0.70 ns |
0.66 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
628.7 ns |
0.84 ns |
0.75 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,955.4 ns |
12.79 ns |
11.97 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
606.93 ns |
0.607 ns |
0.507 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
609.06 ns |
0.565 ns |
0.501 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
808.02 ns |
4.502 ns |
3.760 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,359.47 ns |
16.236 ns |
15.187 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
51.25 ns |
0.995 ns |
1.022 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.16 ns |
1.036 ns |
1.233 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
241.05 ns |
0.456 ns |
0.426 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,491.96 ns |
12.481 ns |
11.674 ns |
0.0100 |
688 B |
core-ubuntu-24.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
542.6 ns |
0.40 ns |
0.35 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,237.3 ns |
10.78 ns |
10.08 ns |
13.34 |
0.02 |
0.0305 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,207.1 ns |
1.54 ns |
1.37 ns |
2.22 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,220.3 ns |
2.19 ns |
2.05 ns |
2.25 |
0.00 |
0.0057 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,241.5 ns |
34.33 ns |
32.12 ns |
17.03 |
0.06 |
0.0458 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
543.1 ns |
0.47 ns |
0.41 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
571,205.2 ns |
1,102.38 ns |
1,031.16 ns |
1,051.77 |
1.99 |
1.9531 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,940.2 ns |
4.16 ns |
3.69 ns |
3.57 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,931.7 ns |
8.45 ns |
7.90 ns |
3.56 |
0.01 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
767,291.7 ns |
1,830.40 ns |
1,528.47 ns |
1,412.82 |
2.90 |
3.9063 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
547.9 ns |
0.23 ns |
0.20 ns |
1.00 |
0.00 |
0.0048 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,597,748.9 ns |
222,948.67 ns |
208,546.32 ns |
110,595.16 |
370.71 |
333.3333 |
222.2222 |
222.2222 |
16001999 B |
46,517.44 |
| InvokeIntArrayFixed |
100000 |
60,701.4 ns |
135.56 ns |
120.17 ns |
110.78 |
0.22 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
60,641.5 ns |
261.73 ns |
232.01 ns |
110.68 |
0.41 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,637,832.7 ns |
1,074,605.61 ns |
952,609.88 ns |
158,120.15 |
1,680.59 |
666.6667 |
500.0000 |
500.0000 |
27894040 B |
81,087.33 |
core-ubuntu-24.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.133 μs |
0.0128 μs |
0.0120 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.151 μs |
0.0118 μs |
0.0110 μs |
1.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.145 μs |
0.0100 μs |
0.0093 μs |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
103.9 ns |
0.02 ns |
0.01 ns |
1.00 |
0.0004 |
24 B |
1.00 |
| SetInstanceIntField |
145.7 ns |
0.06 ns |
0.05 ns |
1.40 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
117.3 ns |
0.02 ns |
0.02 ns |
1.13 |
- |
- |
0.00 |
| SetInstanceStringField |
722.1 ns |
1.06 ns |
0.99 ns |
6.95 |
0.0038 |
288 B |
12.00 |
| GetStaticIntField |
126.4 ns |
0.04 ns |
0.03 ns |
1.22 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
146.8 ns |
0.04 ns |
0.03 ns |
1.41 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
117.9 ns |
0.02 ns |
0.02 ns |
1.13 |
- |
- |
0.00 |
| SetStaticStringField |
715.4 ns |
1.16 ns |
1.02 ns |
6.89 |
0.0038 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
152.8 ns |
0.04 ns |
0.04 ns |
1.47 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
311.5 ns |
0.13 ns |
0.12 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
274.3 ns |
0.14 ns |
0.13 ns |
0.88 |
- |
- |
NA |
| InvokeStaticWithFeedback |
546.3 ns |
0.43 ns |
0.36 ns |
1.75 |
0.0048 |
344 B |
NA |
| InvokeInstanceEmpty |
318.6 ns |
0.12 ns |
0.11 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
547.3 ns |
0.47 ns |
0.44 ns |
1.76 |
0.0048 |
344 B |
NA |
core-ubuntu-24.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.347 μs |
0.0020 μs |
0.0019 μs |
1.00 |
0.0095 |
712 B |
1.00 |
core-ubuntu-24.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,028.9 ns |
5.63 ns |
4.99 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,022.6 ns |
5.88 ns |
5.50 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,253.6 ns |
6.92 ns |
6.48 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
5,338.7 ns |
64.23 ns |
53.64 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
433.5 ns |
0.44 ns |
0.41 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
444.8 ns |
0.33 ns |
0.29 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
638.9 ns |
0.90 ns |
0.70 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,760.0 ns |
3.41 ns |
2.66 ns |
0.0076 |
712 B |
core-ubuntu-24.04-arm_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), Arm64 RyuJIT armv8.0-a
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
601.70 ns |
0.805 ns |
0.628 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
False |
True |
610.02 ns |
0.627 ns |
0.490 ns |
0.0011 |
80 B |
| PredicateSustained |
False |
True |
False |
799.88 ns |
4.785 ns |
3.996 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
4,277.84 ns |
34.112 ns |
37.915 ns |
0.0100 |
768 B |
| PredicateSustained |
True |
False |
False |
52.10 ns |
0.981 ns |
0.963 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
48.76 ns |
0.933 ns |
0.958 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
241.21 ns |
0.397 ns |
0.371 ns |
0.0013 |
96 B |
| PredicateSustained |
True |
True |
True |
3,465.93 ns |
61.527 ns |
57.552 ns |
0.0100 |
688 B |
core-ubuntu-24.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
572.2 ns |
7.78 ns |
7.27 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,468.2 ns |
32.84 ns |
30.71 ns |
11.31 |
0.15 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,262.1 ns |
4.88 ns |
4.33 ns |
2.21 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,230.3 ns |
8.55 ns |
7.58 ns |
2.15 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,545.8 ns |
56.56 ns |
50.14 ns |
14.94 |
0.20 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
565.7 ns |
5.78 ns |
5.40 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
536,578.2 ns |
3,795.64 ns |
3,550.44 ns |
948.65 |
10.68 |
8.7891 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,883.3 ns |
10.46 ns |
9.78 ns |
3.33 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,907.2 ns |
20.94 ns |
18.57 ns |
3.37 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
658,715.4 ns |
5,650.91 ns |
4,718.77 ns |
1,164.59 |
13.45 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
559.8 ns |
7.24 ns |
6.42 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
61,187,167.1 ns |
650,661.07 ns |
576,794.09 ns |
109,311.52 |
1,569.38 |
1111.1111 |
1000.0000 |
333.3333 |
16002184 B |
51,289.05 |
| InvokeIntArrayFixed |
100000 |
66,614.0 ns |
726.41 ns |
643.95 ns |
119.01 |
1.73 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
66,101.4 ns |
395.66 ns |
308.90 ns |
118.09 |
1.41 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
84,367,062.2 ns |
1,575,678.93 ns |
1,547,527.40 ns |
150,722.64 |
3,161.50 |
2000.0000 |
1833.3333 |
1000.0000 |
27895223 B |
89,407.77 |
core-ubuntu-24.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.161 μs |
0.0039 μs |
0.0033 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.133 μs |
0.0088 μs |
0.0078 μs |
0.98 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.134 μs |
0.0052 μs |
0.0048 μs |
0.98 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
82.11 ns |
0.381 ns |
0.357 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
94.14 ns |
0.868 ns |
0.812 ns |
1.15 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
88.81 ns |
1.343 ns |
1.256 ns |
1.08 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
643.64 ns |
2.798 ns |
2.617 ns |
7.84 |
0.05 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
91.93 ns |
1.109 ns |
1.037 ns |
1.12 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
94.33 ns |
1.479 ns |
1.383 ns |
1.15 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
81.97 ns |
0.652 ns |
0.610 ns |
1.00 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
671.68 ns |
2.152 ns |
1.797 ns |
8.18 |
0.04 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
89.36 ns |
0.782 ns |
0.693 ns |
1.09 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
359.8 ns |
2.91 ns |
2.58 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
310.9 ns |
4.92 ns |
4.60 ns |
0.86 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
582.0 ns |
5.70 ns |
4.76 ns |
1.62 |
0.02 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
357.4 ns |
3.60 ns |
3.37 ns |
0.99 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
582.0 ns |
3.06 ns |
2.71 ns |
1.62 |
0.01 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.421 μs |
0.0159 μs |
0.0141 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,182.0 ns |
12.69 ns |
11.25 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,082.3 ns |
13.67 ns |
12.79 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,383.7 ns |
4.09 ns |
3.63 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,812.9 ns |
23.27 ns |
21.76 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
421.1 ns |
5.09 ns |
4.76 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
435.4 ns |
5.80 ns |
5.42 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
697.5 ns |
4.31 ns |
3.82 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,873.8 ns |
13.52 ns |
11.29 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
672.60 ns |
6.485 ns |
6.066 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
588.71 ns |
6.050 ns |
5.659 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
786.41 ns |
3.582 ns |
2.992 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,060.02 ns |
23.976 ns |
20.021 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
31.53 ns |
0.175 ns |
0.155 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
28.80 ns |
0.246 ns |
0.218 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
188.59 ns |
1.285 ns |
1.202 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,446.59 ns |
21.839 ns |
19.360 ns |
0.0300 |
656 B |
core-ubuntu-24.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
575.6 ns |
6.67 ns |
6.24 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,066.5 ns |
32.71 ns |
30.59 ns |
10.54 |
0.12 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,189.7 ns |
6.55 ns |
6.13 ns |
2.07 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,198.6 ns |
6.80 ns |
6.36 ns |
2.08 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,267.8 ns |
27.97 ns |
24.79 ns |
14.37 |
0.16 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
547.2 ns |
5.83 ns |
5.46 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
448,571.9 ns |
3,385.69 ns |
3,001.33 ns |
819.83 |
9.52 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,868.5 ns |
5.43 ns |
5.08 ns |
3.41 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,871.1 ns |
8.42 ns |
7.03 ns |
3.42 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
653,911.0 ns |
2,484.62 ns |
1,939.83 ns |
1,195.11 |
12.02 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
589.4 ns |
4.84 ns |
4.29 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,017,708.6 ns |
761,403.89 ns |
712,217.67 ns |
96,740.65 |
1,355.37 |
1111.1111 |
1000.0000 |
333.3333 |
16001932 B |
51,288.24 |
| InvokeIntArrayFixed |
100000 |
65,373.3 ns |
332.53 ns |
311.04 ns |
110.92 |
0.94 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
65,422.9 ns |
225.32 ns |
210.77 ns |
111.00 |
0.86 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
83,157,539.5 ns |
1,629,528.41 ns |
1,673,405.71 ns |
141,091.51 |
2,934.85 |
2142.8571 |
2000.0000 |
1000.0000 |
27895105 B |
89,407.39 |
core-ubuntu-24.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.117 μs |
0.0044 μs |
0.0039 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.164 μs |
0.0037 μs |
0.0031 μs |
1.04 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.130 μs |
0.0059 μs |
0.0056 μs |
1.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
91.65 ns |
0.958 ns |
0.896 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
97.79 ns |
1.207 ns |
1.129 ns |
1.07 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
80.71 ns |
0.552 ns |
0.516 ns |
0.88 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
610.61 ns |
2.441 ns |
2.038 ns |
6.66 |
0.07 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
86.27 ns |
0.756 ns |
0.707 ns |
0.94 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
88.29 ns |
1.028 ns |
0.961 ns |
0.96 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
78.22 ns |
0.626 ns |
0.585 ns |
0.85 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
609.42 ns |
2.745 ns |
2.434 ns |
6.65 |
0.07 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
86.43 ns |
0.597 ns |
0.558 ns |
0.94 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
299.3 ns |
3.45 ns |
3.06 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
262.2 ns |
3.34 ns |
3.12 ns |
0.88 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
554.8 ns |
7.45 ns |
6.97 ns |
1.85 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
304.3 ns |
2.53 ns |
2.11 ns |
1.02 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
546.5 ns |
10.27 ns |
9.61 ns |
1.83 |
0.04 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.385 μs |
0.0063 μs |
0.0059 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,048.3 ns |
10.50 ns |
9.82 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,050.7 ns |
19.92 ns |
19.56 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,312.9 ns |
8.80 ns |
8.23 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,385.1 ns |
24.44 ns |
22.86 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
423.8 ns |
5.29 ns |
4.95 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
417.0 ns |
3.97 ns |
3.72 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
668.6 ns |
4.40 ns |
3.90 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,867.3 ns |
22.44 ns |
18.74 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
525.28 ns |
6.728 ns |
6.294 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
519.90 ns |
6.407 ns |
5.679 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
721.27 ns |
7.741 ns |
7.241 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,872.68 ns |
19.377 ns |
17.177 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
27.72 ns |
0.239 ns |
0.223 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
27.90 ns |
0.299 ns |
0.280 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
191.44 ns |
1.917 ns |
1.793 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,326.15 ns |
22.962 ns |
19.174 ns |
0.0300 |
656 B |
core-ubuntu-24.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
405.0 ns |
2.01 ns |
1.78 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
4,199.6 ns |
28.78 ns |
26.92 ns |
10.37 |
0.08 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
885.8 ns |
9.33 ns |
8.73 ns |
2.19 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
893.7 ns |
3.31 ns |
2.93 ns |
2.21 |
0.01 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
6,020.5 ns |
18.30 ns |
17.12 ns |
14.87 |
0.08 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
384.0 ns |
2.75 ns |
2.44 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
315,153.4 ns |
2,279.00 ns |
2,131.78 ns |
820.66 |
7.36 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,487.6 ns |
5.91 ns |
5.24 ns |
3.87 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,471.2 ns |
8.21 ns |
7.28 ns |
3.83 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
467,732.5 ns |
1,534.52 ns |
1,435.40 ns |
1,217.97 |
8.29 |
15.6250 |
7.3242 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
395.7 ns |
2.09 ns |
1.85 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
39,902,224.8 ns |
323,576.63 ns |
302,673.78 ns |
100,832.42 |
868.29 |
1076.9231 |
923.0769 |
307.6923 |
16001881 B |
51,288.08 |
| InvokeIntArrayFixed |
100000 |
50,582.8 ns |
70.08 ns |
65.55 ns |
127.82 |
0.60 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
50,693.3 ns |
59.81 ns |
53.02 ns |
128.10 |
0.59 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
60,246,579.1 ns |
1,164,534.82 ns |
1,594,028.54 ns |
152,242.34 |
4,013.95 |
2125.0000 |
2000.0000 |
1000.0000 |
27896932 B |
89,413.24 |
core-ubuntu-24.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
799.4 ns |
4.04 ns |
3.77 ns |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
792.4 ns |
2.13 ns |
1.99 ns |
0.99 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
848.9 ns |
2.82 ns |
2.50 ns |
1.06 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
61.73 ns |
0.516 ns |
0.482 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
67.35 ns |
0.519 ns |
0.486 ns |
1.09 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
63.88 ns |
0.365 ns |
0.323 ns |
1.03 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
404.18 ns |
1.897 ns |
1.682 ns |
6.55 |
0.06 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
66.42 ns |
0.661 ns |
0.586 ns |
1.08 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
74.96 ns |
0.607 ns |
0.567 ns |
1.21 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
67.57 ns |
0.465 ns |
0.435 ns |
1.09 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
413.42 ns |
1.624 ns |
1.520 ns |
6.70 |
0.06 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
64.14 ns |
0.411 ns |
0.385 ns |
1.04 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
192.4 ns |
0.51 ns |
0.43 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
190.7 ns |
1.38 ns |
1.22 ns |
0.99 |
- |
- |
NA |
| InvokeStaticWithFeedback |
361.9 ns |
1.97 ns |
1.75 ns |
1.88 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
192.0 ns |
1.07 ns |
0.95 ns |
1.00 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
394.8 ns |
1.27 ns |
1.12 ns |
2.05 |
0.0186 |
312 B |
NA |
core-ubuntu-24.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.019 μs |
0.0042 μs |
0.0038 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
752.7 ns |
5.96 ns |
5.57 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
760.8 ns |
2.88 ns |
2.69 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
985.7 ns |
1.23 ns |
1.02 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,280.1 ns |
9.69 ns |
8.59 ns |
0.0420 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
285.9 ns |
1.52 ns |
1.42 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
285.3 ns |
2.33 ns |
2.18 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
531.0 ns |
2.31 ns |
1.93 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,729.9 ns |
5.11 ns |
4.53 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
367.29 ns |
2.508 ns |
2.223 ns |
0.0046 |
80 B |
| PredicateSustained |
False |
False |
True |
370.80 ns |
3.430 ns |
3.041 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
True |
False |
523.69 ns |
1.671 ns |
1.396 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
2,772.91 ns |
7.627 ns |
6.761 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
23.93 ns |
0.249 ns |
0.233 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
30.68 ns |
0.196 ns |
0.174 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
143.07 ns |
0.612 ns |
0.542 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,293.30 ns |
5.881 ns |
4.910 ns |
0.0367 |
656 B |
core-ubuntu-24.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
476.2 ns |
3.62 ns |
3.39 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,433.5 ns |
38.16 ns |
35.70 ns |
11.41 |
0.11 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,105.0 ns |
8.68 ns |
8.11 ns |
2.32 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,127.2 ns |
4.00 ns |
3.54 ns |
2.37 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
7,767.0 ns |
19.48 ns |
16.27 ns |
16.31 |
0.12 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
489.4 ns |
2.73 ns |
2.55 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
407,172.4 ns |
1,983.66 ns |
1,548.71 ns |
831.94 |
5.18 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,935.1 ns |
6.17 ns |
5.77 ns |
3.95 |
0.02 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,893.5 ns |
9.70 ns |
8.60 ns |
3.87 |
0.03 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
651,167.9 ns |
3,035.17 ns |
2,690.60 ns |
1,330.48 |
8.55 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
481.0 ns |
3.93 ns |
3.67 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
51,530,299.5 ns |
657,627.67 ns |
615,145.33 ns |
107,131.93 |
1,469.95 |
1100.0000 |
1000.0000 |
300.0000 |
16002126 B |
51,288.87 |
| InvokeIntArrayFixed |
100000 |
63,541.6 ns |
230.22 ns |
192.25 ns |
132.10 |
1.05 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
63,585.3 ns |
260.67 ns |
243.83 ns |
132.19 |
1.09 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,527,355.9 ns |
1,580,641.98 ns |
1,623,202.94 ns |
169,496.07 |
3,511.50 |
2142.8571 |
2000.0000 |
1000.0000 |
27897456 B |
89,414.92 |
core-ubuntu-24.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.048 μs |
0.0050 μs |
0.0044 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.022 μs |
0.0042 μs |
0.0039 μs |
0.98 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.043 μs |
0.0062 μs |
0.0058 μs |
1.00 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
82.08 ns |
0.363 ns |
0.340 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
90.06 ns |
0.720 ns |
0.638 ns |
1.10 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
78.83 ns |
0.583 ns |
0.546 ns |
0.96 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
512.27 ns |
2.209 ns |
2.066 ns |
6.24 |
0.03 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
83.76 ns |
0.758 ns |
0.709 ns |
1.02 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
96.25 ns |
0.410 ns |
0.364 ns |
1.17 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
83.99 ns |
0.488 ns |
0.433 ns |
1.02 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
511.28 ns |
2.687 ns |
2.382 ns |
6.23 |
0.04 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
85.06 ns |
0.451 ns |
0.400 ns |
1.04 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
246.0 ns |
1.63 ns |
1.53 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
252.0 ns |
2.72 ns |
2.54 ns |
1.02 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
516.2 ns |
3.16 ns |
2.96 ns |
2.10 |
0.02 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
242.9 ns |
1.87 ns |
1.66 ns |
0.99 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
484.1 ns |
2.12 ns |
1.98 ns |
1.97 |
0.01 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.272 μs |
0.0059 μs |
0.0055 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
954.4 ns |
6.70 ns |
5.94 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
958.5 ns |
7.01 ns |
6.56 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,198.1 ns |
3.68 ns |
3.44 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,149.9 ns |
26.20 ns |
24.50 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
379.8 ns |
3.21 ns |
3.01 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
389.0 ns |
3.34 ns |
3.13 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
623.4 ns |
2.27 ns |
2.01 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,516.5 ns |
13.13 ns |
11.64 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
464.41 ns |
4.555 ns |
4.038 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
False |
True |
479.66 ns |
3.868 ns |
3.429 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
True |
False |
663.78 ns |
4.803 ns |
4.493 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,641.03 ns |
24.369 ns |
22.794 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
30.74 ns |
0.199 ns |
0.186 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
31.10 ns |
0.199 ns |
0.186 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
230.00 ns |
1.439 ns |
1.346 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,966.33 ns |
12.569 ns |
11.757 ns |
0.0350 |
656 B |
core-ubuntu-24.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
456.0 ns |
2.98 ns |
2.79 ns |
1.00 |
0.01 |
0.0033 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,733.3 ns |
43.38 ns |
38.46 ns |
12.57 |
0.11 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
902.2 ns |
4.78 ns |
4.48 ns |
1.98 |
0.02 |
0.0048 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
907.9 ns |
7.28 ns |
6.81 ns |
1.99 |
0.02 |
0.0048 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,980.6 ns |
123.62 ns |
103.23 ns |
19.70 |
0.25 |
0.0305 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
440.1 ns |
3.94 ns |
3.49 ns |
1.00 |
0.01 |
0.0033 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
454,714.8 ns |
1,985.81 ns |
1,658.24 ns |
1,033.26 |
8.77 |
1.4648 |
0.4883 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,447.9 ns |
8.92 ns |
8.34 ns |
3.29 |
0.03 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,462.2 ns |
20.65 ns |
19.32 ns |
3.32 |
0.05 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
780,487.0 ns |
15,285.02 ns |
21,921.32 ns |
1,773.53 |
50.85 |
2.9297 |
- |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
457.2 ns |
4.54 ns |
4.02 ns |
1.00 |
0.01 |
0.0033 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
48,965,427.9 ns |
497,766.97 ns |
441,257.45 ns |
107,115.75 |
1,301.26 |
272.7273 |
181.8182 |
181.8182 |
16001257 B |
51,286.08 |
| InvokeIntArrayFixed |
100000 |
50,626.4 ns |
288.50 ns |
269.86 ns |
110.75 |
1.10 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
50,456.3 ns |
322.93 ns |
302.07 ns |
110.38 |
1.13 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
86,285,476.9 ns |
1,555,834.00 ns |
1,455,328.09 ns |
188,756.32 |
3,473.09 |
1166.6667 |
1000.0000 |
1000.0000 |
27898320 B |
89,417.69 |
core-ubuntu-24.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
921.3 ns |
6.75 ns |
6.31 ns |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
919.7 ns |
5.69 ns |
5.32 ns |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
919.3 ns |
7.48 ns |
6.99 ns |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
72.30 ns |
0.213 ns |
0.178 ns |
1.00 |
0.00 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
81.12 ns |
0.558 ns |
0.522 ns |
1.12 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
74.71 ns |
0.280 ns |
0.262 ns |
1.03 |
0.00 |
- |
- |
0.00 |
| SetInstanceStringField |
551.87 ns |
3.248 ns |
3.039 ns |
7.63 |
0.04 |
0.0029 |
256 B |
10.67 |
| GetStaticIntField |
79.27 ns |
0.388 ns |
0.344 ns |
1.10 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
78.44 ns |
0.389 ns |
0.364 ns |
1.08 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
78.02 ns |
0.337 ns |
0.298 ns |
1.08 |
0.00 |
- |
- |
0.00 |
| SetStaticStringField |
544.00 ns |
4.587 ns |
4.291 ns |
7.52 |
0.06 |
0.0029 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
80.65 ns |
0.442 ns |
0.413 ns |
1.12 |
0.01 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
229.1 ns |
1.88 ns |
1.75 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
227.1 ns |
2.55 ns |
2.38 ns |
0.99 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
435.3 ns |
2.93 ns |
2.60 ns |
1.90 |
0.02 |
0.0033 |
312 B |
NA |
| InvokeInstanceEmpty |
227.4 ns |
1.45 ns |
1.35 ns |
0.99 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
442.1 ns |
2.49 ns |
2.21 ns |
1.93 |
0.02 |
0.0033 |
312 B |
NA |
core-ubuntu-24.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.081 μs |
0.0113 μs |
0.0106 μs |
1.00 |
0.0076 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
850.0 ns |
7.12 ns |
6.66 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
870.2 ns |
7.10 ns |
6.64 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,042.9 ns |
8.65 ns |
8.09 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,853.3 ns |
62.64 ns |
64.33 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
333.1 ns |
4.51 ns |
3.99 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
345.3 ns |
3.39 ns |
3.17 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
546.8 ns |
5.67 ns |
5.30 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,423.5 ns |
62.48 ns |
58.45 ns |
0.0076 |
680 B |
core-ubuntu-24.04_net10.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
496.62 ns |
3.523 ns |
3.123 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
511.16 ns |
5.809 ns |
5.434 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
690.73 ns |
4.388 ns |
4.104 ns |
0.0013 |
176 B |
| PredicateSustained |
False |
True |
True |
3,513.57 ns |
50.016 ns |
46.785 ns |
- |
736 B |
| PredicateSustained |
True |
False |
False |
49.66 ns |
0.235 ns |
0.220 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
49.30 ns |
0.256 ns |
0.227 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
218.84 ns |
1.418 ns |
1.326 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
3,058.59 ns |
49.793 ns |
46.577 ns |
0.0050 |
656 B |
core-ubuntu-24.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
475.3 ns |
1.82 ns |
1.52 ns |
1.00 |
0.00 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,632.8 ns |
46.81 ns |
41.50 ns |
11.85 |
0.09 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,144.9 ns |
9.06 ns |
8.48 ns |
2.41 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,124.4 ns |
8.45 ns |
7.90 ns |
2.37 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
7,510.9 ns |
59.56 ns |
52.80 ns |
15.80 |
0.12 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
529.3 ns |
3.92 ns |
3.28 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
394,263.2 ns |
2,052.96 ns |
1,819.89 ns |
744.93 |
5.55 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,631.7 ns |
5.40 ns |
5.05 ns |
3.08 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,610.4 ns |
8.95 ns |
7.47 ns |
3.04 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
609,500.9 ns |
4,953.14 ns |
4,390.83 ns |
1,151.60 |
10.55 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
492.0 ns |
4.03 ns |
3.77 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
50,917,363.2 ns |
408,979.16 ns |
382,559.36 ns |
103,498.19 |
1,073.15 |
1100.0000 |
1000.0000 |
300.0000 |
16001814 B |
51,287.87 |
| InvokeIntArrayFixed |
100000 |
35,860.1 ns |
153.91 ns |
143.97 ns |
72.89 |
0.61 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
35,788.2 ns |
135.99 ns |
127.20 ns |
72.75 |
0.59 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
78,172,689.3 ns |
1,291,334.50 ns |
1,144,734.40 ns |
158,899.27 |
2,535.86 |
2142.8571 |
2000.0000 |
1000.0000 |
27897311 B |
89,414.46 |
core-ubuntu-24.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.052 μs |
0.0135 μs |
0.0120 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.019 μs |
0.0026 μs |
0.0020 μs |
0.97 |
0.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.085 μs |
0.0107 μs |
0.0100 μs |
1.03 |
0.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
80.64 ns |
0.497 ns |
0.441 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
86.21 ns |
0.553 ns |
0.518 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
81.23 ns |
0.536 ns |
0.502 ns |
1.01 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
528.28 ns |
2.402 ns |
2.130 ns |
6.55 |
0.04 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
90.03 ns |
0.644 ns |
0.603 ns |
1.12 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
82.87 ns |
0.728 ns |
0.681 ns |
1.03 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
78.64 ns |
0.408 ns |
0.362 ns |
0.98 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
502.89 ns |
3.178 ns |
2.973 ns |
6.24 |
0.05 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
88.57 ns |
0.599 ns |
0.560 ns |
1.10 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
249.3 ns |
3.23 ns |
3.02 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
251.9 ns |
2.00 ns |
1.87 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
469.2 ns |
3.49 ns |
3.10 ns |
1.88 |
0.03 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
250.3 ns |
2.29 ns |
2.03 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
483.4 ns |
4.22 ns |
3.94 ns |
1.94 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.290 μs |
0.0132 μs |
0.0123 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
958.3 ns |
8.79 ns |
8.22 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
957.2 ns |
7.63 ns |
7.14 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,192.9 ns |
6.27 ns |
4.89 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,041.1 ns |
25.26 ns |
22.39 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
377.1 ns |
2.87 ns |
2.69 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
396.8 ns |
3.13 ns |
2.77 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
596.6 ns |
2.72 ns |
2.55 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,444.6 ns |
10.06 ns |
9.41 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
470.90 ns |
3.465 ns |
3.241 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
False |
True |
457.88 ns |
5.281 ns |
4.681 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
True |
False |
699.52 ns |
3.565 ns |
3.334 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,529.87 ns |
17.451 ns |
14.572 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
30.72 ns |
0.215 ns |
0.190 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
31.04 ns |
0.209 ns |
0.196 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
183.68 ns |
1.212 ns |
1.134 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,912.71 ns |
11.541 ns |
9.637 ns |
0.0350 |
656 B |
core-ubuntu-24.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
552.6 ns |
6.61 ns |
6.19 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,006.9 ns |
40.55 ns |
33.86 ns |
10.87 |
0.13 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,218.9 ns |
5.69 ns |
5.05 ns |
2.21 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,159.9 ns |
9.43 ns |
8.83 ns |
2.10 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,225.7 ns |
60.79 ns |
56.87 ns |
14.89 |
0.19 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
560.0 ns |
4.54 ns |
3.79 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
419,580.8 ns |
2,369.69 ns |
2,216.61 ns |
749.32 |
6.23 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,609.1 ns |
9.53 ns |
8.91 ns |
2.87 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,602.2 ns |
10.02 ns |
8.89 ns |
2.86 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
656,125.8 ns |
5,080.49 ns |
4,752.29 ns |
1,171.76 |
11.25 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
555.9 ns |
5.49 ns |
4.87 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
52,783,387.8 ns |
465,850.05 ns |
389,005.89 ns |
94,951.71 |
1,055.23 |
1100.0000 |
1000.0000 |
300.0000 |
16001408 B |
51,286.56 |
| InvokeIntArrayFixed |
100000 |
41,610.3 ns |
701.92 ns |
656.57 ns |
74.85 |
1.31 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
41,658.8 ns |
599.14 ns |
560.43 ns |
74.94 |
1.17 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
80,785,717.3 ns |
1,350,385.99 ns |
1,263,151.89 ns |
145,324.92 |
2,526.83 |
2142.8571 |
2000.0000 |
1000.0000 |
27896531 B |
89,411.96 |
core-ubuntu-24.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.090 μs |
0.0043 μs |
0.0038 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.087 μs |
0.0029 μs |
0.0024 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.114 μs |
0.0070 μs |
0.0065 μs |
1.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
74.57 ns |
0.396 ns |
0.351 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
91.37 ns |
0.970 ns |
0.907 ns |
1.23 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
75.27 ns |
1.237 ns |
1.157 ns |
1.01 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
563.52 ns |
4.562 ns |
4.044 ns |
7.56 |
0.06 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
79.78 ns |
0.840 ns |
0.786 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
85.41 ns |
1.190 ns |
1.113 ns |
1.15 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
76.15 ns |
1.235 ns |
1.156 ns |
1.02 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
551.51 ns |
2.890 ns |
2.413 ns |
7.40 |
0.05 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
90.90 ns |
0.876 ns |
0.819 ns |
1.22 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
259.8 ns |
3.69 ns |
3.45 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
257.0 ns |
3.59 ns |
3.36 ns |
0.99 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
506.5 ns |
4.58 ns |
4.06 ns |
1.95 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
265.3 ns |
3.26 ns |
3.05 ns |
1.02 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
563.7 ns |
4.29 ns |
4.02 ns |
2.17 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.353 μs |
0.0076 μs |
0.0067 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,031.9 ns |
8.31 ns |
7.78 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,022.4 ns |
14.75 ns |
13.80 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,275.5 ns |
6.42 ns |
5.69 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,345.0 ns |
30.27 ns |
28.31 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
413.9 ns |
4.58 ns |
4.29 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
420.1 ns |
5.14 ns |
4.81 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
662.4 ns |
4.43 ns |
4.14 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,719.1 ns |
10.93 ns |
9.69 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
489.57 ns |
6.098 ns |
5.704 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
484.20 ns |
6.617 ns |
5.865 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
True |
False |
797.50 ns |
2.194 ns |
1.832 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,751.91 ns |
23.603 ns |
19.709 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
29.32 ns |
0.345 ns |
0.323 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
30.23 ns |
0.290 ns |
0.271 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
191.27 ns |
1.293 ns |
1.146 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,184.39 ns |
20.404 ns |
19.086 ns |
0.0300 |
656 B |
core-ubuntu-24.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
552.8 ns |
8.46 ns |
7.92 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,491.4 ns |
23.74 ns |
22.21 ns |
11.74 |
0.17 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,217.9 ns |
8.30 ns |
7.35 ns |
2.20 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,218.7 ns |
7.82 ns |
7.32 ns |
2.20 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,522.1 ns |
57.52 ns |
53.80 ns |
15.42 |
0.23 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
573.7 ns |
6.12 ns |
5.72 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
475,396.4 ns |
3,258.42 ns |
2,720.93 ns |
828.66 |
9.19 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,889.5 ns |
6.22 ns |
5.20 ns |
3.29 |
0.03 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,937.4 ns |
7.14 ns |
5.96 ns |
3.38 |
0.03 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
635,349.8 ns |
3,511.06 ns |
2,931.89 ns |
1,107.47 |
11.74 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
570.0 ns |
4.35 ns |
3.85 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
55,672,538.9 ns |
606,644.98 ns |
567,456.09 ns |
97,674.76 |
1,156.14 |
1111.1111 |
1000.0000 |
333.3333 |
16001934 B |
51,288.25 |
| InvokeIntArrayFixed |
100000 |
65,989.9 ns |
479.54 ns |
448.56 ns |
115.78 |
1.07 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
66,413.7 ns |
467.24 ns |
437.05 ns |
116.52 |
1.06 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,398,582.2 ns |
1,599,458.14 ns |
1,496,134.13 ns |
142,809.85 |
2,707.77 |
2142.8571 |
2000.0000 |
1000.0000 |
27897002 B |
89,413.47 |
core-ubuntu-24.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.102 μs |
0.0141 μs |
0.0132 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.129 μs |
0.0086 μs |
0.0076 μs |
1.02 |
0.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.120 μs |
0.0031 μs |
0.0029 μs |
1.02 |
0.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
76.70 ns |
0.630 ns |
0.589 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
88.91 ns |
0.869 ns |
0.813 ns |
1.16 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
88.12 ns |
0.791 ns |
0.740 ns |
1.15 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
645.87 ns |
4.630 ns |
4.331 ns |
8.42 |
0.08 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
83.27 ns |
1.117 ns |
0.990 ns |
1.09 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
84.20 ns |
0.974 ns |
0.911 ns |
1.10 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
83.91 ns |
0.903 ns |
0.801 ns |
1.09 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
641.14 ns |
6.898 ns |
6.115 ns |
8.36 |
0.10 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
88.86 ns |
0.990 ns |
0.926 ns |
1.16 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
322.7 ns |
4.79 ns |
4.48 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
338.7 ns |
5.09 ns |
4.76 ns |
1.05 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
519.0 ns |
6.25 ns |
5.54 ns |
1.61 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
359.6 ns |
4.01 ns |
3.75 ns |
1.11 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
546.8 ns |
5.03 ns |
4.20 ns |
1.69 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.411 μs |
0.0113 μs |
0.0100 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,106.3 ns |
14.47 ns |
12.82 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,074.4 ns |
9.74 ns |
9.11 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,328.1 ns |
7.26 ns |
6.43 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,538.9 ns |
17.30 ns |
14.45 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
419.3 ns |
4.53 ns |
4.24 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
391.9 ns |
4.88 ns |
4.56 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
684.8 ns |
3.95 ns |
3.50 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,870.6 ns |
20.33 ns |
15.87 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
634.62 ns |
6.407 ns |
5.679 ns |
0.0038 |
80 B |
| PredicateSustained |
False |
False |
True |
559.64 ns |
5.343 ns |
4.998 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
769.25 ns |
6.835 ns |
6.394 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,994.32 ns |
25.036 ns |
20.906 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
29.46 ns |
0.386 ns |
0.361 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
28.65 ns |
0.283 ns |
0.265 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
196.80 ns |
1.158 ns |
1.026 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,309.75 ns |
34.504 ns |
30.587 ns |
0.0300 |
656 B |
core-ubuntu-24.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.72GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
600.8 ns |
4.26 ns |
3.99 ns |
1.00 |
0.01 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,013.2 ns |
38.69 ns |
34.29 ns |
11.67 |
0.09 |
0.0763 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,209.2 ns |
18.91 ns |
17.69 ns |
2.01 |
0.03 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,196.7 ns |
6.82 ns |
6.04 ns |
1.99 |
0.02 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,035.0 ns |
50.87 ns |
47.58 ns |
15.04 |
0.12 |
0.1373 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
590.9 ns |
3.81 ns |
3.38 ns |
1.00 |
0.01 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
528,350.9 ns |
4,098.16 ns |
3,632.91 ns |
894.18 |
7.72 |
5.8594 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,980.8 ns |
26.32 ns |
24.62 ns |
3.35 |
0.04 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,996.6 ns |
26.51 ns |
23.50 ns |
3.38 |
0.04 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
734,641.0 ns |
5,289.65 ns |
4,947.94 ns |
1,243.30 |
10.62 |
9.7656 |
2.9297 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
573.2 ns |
2.74 ns |
2.56 ns |
1.00 |
0.01 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
66,648,327.0 ns |
499,291.59 ns |
467,037.66 ns |
116,281.88 |
934.68 |
875.0000 |
750.0000 |
375.0000 |
16000697 B |
51,284.29 |
| InvokeIntArrayFixed |
100000 |
77,260.1 ns |
1,184.87 ns |
1,050.36 ns |
134.80 |
1.86 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
77,555.4 ns |
679.84 ns |
635.92 ns |
135.31 |
1.22 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
90,484,440.3 ns |
1,493,935.76 ns |
1,324,335.14 ns |
157,868.95 |
2,333.30 |
1666.6667 |
1500.0000 |
1000.0000 |
27897435 B |
89,414.86 |
core-ubuntu-24.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.72GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.169 μs |
0.0073 μs |
0.0068 μs |
1.00 |
0.0134 |
360 B |
1.00 |
| NewWithSignature |
1.161 μs |
0.0081 μs |
0.0076 μs |
0.99 |
0.0134 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.161 μs |
0.0064 μs |
0.0057 μs |
0.99 |
0.0134 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.72GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
77.16 ns |
0.481 ns |
0.450 ns |
1.00 |
0.01 |
0.0010 |
24 B |
1.00 |
| SetInstanceIntField |
85.88 ns |
0.436 ns |
0.408 ns |
1.11 |
0.01 |
0.0010 |
24 B |
1.00 |
| GetInstanceStringField |
72.70 ns |
0.270 ns |
0.253 ns |
0.94 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
657.68 ns |
3.560 ns |
3.330 ns |
8.52 |
0.06 |
0.0095 |
256 B |
10.67 |
| GetStaticIntField |
80.72 ns |
0.435 ns |
0.363 ns |
1.05 |
0.01 |
0.0010 |
24 B |
1.00 |
| SetStaticIntField |
85.82 ns |
0.493 ns |
0.461 ns |
1.11 |
0.01 |
0.0010 |
24 B |
1.00 |
| GetStaticStringField |
71.40 ns |
0.246 ns |
0.230 ns |
0.93 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
642.72 ns |
3.907 ns |
3.464 ns |
8.33 |
0.06 |
0.0095 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
83.20 ns |
0.556 ns |
0.520 ns |
1.08 |
0.01 |
0.0010 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.72GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
259.2 ns |
2.22 ns |
2.08 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
267.3 ns |
1.87 ns |
1.75 ns |
1.03 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
566.4 ns |
2.27 ns |
2.01 ns |
2.19 |
0.02 |
0.0124 |
312 B |
NA |
| InvokeInstanceEmpty |
267.1 ns |
0.84 ns |
0.75 ns |
1.03 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
583.3 ns |
3.47 ns |
3.07 ns |
2.25 |
0.02 |
0.0124 |
312 B |
NA |
core-ubuntu-24.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.72GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.406 μs |
0.0126 μs |
0.0118 μs |
1.00 |
0.0267 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.72GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,014.4 ns |
5.29 ns |
4.69 ns |
0.0038 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,022.1 ns |
6.75 ns |
6.31 ns |
0.0038 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,330.2 ns |
8.74 ns |
7.74 ns |
0.0076 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,614.7 ns |
35.16 ns |
32.89 ns |
0.0229 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
446.3 ns |
1.21 ns |
1.07 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
465.2 ns |
5.25 ns |
4.92 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
742.2 ns |
5.24 ns |
4.90 ns |
0.0048 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,010.5 ns |
31.04 ns |
29.04 ns |
0.0229 |
680 B |
core-ubuntu-24.04_net10.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz (Max: 2.72GHz), 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
533.06 ns |
4.625 ns |
4.326 ns |
0.0030 |
80 B |
| PredicateSustained |
False |
False |
True |
529.18 ns |
4.757 ns |
4.450 ns |
0.0030 |
80 B |
| PredicateSustained |
False |
True |
False |
753.20 ns |
5.729 ns |
5.359 ns |
0.0057 |
176 B |
| PredicateSustained |
False |
True |
True |
3,969.26 ns |
41.759 ns |
39.062 ns |
0.0200 |
736 B |
| PredicateSustained |
True |
False |
False |
48.00 ns |
0.959 ns |
1.655 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
53.10 ns |
1.052 ns |
1.729 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
235.03 ns |
1.327 ns |
1.176 ns |
0.0038 |
96 B |
| PredicateSustained |
True |
True |
True |
3,450.76 ns |
26.658 ns |
24.936 ns |
0.0200 |
656 B |
core-ubuntu-24.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
533.6 ns |
6.54 ns |
6.12 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,813.9 ns |
51.85 ns |
45.96 ns |
10.90 |
0.15 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,148.1 ns |
6.55 ns |
5.47 ns |
2.15 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,202.0 ns |
7.07 ns |
5.52 ns |
2.25 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
7,753.6 ns |
103.90 ns |
97.19 ns |
14.53 |
0.24 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
528.2 ns |
6.79 ns |
6.02 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
446,728.8 ns |
3,496.75 ns |
3,270.86 ns |
845.79 |
11.03 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,812.7 ns |
18.53 ns |
16.43 ns |
3.43 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,794.7 ns |
8.47 ns |
7.92 ns |
3.40 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
630,244.9 ns |
7,644.93 ns |
7,151.07 ns |
1,193.25 |
18.51 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
551.4 ns |
6.74 ns |
6.30 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
55,078,842.1 ns |
723,435.38 ns |
676,701.90 ns |
99,904.40 |
1,623.48 |
1111.1111 |
1000.0000 |
333.3333 |
16001628 B |
51,287.27 |
| InvokeIntArrayFixed |
100000 |
65,529.1 ns |
303.78 ns |
269.29 ns |
118.86 |
1.40 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
65,460.8 ns |
340.65 ns |
318.64 ns |
118.74 |
1.43 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
79,047,484.0 ns |
1,142,317.08 ns |
1,068,524.11 ns |
143,379.76 |
2,457.89 |
2142.8571 |
2000.0000 |
1000.0000 |
27897431 B |
89,414.84 |
core-ubuntu-24.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.068 μs |
0.0042 μs |
0.0035 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.071 μs |
0.0086 μs |
0.0077 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.071 μs |
0.0062 μs |
0.0055 μs |
1.00 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
74.88 ns |
1.066 ns |
0.945 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
80.74 ns |
1.032 ns |
0.966 ns |
1.08 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
77.39 ns |
1.171 ns |
1.096 ns |
1.03 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
579.93 ns |
8.755 ns |
7.761 ns |
7.75 |
0.14 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
76.12 ns |
0.830 ns |
0.777 ns |
1.02 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
85.97 ns |
0.698 ns |
0.653 ns |
1.15 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
73.87 ns |
0.342 ns |
0.303 ns |
0.99 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
583.74 ns |
2.219 ns |
1.967 ns |
7.80 |
0.10 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
83.43 ns |
0.622 ns |
0.582 ns |
1.11 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
261.7 ns |
3.59 ns |
3.36 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
258.7 ns |
3.42 ns |
3.20 ns |
0.99 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
511.3 ns |
5.08 ns |
4.51 ns |
1.95 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
273.6 ns |
2.90 ns |
2.71 ns |
1.05 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
536.5 ns |
6.87 ns |
6.42 ns |
2.05 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.317 μs |
0.0133 μs |
0.0118 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,003.6 ns |
9.31 ns |
8.26 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
981.2 ns |
11.57 ns |
10.25 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,251.1 ns |
3.74 ns |
3.32 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,202.3 ns |
27.11 ns |
25.36 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
390.0 ns |
4.84 ns |
4.53 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
381.1 ns |
5.85 ns |
5.47 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
632.3 ns |
2.55 ns |
2.39 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,574.5 ns |
9.20 ns |
8.16 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
481.95 ns |
5.872 ns |
5.493 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
False |
True |
504.88 ns |
3.965 ns |
3.709 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
719.39 ns |
6.748 ns |
6.312 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,694.09 ns |
24.924 ns |
20.813 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
29.68 ns |
0.286 ns |
0.267 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
27.79 ns |
0.243 ns |
0.227 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
190.01 ns |
1.351 ns |
1.198 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,013.93 ns |
12.182 ns |
10.799 ns |
0.0350 |
656 B |
core-ubuntu-24.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
571.1 ns |
4.71 ns |
4.41 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,224.3 ns |
33.80 ns |
29.96 ns |
10.90 |
0.10 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,199.4 ns |
4.89 ns |
4.08 ns |
2.10 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,186.6 ns |
7.05 ns |
6.25 ns |
2.08 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,346.7 ns |
43.66 ns |
40.84 ns |
14.61 |
0.13 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
552.0 ns |
7.09 ns |
6.63 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
471,363.1 ns |
3,005.58 ns |
2,811.42 ns |
854.01 |
11.25 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,856.2 ns |
8.83 ns |
7.82 ns |
3.36 |
0.04 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,865.8 ns |
15.32 ns |
14.33 ns |
3.38 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
641,134.8 ns |
6,003.25 ns |
5,321.72 ns |
1,161.60 |
16.61 |
15.6250 |
5.8594 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
538.4 ns |
7.21 ns |
6.39 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
55,067,007.3 ns |
675,232.97 ns |
631,613.34 ns |
102,296.24 |
1,625.88 |
1100.0000 |
1000.0000 |
300.0000 |
16001461 B |
51,286.73 |
| InvokeIntArrayFixed |
100000 |
69,408.1 ns |
475.19 ns |
444.49 ns |
128.94 |
1.67 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
69,434.7 ns |
605.72 ns |
566.59 ns |
128.99 |
1.79 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,686,686.6 ns |
1,620,727.93 ns |
1,436,733.10 ns |
151,746.78 |
3,102.58 |
2000.0000 |
1833.3333 |
1000.0000 |
27897324 B |
89,414.50 |
core-ubuntu-24.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.095 μs |
0.0100 μs |
0.0093 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.095 μs |
0.0062 μs |
0.0058 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.090 μs |
0.0075 μs |
0.0070 μs |
1.00 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
72.62 ns |
0.603 ns |
0.564 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
84.15 ns |
0.761 ns |
0.675 ns |
1.16 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
74.39 ns |
1.328 ns |
1.243 ns |
1.02 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
567.80 ns |
3.611 ns |
3.378 ns |
7.82 |
0.07 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
79.96 ns |
0.756 ns |
0.707 ns |
1.10 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
79.24 ns |
0.668 ns |
0.625 ns |
1.09 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
69.36 ns |
0.893 ns |
0.836 ns |
0.96 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
580.62 ns |
5.563 ns |
4.932 ns |
8.00 |
0.09 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
90.18 ns |
0.376 ns |
0.314 ns |
1.24 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
271.1 ns |
2.97 ns |
2.78 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
265.1 ns |
2.42 ns |
2.26 ns |
0.98 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
561.5 ns |
7.12 ns |
6.66 ns |
2.07 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
272.4 ns |
3.09 ns |
2.74 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
562.9 ns |
7.38 ns |
6.91 ns |
2.08 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.417 μs |
0.0126 μs |
0.0118 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,018.9 ns |
8.86 ns |
7.85 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,016.3 ns |
8.06 ns |
7.54 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,247.4 ns |
6.54 ns |
6.12 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,383.6 ns |
26.16 ns |
23.19 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
430.5 ns |
2.58 ns |
2.42 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
453.2 ns |
4.79 ns |
4.48 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
675.2 ns |
2.37 ns |
2.10 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,718.2 ns |
9.83 ns |
8.21 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
506.48 ns |
5.639 ns |
5.275 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
505.99 ns |
5.482 ns |
5.128 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
701.48 ns |
6.332 ns |
5.923 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,790.13 ns |
20.469 ns |
17.093 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
28.99 ns |
0.292 ns |
0.273 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
29.33 ns |
0.228 ns |
0.213 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
191.36 ns |
1.055 ns |
0.881 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,177.88 ns |
23.383 ns |
19.526 ns |
0.0350 |
656 B |
core-ubuntu-24.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
567.0 ns |
6.38 ns |
5.65 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,976.0 ns |
40.77 ns |
38.14 ns |
10.54 |
0.12 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,172.7 ns |
7.89 ns |
6.99 ns |
2.07 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,189.5 ns |
6.72 ns |
6.28 ns |
2.10 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,204.2 ns |
106.36 ns |
99.49 ns |
14.47 |
0.22 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
525.2 ns |
4.76 ns |
4.22 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
471,711.7 ns |
2,828.89 ns |
2,646.14 ns |
898.17 |
8.52 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,826.6 ns |
6.82 ns |
6.04 ns |
3.48 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,845.1 ns |
8.26 ns |
7.32 ns |
3.51 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
648,272.6 ns |
4,145.05 ns |
3,674.48 ns |
1,234.36 |
11.75 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
539.8 ns |
4.24 ns |
3.54 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,117,741.5 ns |
390,675.90 ns |
365,438.48 ns |
107,676.69 |
945.08 |
1111.1111 |
1000.0000 |
333.3333 |
16001846 B |
51,287.97 |
| InvokeIntArrayFixed |
100000 |
65,781.9 ns |
610.67 ns |
509.94 ns |
121.88 |
1.19 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
66,297.0 ns |
304.95 ns |
285.25 ns |
122.83 |
0.93 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,098,188.0 ns |
1,220,649.00 ns |
1,141,795.83 ns |
152,106.07 |
2,263.31 |
2142.8571 |
2000.0000 |
1000.0000 |
27897538 B |
89,415.19 |
core-ubuntu-24.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.128 μs |
0.0074 μs |
0.0062 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.116 μs |
0.0074 μs |
0.0069 μs |
0.99 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.104 μs |
0.0088 μs |
0.0078 μs |
0.98 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
82.92 ns |
0.742 ns |
0.694 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
85.12 ns |
0.895 ns |
0.838 ns |
1.03 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
78.72 ns |
0.811 ns |
0.758 ns |
0.95 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
602.52 ns |
4.791 ns |
4.247 ns |
7.27 |
0.08 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
81.58 ns |
0.658 ns |
0.583 ns |
0.98 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
84.77 ns |
0.750 ns |
0.665 ns |
1.02 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
75.90 ns |
0.650 ns |
0.576 ns |
0.92 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
592.34 ns |
3.988 ns |
3.730 ns |
7.14 |
0.07 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
84.83 ns |
0.687 ns |
0.574 ns |
1.02 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
268.9 ns |
1.91 ns |
1.69 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
254.6 ns |
1.89 ns |
1.77 ns |
0.95 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
534.8 ns |
8.58 ns |
8.03 ns |
1.99 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
278.5 ns |
2.06 ns |
1.83 ns |
1.04 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
536.1 ns |
7.43 ns |
6.95 ns |
1.99 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.412 μs |
0.0068 μs |
0.0064 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,020.2 ns |
14.59 ns |
12.94 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,025.6 ns |
14.91 ns |
13.95 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,257.2 ns |
4.67 ns |
4.14 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,271.0 ns |
11.35 ns |
10.06 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
408.2 ns |
2.47 ns |
2.19 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
399.3 ns |
6.79 ns |
6.36 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
656.3 ns |
3.15 ns |
2.63 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,652.0 ns |
11.11 ns |
9.28 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
580.68 ns |
5.524 ns |
5.167 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
False |
True |
610.26 ns |
5.087 ns |
4.509 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
True |
False |
828.56 ns |
3.963 ns |
3.707 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,837.53 ns |
26.508 ns |
22.136 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
27.57 ns |
0.216 ns |
0.192 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
27.57 ns |
0.263 ns |
0.246 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
187.96 ns |
2.445 ns |
2.168 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,113.22 ns |
18.143 ns |
16.971 ns |
0.0350 |
656 B |
core-ubuntu-24.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
372.7 ns |
5.61 ns |
5.24 ns |
1.00 |
0.02 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
4,262.9 ns |
52.31 ns |
48.93 ns |
11.44 |
0.20 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
872.5 ns |
6.86 ns |
6.41 ns |
2.34 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
889.8 ns |
3.85 ns |
3.60 ns |
2.39 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
5,986.2 ns |
113.74 ns |
106.40 ns |
16.06 |
0.35 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
380.8 ns |
3.93 ns |
3.68 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
305,191.5 ns |
2,742.49 ns |
2,565.33 ns |
801.44 |
9.96 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,470.2 ns |
6.78 ns |
6.01 ns |
3.86 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,488.6 ns |
6.88 ns |
6.43 ns |
3.91 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
466,215.2 ns |
4,292.46 ns |
3,805.15 ns |
1,224.30 |
15.01 |
15.6250 |
7.3242 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
377.8 ns |
4.80 ns |
4.25 ns |
1.00 |
0.02 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
39,739,478.0 ns |
516,451.55 ns |
483,089.10 ns |
105,205.06 |
1,687.58 |
1142.8571 |
1000.0000 |
357.1429 |
16001866 B |
51,288.03 |
| InvokeIntArrayFixed |
100000 |
51,076.2 ns |
205.55 ns |
182.21 ns |
135.22 |
1.55 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
50,992.0 ns |
167.04 ns |
139.49 ns |
134.99 |
1.51 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
60,153,444.7 ns |
1,190,810.72 ns |
1,462,422.64 ns |
159,248.36 |
4,166.76 |
2125.0000 |
2000.0000 |
1000.0000 |
27897206 B |
89,414.12 |
core-ubuntu-24.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
836.0 ns |
9.44 ns |
8.83 ns |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
800.6 ns |
9.43 ns |
8.82 ns |
0.96 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
793.9 ns |
3.89 ns |
3.44 ns |
0.95 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
63.80 ns |
0.417 ns |
0.369 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
65.67 ns |
0.299 ns |
0.250 ns |
1.03 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
65.54 ns |
0.683 ns |
0.639 ns |
1.03 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
394.83 ns |
2.107 ns |
1.759 ns |
6.19 |
0.04 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
65.31 ns |
0.553 ns |
0.517 ns |
1.02 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
64.49 ns |
0.471 ns |
0.418 ns |
1.01 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
59.34 ns |
0.437 ns |
0.409 ns |
0.93 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
393.79 ns |
4.643 ns |
4.343 ns |
6.17 |
0.07 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
74.55 ns |
0.548 ns |
0.513 ns |
1.17 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
190.8 ns |
1.43 ns |
1.33 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
195.2 ns |
1.46 ns |
1.37 ns |
1.02 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
370.2 ns |
3.88 ns |
3.63 ns |
1.94 |
0.02 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
201.0 ns |
1.55 ns |
1.45 ns |
1.05 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
372.6 ns |
3.86 ns |
3.61 ns |
1.95 |
0.02 |
0.0186 |
312 B |
NA |
core-ubuntu-24.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.017 μs |
0.0089 μs |
0.0079 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
707.1 ns |
4.67 ns |
4.37 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
710.2 ns |
3.95 ns |
3.69 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
923.2 ns |
3.33 ns |
3.12 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,213.5 ns |
11.81 ns |
11.05 ns |
0.0420 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
282.6 ns |
2.28 ns |
2.14 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
284.2 ns |
2.28 ns |
2.13 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
465.2 ns |
2.18 ns |
2.04 ns |
0.0072 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,714.0 ns |
18.23 ns |
16.16 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
358.10 ns |
2.284 ns |
2.136 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
False |
True |
364.81 ns |
2.278 ns |
2.019 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
True |
False |
498.58 ns |
3.418 ns |
3.030 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
2,746.33 ns |
17.125 ns |
15.181 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
23.70 ns |
0.144 ns |
0.127 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
23.26 ns |
0.168 ns |
0.149 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
145.02 ns |
0.693 ns |
0.615 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,250.84 ns |
11.349 ns |
10.060 ns |
0.0367 |
656 B |
core-ubuntu-24.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
439.6 ns |
4.94 ns |
4.38 ns |
1.00 |
0.01 |
0.0033 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,690.5 ns |
26.98 ns |
22.53 ns |
12.95 |
0.13 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
915.5 ns |
8.17 ns |
7.64 ns |
2.08 |
0.03 |
0.0048 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
928.2 ns |
7.00 ns |
6.20 ns |
2.11 |
0.02 |
0.0048 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,254.2 ns |
182.85 ns |
224.56 ns |
21.05 |
0.54 |
0.0305 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
440.9 ns |
3.36 ns |
3.14 ns |
1.00 |
0.01 |
0.0033 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
452,637.9 ns |
1,883.43 ns |
1,669.61 ns |
1,026.74 |
7.96 |
1.4648 |
0.4883 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,750.5 ns |
12.21 ns |
10.82 ns |
3.97 |
0.04 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,762.2 ns |
10.16 ns |
9.00 ns |
4.00 |
0.03 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
782,411.8 ns |
15,493.03 ns |
17,841.80 ns |
1,774.78 |
41.36 |
2.9297 |
- |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
438.3 ns |
4.05 ns |
3.79 ns |
1.00 |
0.01 |
0.0033 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
50,755,130.8 ns |
427,801.32 ns |
400,165.62 ns |
115,801.74 |
1,315.00 |
300.0000 |
200.0000 |
200.0000 |
16001500 B |
51,286.86 |
| InvokeIntArrayFixed |
100000 |
78,693.7 ns |
465.26 ns |
363.24 ns |
179.55 |
1.71 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
78,759.2 ns |
263.07 ns |
246.08 ns |
179.70 |
1.61 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
87,854,383.6 ns |
1,311,051.01 ns |
1,162,212.57 ns |
200,446.54 |
3,066.13 |
1166.6667 |
1000.0000 |
1000.0000 |
27898327 B |
89,417.71 |
core-ubuntu-24.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
923.9 ns |
9.40 ns |
8.79 ns |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
920.7 ns |
4.47 ns |
4.18 ns |
1.00 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
921.9 ns |
5.41 ns |
4.22 ns |
1.00 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
70.91 ns |
0.614 ns |
0.512 ns |
1.00 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
78.08 ns |
0.381 ns |
0.318 ns |
1.10 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
70.73 ns |
0.325 ns |
0.304 ns |
1.00 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
524.81 ns |
5.019 ns |
4.449 ns |
7.40 |
0.08 |
0.0029 |
256 B |
10.67 |
| GetStaticIntField |
81.03 ns |
0.853 ns |
0.798 ns |
1.14 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
79.90 ns |
0.500 ns |
0.444 ns |
1.13 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
73.02 ns |
0.773 ns |
0.723 ns |
1.03 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
512.75 ns |
4.203 ns |
3.725 ns |
7.23 |
0.07 |
0.0029 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
76.92 ns |
0.427 ns |
0.356 ns |
1.08 |
0.01 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
217.8 ns |
2.50 ns |
2.34 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
217.7 ns |
2.32 ns |
2.06 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
426.0 ns |
4.41 ns |
3.91 ns |
1.96 |
0.03 |
0.0033 |
312 B |
NA |
| InvokeInstanceEmpty |
225.9 ns |
2.46 ns |
2.18 ns |
1.04 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
439.1 ns |
2.30 ns |
2.04 ns |
2.02 |
0.02 |
0.0033 |
312 B |
NA |
core-ubuntu-24.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.091 μs |
0.0170 μs |
0.0159 μs |
1.00 |
0.02 |
0.0076 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
838.5 ns |
8.46 ns |
7.91 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
840.3 ns |
5.44 ns |
5.09 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,012.7 ns |
10.09 ns |
9.44 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,890.8 ns |
57.76 ns |
51.20 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
334.9 ns |
2.48 ns |
2.20 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
364.9 ns |
5.40 ns |
5.05 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
537.6 ns |
5.10 ns |
4.26 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,521.2 ns |
49.25 ns |
46.07 ns |
0.0076 |
680 B |
core-ubuntu-24.04_net10.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
474.64 ns |
3.550 ns |
3.147 ns |
0.0009 |
80 B |
| PredicateSustained |
False |
False |
True |
473.61 ns |
1.852 ns |
1.732 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
653.41 ns |
2.479 ns |
2.198 ns |
0.0013 |
176 B |
| PredicateSustained |
False |
True |
True |
3,516.09 ns |
65.729 ns |
61.483 ns |
- |
736 B |
| PredicateSustained |
True |
False |
False |
46.35 ns |
0.926 ns |
1.693 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
46.16 ns |
0.904 ns |
1.559 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
194.94 ns |
1.305 ns |
1.221 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
3,003.16 ns |
42.597 ns |
39.846 ns |
0.0050 |
656 B |
core-ubuntu-24.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
400.0 ns |
2.96 ns |
2.62 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
4,605.4 ns |
49.36 ns |
46.17 ns |
11.51 |
0.13 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
929.4 ns |
3.94 ns |
3.29 ns |
2.32 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
937.1 ns |
5.79 ns |
4.83 ns |
2.34 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
6,159.2 ns |
46.98 ns |
43.94 ns |
15.40 |
0.14 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
396.0 ns |
3.24 ns |
3.03 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
333,479.9 ns |
971.86 ns |
909.07 ns |
842.23 |
6.61 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,523.9 ns |
11.82 ns |
10.48 ns |
3.85 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,538.3 ns |
8.27 ns |
7.74 ns |
3.89 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
477,983.1 ns |
1,918.32 ns |
1,700.54 ns |
1,207.18 |
9.84 |
15.6250 |
7.3242 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
419.1 ns |
2.74 ns |
2.43 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
41,228,930.7 ns |
672,675.48 ns |
561,714.49 ns |
98,370.67 |
1,403.46 |
1076.9231 |
923.0769 |
307.6923 |
16001458 B |
51,286.72 |
| InvokeIntArrayFixed |
100000 |
52,070.7 ns |
143.51 ns |
112.04 ns |
124.24 |
0.74 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
51,932.0 ns |
145.27 ns |
128.78 ns |
123.91 |
0.75 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
62,102,456.1 ns |
1,212,985.85 ns |
1,297,881.27 ns |
148,174.11 |
3,127.03 |
2125.0000 |
2000.0000 |
1000.0000 |
27895535 B |
89,408.77 |
core-ubuntu-24.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
848.1 ns |
2.80 ns |
2.19 ns |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
860.2 ns |
1.77 ns |
1.48 ns |
1.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
862.6 ns |
5.55 ns |
4.92 ns |
1.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
66.27 ns |
0.803 ns |
0.751 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
68.65 ns |
0.570 ns |
0.533 ns |
1.04 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
69.03 ns |
1.070 ns |
0.894 ns |
1.04 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
441.08 ns |
3.953 ns |
3.697 ns |
6.66 |
0.09 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
69.49 ns |
0.497 ns |
0.465 ns |
1.05 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
68.85 ns |
1.402 ns |
1.312 ns |
1.04 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
67.09 ns |
0.423 ns |
0.375 ns |
1.01 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
441.02 ns |
4.694 ns |
3.920 ns |
6.66 |
0.09 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
69.53 ns |
0.466 ns |
0.413 ns |
1.05 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
221.5 ns |
1.40 ns |
1.31 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
226.5 ns |
1.53 ns |
1.36 ns |
1.02 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
384.3 ns |
1.60 ns |
1.49 ns |
1.73 |
0.01 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
242.7 ns |
1.32 ns |
1.17 ns |
1.10 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
398.3 ns |
4.23 ns |
3.75 ns |
1.80 |
0.02 |
0.0186 |
312 B |
NA |
core-ubuntu-24.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.078 μs |
0.0069 μs |
0.0058 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
797.7 ns |
3.96 ns |
3.09 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
808.9 ns |
4.30 ns |
3.81 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,004.6 ns |
5.10 ns |
4.26 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,521.5 ns |
14.50 ns |
12.85 ns |
0.0420 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
295.0 ns |
1.87 ns |
1.66 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
305.4 ns |
1.35 ns |
1.20 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
516.3 ns |
3.33 ns |
2.95 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,851.9 ns |
24.53 ns |
21.74 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
397.28 ns |
4.463 ns |
4.175 ns |
0.0046 |
80 B |
| PredicateSustained |
False |
False |
True |
404.33 ns |
5.074 ns |
4.746 ns |
0.0046 |
80 B |
| PredicateSustained |
False |
True |
False |
542.22 ns |
3.257 ns |
2.720 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
2,952.74 ns |
23.224 ns |
19.393 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
23.26 ns |
0.121 ns |
0.101 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
23.26 ns |
0.303 ns |
0.283 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
142.37 ns |
0.811 ns |
0.759 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,445.05 ns |
8.692 ns |
8.131 ns |
0.0350 |
656 B |
core-ubuntu-24.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
477.7 ns |
2.29 ns |
1.91 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,789.9 ns |
23.13 ns |
20.50 ns |
12.12 |
0.06 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,106.9 ns |
4.15 ns |
3.47 ns |
2.32 |
0.01 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,108.4 ns |
5.80 ns |
5.15 ns |
2.32 |
0.01 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
7,448.2 ns |
35.68 ns |
33.38 ns |
15.59 |
0.09 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
463.8 ns |
4.09 ns |
3.83 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
391,078.9 ns |
1,619.13 ns |
1,435.32 ns |
843.19 |
7.38 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,863.9 ns |
7.74 ns |
6.87 ns |
4.02 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,854.5 ns |
6.62 ns |
5.87 ns |
4.00 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
602,408.2 ns |
3,571.85 ns |
3,341.11 ns |
1,298.82 |
12.52 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
485.9 ns |
3.92 ns |
3.66 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
51,654,197.6 ns |
620,041.95 ns |
549,651.04 ns |
106,301.24 |
1,338.64 |
1100.0000 |
1000.0000 |
300.0000 |
16001534 B |
51,286.97 |
| InvokeIntArrayFixed |
100000 |
62,057.2 ns |
257.03 ns |
240.43 ns |
127.71 |
1.05 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
62,037.9 ns |
196.78 ns |
174.44 ns |
127.67 |
0.99 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
77,924,435.7 ns |
1,508,397.12 ns |
1,737,072.36 ns |
160,363.81 |
3,679.76 |
2142.8571 |
2000.0000 |
1000.0000 |
27897597 B |
89,415.38 |
core-ubuntu-24.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.049 μs |
0.0125 μs |
0.0117 μs |
1.00 |
0.02 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.041 μs |
0.0063 μs |
0.0052 μs |
0.99 |
0.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.037 μs |
0.0054 μs |
0.0050 μs |
0.99 |
0.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
82.73 ns |
0.389 ns |
0.325 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
95.94 ns |
0.918 ns |
0.859 ns |
1.16 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
79.11 ns |
0.543 ns |
0.481 ns |
0.96 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
528.38 ns |
4.154 ns |
3.683 ns |
6.39 |
0.05 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
84.76 ns |
0.552 ns |
0.516 ns |
1.02 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
88.55 ns |
0.485 ns |
0.454 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
76.39 ns |
0.991 ns |
0.878 ns |
0.92 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
509.52 ns |
3.859 ns |
3.609 ns |
6.16 |
0.05 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
86.50 ns |
0.785 ns |
0.734 ns |
1.05 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
242.5 ns |
3.00 ns |
2.80 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
243.8 ns |
2.50 ns |
2.33 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
458.5 ns |
2.98 ns |
2.64 ns |
1.89 |
0.02 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
244.9 ns |
2.41 ns |
2.02 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
471.0 ns |
3.48 ns |
3.08 ns |
1.94 |
0.03 |
0.0186 |
312 B |
NA |
core-ubuntu-24.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.287 μs |
0.0087 μs |
0.0081 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
919.7 ns |
7.21 ns |
6.74 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
942.3 ns |
6.93 ns |
5.79 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,182.2 ns |
2.91 ns |
2.27 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,169.5 ns |
19.71 ns |
17.47 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
358.3 ns |
2.93 ns |
2.74 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
364.7 ns |
3.00 ns |
2.66 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
638.7 ns |
3.04 ns |
2.84 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,518.1 ns |
14.86 ns |
13.17 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
493.46 ns |
2.950 ns |
2.615 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
False |
True |
471.58 ns |
5.839 ns |
5.462 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
True |
False |
640.28 ns |
4.421 ns |
4.135 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,518.10 ns |
17.184 ns |
14.350 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
40.03 ns |
0.210 ns |
0.196 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
29.22 ns |
0.193 ns |
0.172 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
183.58 ns |
1.286 ns |
1.004 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,976.73 ns |
18.471 ns |
16.374 ns |
0.0350 |
656 B |
core-ubuntu-24.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
535.4 ns |
4.50 ns |
3.75 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,748.1 ns |
19.02 ns |
15.89 ns |
10.74 |
0.08 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,153.0 ns |
5.93 ns |
5.55 ns |
2.15 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,150.8 ns |
9.98 ns |
8.84 ns |
2.15 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,083.6 ns |
87.00 ns |
81.38 ns |
15.10 |
0.18 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
574.4 ns |
6.20 ns |
5.80 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
438,410.8 ns |
1,835.45 ns |
1,716.88 ns |
763.36 |
8.08 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,829.7 ns |
18.09 ns |
16.03 ns |
3.19 |
0.04 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,810.7 ns |
6.29 ns |
5.58 ns |
3.15 |
0.03 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
631,664.9 ns |
3,447.79 ns |
2,879.06 ns |
1,099.85 |
11.90 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
541.6 ns |
5.68 ns |
5.31 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
52,400,989.6 ns |
490,813.02 ns |
459,106.80 ns |
96,764.37 |
1,233.65 |
1100.0000 |
1000.0000 |
300.0000 |
16001793 B |
51,287.80 |
| InvokeIntArrayFixed |
100000 |
64,947.4 ns |
255.13 ns |
226.17 ns |
119.93 |
1.21 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
65,240.5 ns |
401.55 ns |
375.61 ns |
120.47 |
1.33 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
80,527,673.8 ns |
1,289,824.54 ns |
1,206,502.67 ns |
148,703.48 |
2,580.04 |
2142.8571 |
2000.0000 |
1000.0000 |
27897304 B |
89,414.44 |
core-ubuntu-24.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.056 μs |
0.0045 μs |
0.0042 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.069 μs |
0.0023 μs |
0.0018 μs |
1.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.087 μs |
0.0088 μs |
0.0082 μs |
1.03 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
74.47 ns |
0.902 ns |
0.844 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
79.95 ns |
0.993 ns |
0.929 ns |
1.07 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
74.17 ns |
1.380 ns |
1.291 ns |
1.00 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
592.24 ns |
3.759 ns |
3.516 ns |
7.95 |
0.10 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
76.87 ns |
0.695 ns |
0.650 ns |
1.03 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
81.52 ns |
0.913 ns |
0.854 ns |
1.09 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
72.51 ns |
1.014 ns |
0.949 ns |
0.97 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
604.61 ns |
2.538 ns |
2.374 ns |
8.12 |
0.09 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
82.50 ns |
0.864 ns |
0.808 ns |
1.11 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
262.7 ns |
2.76 ns |
2.59 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
263.0 ns |
2.99 ns |
2.65 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
517.9 ns |
5.09 ns |
4.76 ns |
1.97 |
0.03 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
272.5 ns |
2.45 ns |
2.29 ns |
1.04 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
540.2 ns |
6.14 ns |
5.75 ns |
2.06 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.393 μs |
0.0064 μs |
0.0057 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,001.1 ns |
13.43 ns |
12.56 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
979.4 ns |
11.75 ns |
10.99 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,279.6 ns |
6.11 ns |
5.72 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,198.9 ns |
25.46 ns |
23.82 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
411.2 ns |
3.29 ns |
2.92 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
405.0 ns |
7.19 ns |
6.73 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
666.2 ns |
2.25 ns |
2.10 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,656.8 ns |
11.15 ns |
9.88 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
455.03 ns |
5.101 ns |
4.771 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
False |
True |
476.06 ns |
3.532 ns |
3.304 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
True |
False |
662.44 ns |
5.408 ns |
4.794 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,711.16 ns |
25.168 ns |
22.311 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
27.76 ns |
0.248 ns |
0.232 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
28.84 ns |
0.201 ns |
0.178 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
194.95 ns |
1.566 ns |
1.465 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,104.30 ns |
12.279 ns |
11.486 ns |
0.0350 |
656 B |
core-ubuntu-24.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Median |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
595.2 ns |
11.44 ns |
11.75 ns |
593.3 ns |
1.00 |
0.03 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,262.1 ns |
124.35 ns |
325.40 ns |
6,140.8 ns |
10.52 |
0.58 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,187.9 ns |
21.95 ns |
25.28 ns |
1,188.3 ns |
2.00 |
0.06 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,183.0 ns |
19.15 ns |
15.99 ns |
1,179.1 ns |
1.99 |
0.05 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
9,071.7 ns |
185.40 ns |
546.67 ns |
8,984.1 ns |
15.25 |
0.96 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
614.8 ns |
17.35 ns |
51.16 ns |
593.9 ns |
1.01 |
0.12 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
462,730.5 ns |
8,119.98 ns |
6,780.55 ns |
460,741.9 ns |
757.58 |
61.17 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,998.9 ns |
54.59 ns |
160.96 ns |
1,925.3 ns |
3.27 |
0.37 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,890.5 ns |
37.69 ns |
97.29 ns |
1,852.5 ns |
3.10 |
0.29 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
660,703.4 ns |
12,833.91 ns |
28,439.06 ns |
648,035.2 ns |
1,081.71 |
97.65 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
549.3 ns |
9.46 ns |
7.90 ns |
546.7 ns |
1.00 |
0.02 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
53,696,166.1 ns |
967,185.89 ns |
1,589,114.29 ns |
53,403,463.0 ns |
97,763.58 |
3,144.34 |
1100.0000 |
1000.0000 |
300.0000 |
16001771 B |
51,287.73 |
| InvokeIntArrayFixed |
100000 |
67,119.4 ns |
1,262.24 ns |
1,596.33 ns |
66,376.6 ns |
122.20 |
3.29 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
70,689.0 ns |
1,584.52 ns |
4,672.00 ns |
68,663.4 ns |
128.70 |
8.64 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
82,316,784.3 ns |
1,640,687.74 ns |
3,899,268.29 ns |
80,857,434.2 ns |
149,872.60 |
7,334.09 |
1833.3333 |
1666.6667 |
833.3333 |
27895587 B |
89,408.93 |
core-ubuntu-24.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.109 μs |
0.0216 μs |
0.0231 μs |
1.00 |
0.03 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.108 μs |
0.0199 μs |
0.0187 μs |
1.00 |
0.03 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.121 μs |
0.0222 μs |
0.0247 μs |
1.01 |
0.03 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Median |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
76.21 ns |
0.683 ns |
0.605 ns |
76.17 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
81.41 ns |
1.642 ns |
3.280 ns |
80.57 ns |
1.07 |
0.04 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
73.62 ns |
0.779 ns |
0.729 ns |
73.45 ns |
0.97 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
605.94 ns |
12.046 ns |
23.777 ns |
597.24 ns |
7.95 |
0.31 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
78.22 ns |
0.943 ns |
0.836 ns |
78.04 ns |
1.03 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
79.80 ns |
1.077 ns |
1.007 ns |
79.64 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
70.28 ns |
0.572 ns |
0.478 ns |
70.36 ns |
0.92 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
625.23 ns |
14.024 ns |
41.351 ns |
607.26 ns |
8.20 |
0.54 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
82.22 ns |
1.187 ns |
1.110 ns |
82.59 ns |
1.08 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
275.7 ns |
1.96 ns |
1.84 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
267.7 ns |
4.83 ns |
6.77 ns |
0.97 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
568.0 ns |
11.23 ns |
12.94 ns |
2.06 |
0.05 |
0.0181 |
312 B |
NA |
| InvokeInstanceEmpty |
283.2 ns |
2.33 ns |
1.94 ns |
1.03 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
587.4 ns |
9.12 ns |
7.62 ns |
2.13 |
0.03 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.390 μs |
0.0253 μs |
0.0212 μs |
1.00 |
0.02 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Median |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,039.7 ns |
18.64 ns |
31.14 ns |
1,030.2 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,112.1 ns |
31.14 ns |
91.83 ns |
1,104.4 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,353.7 ns |
25.93 ns |
64.09 ns |
1,323.3 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,407.8 ns |
84.18 ns |
96.95 ns |
4,392.5 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
471.3 ns |
9.66 ns |
28.48 ns |
458.9 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
433.7 ns |
8.46 ns |
7.50 ns |
434.6 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
657.8 ns |
8.30 ns |
6.93 ns |
658.4 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,706.6 ns |
70.20 ns |
65.67 ns |
3,688.1 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.61GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
497.23 ns |
8.406 ns |
7.452 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
False |
True |
471.38 ns |
5.553 ns |
4.923 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
True |
False |
692.78 ns |
9.403 ns |
8.335 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,081.78 ns |
112.861 ns |
332.772 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
30.49 ns |
0.363 ns |
0.340 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
29.50 ns |
0.362 ns |
0.339 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
204.38 ns |
3.118 ns |
2.916 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,133.33 ns |
60.171 ns |
84.352 ns |
0.0300 |
656 B |
core-ubuntu-24.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
478.4 ns |
3.36 ns |
2.98 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,982.6 ns |
34.04 ns |
30.18 ns |
12.51 |
0.10 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,157.0 ns |
8.91 ns |
8.33 ns |
2.42 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,152.1 ns |
4.91 ns |
4.35 ns |
2.41 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
7,723.8 ns |
49.23 ns |
46.05 ns |
16.14 |
0.13 |
0.1984 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
507.7 ns |
4.21 ns |
3.73 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
433,065.3 ns |
2,252.24 ns |
1,996.55 ns |
853.11 |
7.17 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,885.8 ns |
8.56 ns |
8.00 ns |
3.71 |
0.03 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,904.2 ns |
7.01 ns |
6.56 ns |
3.75 |
0.03 |
0.0229 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
625,186.0 ns |
3,658.32 ns |
3,421.99 ns |
1,231.57 |
10.94 |
15.6250 |
6.8359 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
503.1 ns |
3.61 ns |
3.38 ns |
1.00 |
0.01 |
0.0181 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
54,751,418.9 ns |
621,399.40 ns |
581,257.39 ns |
108,837.40 |
1,323.62 |
1100.0000 |
1000.0000 |
300.0000 |
16002474 B |
51,289.98 |
| InvokeIntArrayFixed |
100000 |
63,178.5 ns |
129.33 ns |
114.64 ns |
125.59 |
0.85 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
63,164.5 ns |
216.26 ns |
191.70 ns |
125.56 |
0.90 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
78,565,705.2 ns |
1,520,709.59 ns |
2,229,036.59 ns |
156,176.54 |
4,475.38 |
2142.8571 |
2000.0000 |
1000.0000 |
27898059 B |
89,416.86 |
core-ubuntu-24.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.067 μs |
0.0094 μs |
0.0088 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.065 μs |
0.0069 μs |
0.0065 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.122 μs |
0.0042 μs |
0.0035 μs |
1.05 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
83.31 ns |
0.436 ns |
0.408 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
88.84 ns |
0.578 ns |
0.483 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
88.02 ns |
1.438 ns |
1.345 ns |
1.06 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
543.50 ns |
3.826 ns |
3.579 ns |
6.52 |
0.05 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
89.60 ns |
0.513 ns |
0.455 ns |
1.08 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
98.46 ns |
0.691 ns |
0.646 ns |
1.18 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
84.39 ns |
0.825 ns |
0.772 ns |
1.01 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
566.70 ns |
3.311 ns |
2.936 ns |
6.80 |
0.05 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
86.75 ns |
0.571 ns |
0.534 ns |
1.04 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
288.6 ns |
3.71 ns |
3.47 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
286.7 ns |
1.44 ns |
1.28 ns |
0.99 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
460.5 ns |
2.76 ns |
2.58 ns |
1.60 |
0.02 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
334.9 ns |
2.73 ns |
2.55 ns |
1.16 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
507.8 ns |
2.79 ns |
2.47 ns |
1.76 |
0.02 |
0.0181 |
312 B |
NA |
core-ubuntu-24.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.342 μs |
0.0079 μs |
0.0070 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,007.3 ns |
8.22 ns |
7.29 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,067.3 ns |
8.76 ns |
8.20 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,265.6 ns |
5.01 ns |
4.18 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,430.7 ns |
15.83 ns |
14.03 ns |
0.0381 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
382.0 ns |
2.29 ns |
2.14 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
368.0 ns |
1.94 ns |
1.82 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
625.1 ns |
3.60 ns |
3.37 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,717.7 ns |
10.86 ns |
9.06 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
509.82 ns |
7.095 ns |
6.637 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
523.62 ns |
4.787 ns |
4.244 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
694.02 ns |
5.108 ns |
4.528 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,838.16 ns |
20.253 ns |
18.944 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
32.29 ns |
0.259 ns |
0.242 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
31.93 ns |
0.280 ns |
0.262 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
183.54 ns |
0.991 ns |
0.828 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,104.59 ns |
11.602 ns |
9.688 ns |
0.0350 |
656 B |
core-ubuntu-24.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
382.1 ns |
2.99 ns |
2.65 ns |
1.00 |
0.01 |
0.0033 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
4,909.0 ns |
44.80 ns |
39.71 ns |
12.85 |
0.13 |
0.0229 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
745.6 ns |
2.08 ns |
1.73 ns |
1.95 |
0.01 |
0.0048 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
755.2 ns |
5.43 ns |
4.54 ns |
1.98 |
0.02 |
0.0048 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
7,686.2 ns |
81.32 ns |
67.91 ns |
20.12 |
0.22 |
0.0381 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
387.5 ns |
3.99 ns |
3.54 ns |
1.00 |
0.01 |
0.0033 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
391,477.9 ns |
1,690.06 ns |
1,498.19 ns |
1,010.25 |
9.64 |
1.4648 |
0.4883 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,570.0 ns |
12.87 ns |
11.41 ns |
4.05 |
0.05 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,526.9 ns |
12.82 ns |
10.70 ns |
3.94 |
0.04 |
0.0038 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
649,132.3 ns |
12,416.44 ns |
11,614.34 ns |
1,675.16 |
32.55 |
2.9297 |
- |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
385.5 ns |
3.20 ns |
2.67 ns |
1.00 |
0.01 |
0.0033 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
43,223,393.1 ns |
220,137.84 ns |
205,917.07 ns |
112,124.87 |
908.48 |
250.0000 |
166.6667 |
166.6667 |
16000866 B |
51,284.83 |
| InvokeIntArrayFixed |
100000 |
72,571.4 ns |
1,095.17 ns |
1,024.42 ns |
188.26 |
2.86 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
71,514.8 ns |
592.97 ns |
495.15 ns |
185.51 |
1.75 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
72,600,034.0 ns |
1,319,414.57 ns |
1,169,626.65 ns |
188,330.18 |
3,188.99 |
1142.8571 |
1000.0000 |
1000.0000 |
27899357 B |
89,421.02 |
core-ubuntu-24.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
784.7 ns |
5.08 ns |
4.25 ns |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
803.9 ns |
9.47 ns |
8.40 ns |
1.02 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
792.2 ns |
6.12 ns |
5.43 ns |
1.01 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
61.74 ns |
0.439 ns |
0.366 ns |
1.00 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
70.97 ns |
0.783 ns |
0.654 ns |
1.15 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
66.88 ns |
0.485 ns |
0.430 ns |
1.08 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
457.17 ns |
3.561 ns |
3.157 ns |
7.40 |
0.07 |
0.0029 |
256 B |
10.67 |
| GetStaticIntField |
66.61 ns |
0.321 ns |
0.285 ns |
1.08 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
68.78 ns |
0.605 ns |
0.566 ns |
1.11 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
61.45 ns |
0.788 ns |
0.737 ns |
1.00 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
474.14 ns |
6.568 ns |
6.144 ns |
7.68 |
0.11 |
0.0029 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
68.50 ns |
0.360 ns |
0.301 ns |
1.11 |
0.01 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
189.2 ns |
2.06 ns |
1.82 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
187.8 ns |
1.07 ns |
0.89 ns |
0.99 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
379.6 ns |
4.21 ns |
3.51 ns |
2.01 |
0.03 |
0.0033 |
312 B |
NA |
| InvokeInstanceEmpty |
191.4 ns |
1.55 ns |
1.38 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
382.6 ns |
7.32 ns |
6.85 ns |
2.02 |
0.04 |
0.0033 |
312 B |
NA |
core-ubuntu-24.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
943.1 ns |
6.23 ns |
5.52 ns |
1.00 |
0.0076 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
742.9 ns |
8.30 ns |
7.76 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
735.4 ns |
9.77 ns |
8.66 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
898.1 ns |
5.45 ns |
4.83 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,297.0 ns |
33.05 ns |
25.80 ns |
0.0076 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
288.9 ns |
2.45 ns |
2.17 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
288.0 ns |
2.99 ns |
2.50 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
467.4 ns |
8.40 ns |
7.01 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,870.9 ns |
18.88 ns |
17.66 ns |
0.0076 |
680 B |
core-ubuntu-24.04_net10.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
432.59 ns |
7.812 ns |
6.926 ns |
0.0008 |
80 B |
| PredicateSustained |
False |
False |
True |
427.33 ns |
5.889 ns |
4.918 ns |
0.0008 |
80 B |
| PredicateSustained |
False |
True |
False |
579.29 ns |
2.973 ns |
2.781 ns |
0.0011 |
176 B |
| PredicateSustained |
False |
True |
True |
2,990.59 ns |
20.559 ns |
19.230 ns |
0.0050 |
736 B |
| PredicateSustained |
True |
False |
False |
43.19 ns |
0.501 ns |
0.468 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.48 ns |
0.564 ns |
0.527 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
167.89 ns |
1.256 ns |
0.981 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
2,512.51 ns |
31.360 ns |
27.800 ns |
0.0050 |
656 B |
core-ubuntu-24.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
487.1 ns |
1.79 ns |
1.59 ns |
1.00 |
0.00 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,317.2 ns |
52.05 ns |
48.69 ns |
12.97 |
0.11 |
0.0763 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
1,088.5 ns |
5.31 ns |
4.71 ns |
2.23 |
0.01 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
1,089.8 ns |
6.60 ns |
6.18 ns |
2.24 |
0.01 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
8,333.5 ns |
45.22 ns |
40.08 ns |
17.11 |
0.10 |
0.1373 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
504.9 ns |
3.95 ns |
3.69 ns |
1.00 |
0.01 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
482,471.3 ns |
4,083.07 ns |
3,819.30 ns |
955.58 |
9.96 |
5.8594 |
1.9531 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,879.1 ns |
8.93 ns |
7.91 ns |
3.72 |
0.03 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,866.4 ns |
10.94 ns |
10.24 ns |
3.70 |
0.03 |
0.0153 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
670,145.4 ns |
4,304.39 ns |
4,026.33 ns |
1,327.28 |
12.15 |
9.7656 |
2.9297 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
491.0 ns |
2.41 ns |
2.26 ns |
1.00 |
0.01 |
0.0124 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
57,974,402.7 ns |
496,046.77 ns |
464,002.45 ns |
118,076.81 |
1,055.08 |
777.7778 |
666.6667 |
333.3333 |
16000670 B |
51,284.20 |
| InvokeIntArrayFixed |
100000 |
75,247.1 ns |
300.37 ns |
280.96 ns |
153.26 |
0.88 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
75,238.0 ns |
400.52 ns |
374.64 ns |
153.24 |
1.01 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
81,366,408.0 ns |
666,330.25 ns |
590,684.41 ns |
165,719.44 |
1,376.24 |
1714.2857 |
1571.4286 |
1000.0000 |
27898296 B |
89,417.62 |
core-ubuntu-24.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.084 μs |
0.0064 μs |
0.0057 μs |
1.00 |
0.0134 |
360 B |
1.00 |
| NewWithSignature |
1.110 μs |
0.0089 μs |
0.0083 μs |
1.02 |
0.0134 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.096 μs |
0.0110 μs |
0.0092 μs |
1.01 |
0.0134 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
76.86 ns |
0.399 ns |
0.373 ns |
1.00 |
0.01 |
0.0010 |
24 B |
1.00 |
| SetInstanceIntField |
87.49 ns |
0.569 ns |
0.532 ns |
1.14 |
0.01 |
0.0010 |
24 B |
1.00 |
| GetInstanceStringField |
77.07 ns |
0.618 ns |
0.578 ns |
1.00 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
663.10 ns |
3.995 ns |
3.737 ns |
8.63 |
0.06 |
0.0095 |
256 B |
10.67 |
| GetStaticIntField |
79.87 ns |
0.651 ns |
0.609 ns |
1.04 |
0.01 |
0.0010 |
24 B |
1.00 |
| SetStaticIntField |
85.67 ns |
0.480 ns |
0.401 ns |
1.11 |
0.01 |
0.0010 |
24 B |
1.00 |
| GetStaticStringField |
71.49 ns |
0.513 ns |
0.480 ns |
0.93 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
650.69 ns |
5.368 ns |
5.021 ns |
8.47 |
0.07 |
0.0095 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
84.76 ns |
0.350 ns |
0.311 ns |
1.10 |
0.01 |
0.0010 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
262.0 ns |
2.01 ns |
1.68 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
264.5 ns |
2.21 ns |
2.07 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
494.0 ns |
3.88 ns |
3.63 ns |
1.89 |
0.02 |
0.0124 |
312 B |
NA |
| InvokeInstanceEmpty |
276.2 ns |
2.63 ns |
2.33 ns |
1.05 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
500.9 ns |
6.45 ns |
6.04 ns |
1.91 |
0.03 |
0.0124 |
312 B |
NA |
core-ubuntu-24.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.293 μs |
0.0049 μs |
0.0044 μs |
1.00 |
0.0267 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
967.7 ns |
9.26 ns |
8.21 ns |
0.0038 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
986.3 ns |
5.37 ns |
4.48 ns |
0.0038 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,302.7 ns |
11.62 ns |
10.87 ns |
0.0076 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,236.9 ns |
14.44 ns |
12.80 ns |
0.0229 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
399.8 ns |
2.11 ns |
1.87 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
403.5 ns |
2.36 ns |
2.09 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
659.1 ns |
3.43 ns |
3.04 ns |
0.0048 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,661.4 ns |
22.54 ns |
21.09 ns |
0.0267 |
680 B |
core-ubuntu-24.04_net10.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon Platinum 8370C CPU 2.80GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
491.50 ns |
3.362 ns |
3.145 ns |
0.0027 |
80 B |
| PredicateSustained |
False |
False |
True |
497.64 ns |
3.895 ns |
3.453 ns |
0.0030 |
80 B |
| PredicateSustained |
False |
True |
False |
820.44 ns |
3.485 ns |
3.260 ns |
0.0057 |
176 B |
| PredicateSustained |
False |
True |
True |
3,674.84 ns |
40.307 ns |
37.703 ns |
0.0200 |
736 B |
| PredicateSustained |
True |
False |
False |
52.35 ns |
0.227 ns |
0.190 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.58 ns |
0.241 ns |
0.189 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
228.59 ns |
1.604 ns |
1.501 ns |
0.0038 |
96 B |
| PredicateSustained |
True |
True |
True |
3,049.48 ns |
19.533 ns |
18.271 ns |
0.0250 |
656 B |
core-ubuntu-24.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
376.1 ns |
2.16 ns |
2.02 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
10 |
4,256.9 ns |
17.14 ns |
16.03 ns |
11.32 |
0.07 |
0.1144 |
- |
- |
2016 B |
6.46 |
| InvokeIntArrayFixed |
10 |
899.9 ns |
6.28 ns |
5.57 ns |
2.39 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
10 |
880.2 ns |
2.35 ns |
2.19 ns |
2.34 |
0.01 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
10 |
5,926.1 ns |
24.46 ns |
22.88 ns |
15.76 |
0.10 |
0.2060 |
- |
- |
3488 B |
11.18 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
394.3 ns |
2.60 ns |
2.43 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
310,499.9 ns |
1,467.23 ns |
1,300.67 ns |
787.49 |
5.68 |
9.2773 |
2.9297 |
- |
160416 B |
514.15 |
| InvokeIntArrayFixed |
1000 |
1,473.0 ns |
4.00 ns |
3.55 ns |
3.74 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
1000 |
1,483.2 ns |
4.03 ns |
3.57 ns |
3.76 |
0.02 |
0.0248 |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
1000 |
463,995.4 ns |
1,128.04 ns |
1,055.17 ns |
1,176.78 |
7.48 |
15.6250 |
7.3242 |
- |
265856 B |
852.10 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
393.3 ns |
1.91 ns |
1.69 ns |
1.00 |
0.01 |
0.0186 |
- |
- |
312 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
39,321,399.0 ns |
312,947.13 ns |
292,730.94 ns |
99,981.26 |
831.71 |
1076.9231 |
923.0769 |
307.6923 |
16001200 B |
51,285.90 |
| InvokeIntArrayFixed |
100000 |
50,791.7 ns |
94.09 ns |
88.01 ns |
129.15 |
0.58 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsWholeArray |
100000 |
50,782.7 ns |
90.62 ns |
80.33 ns |
129.12 |
0.57 |
- |
- |
- |
416 B |
1.33 |
| InvokeVarArgsSpreadElements |
100000 |
61,029,124.7 ns |
1,193,927.11 ns |
1,466,249.84 ns |
155,176.81 |
3,704.75 |
2125.0000 |
2000.0000 |
1000.0000 |
27896745 B |
89,412.64 |
core-ubuntu-24.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
807.2 ns |
2.66 ns |
2.49 ns |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
807.2 ns |
3.32 ns |
3.10 ns |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
827.3 ns |
2.59 ns |
2.42 ns |
1.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
63.26 ns |
0.372 ns |
0.311 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
65.08 ns |
0.629 ns |
0.589 ns |
1.03 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
60.75 ns |
0.315 ns |
0.280 ns |
0.96 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
396.27 ns |
1.560 ns |
1.459 ns |
6.26 |
0.04 |
0.0153 |
256 B |
10.67 |
| GetStaticIntField |
64.05 ns |
0.522 ns |
0.488 ns |
1.01 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
65.26 ns |
0.768 ns |
0.681 ns |
1.03 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
59.56 ns |
0.599 ns |
0.561 ns |
0.94 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
405.19 ns |
1.411 ns |
1.320 ns |
6.40 |
0.04 |
0.0153 |
256 B |
10.67 |
| GetInstanceIntFieldGeneric |
67.76 ns |
0.599 ns |
0.560 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
204.3 ns |
1.61 ns |
1.50 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
191.5 ns |
1.13 ns |
1.00 ns |
0.94 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
368.3 ns |
1.64 ns |
1.53 ns |
1.80 |
0.01 |
0.0186 |
312 B |
NA |
| InvokeInstanceEmpty |
185.9 ns |
1.04 ns |
0.98 ns |
0.91 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
394.8 ns |
3.08 ns |
2.73 ns |
1.93 |
0.02 |
0.0186 |
312 B |
NA |
core-ubuntu-24.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.012 μs |
0.0044 μs |
0.0039 μs |
1.00 |
0.0401 |
680 B |
1.00 |
core-ubuntu-24.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
740.3 ns |
5.17 ns |
4.83 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
739.2 ns |
4.66 ns |
4.13 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
929.9 ns |
3.26 ns |
2.89 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,237.4 ns |
18.55 ns |
16.44 ns |
0.0420 |
760 B |
| PredicateRoundTrip |
True |
False |
False |
293.6 ns |
2.73 ns |
2.56 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
288.0 ns |
1.38 ns |
1.29 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
503.6 ns |
1.89 ns |
1.68 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,800.5 ns |
7.14 ns |
6.33 ns |
0.0381 |
680 B |
core-ubuntu-24.04_net10.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
DefaultJob : .NET 10.0.11 (10.0.11, 10.0.1126.37416), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
378.10 ns |
3.717 ns |
3.477 ns |
0.0043 |
80 B |
| PredicateSustained |
False |
False |
True |
353.35 ns |
2.910 ns |
2.580 ns |
0.0047 |
80 B |
| PredicateSustained |
False |
True |
False |
496.43 ns |
3.139 ns |
2.936 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
2,813.62 ns |
6.466 ns |
5.048 ns |
0.0400 |
736 B |
| PredicateSustained |
True |
False |
False |
23.73 ns |
0.211 ns |
0.197 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
24.10 ns |
0.166 ns |
0.155 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
143.12 ns |
0.541 ns |
0.506 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,324.40 ns |
14.170 ns |
13.254 ns |
0.0367 |
656 B |
core-ubuntu-24.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
562.5 ns |
3.48 ns |
3.09 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,576.4 ns |
35.45 ns |
31.42 ns |
11.69 |
0.08 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,283.6 ns |
4.48 ns |
3.74 ns |
2.28 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,308.4 ns |
4.36 ns |
4.08 ns |
2.33 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,756.4 ns |
72.52 ns |
67.83 ns |
15.57 |
0.14 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
576.3 ns |
4.13 ns |
3.87 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
487,123.8 ns |
3,052.25 ns |
2,705.74 ns |
845.36 |
7.14 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,997.9 ns |
11.28 ns |
10.55 ns |
3.47 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,025.7 ns |
9.69 ns |
9.06 ns |
3.52 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
699,915.5 ns |
4,511.84 ns |
3,767.59 ns |
1,214.64 |
10.12 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
559.6 ns |
3.65 ns |
3.41 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
61,426,493.7 ns |
518,547.79 ns |
459,679.11 ns |
109,766.15 |
1,023.62 |
1111.1111 |
1000.0000 |
333.3333 |
16002819 B |
46,519.82 |
| InvokeIntArrayFixed |
100000 |
63,494.7 ns |
148.50 ns |
131.64 ns |
113.46 |
0.71 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
63,670.5 ns |
207.83 ns |
184.24 ns |
113.78 |
0.74 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
89,130,623.3 ns |
1,004,436.09 ns |
890,406.43 ns |
159,272.07 |
1,800.75 |
1666.6667 |
1500.0000 |
666.6667 |
27895167 B |
81,090.60 |
core-ubuntu-24.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.227 μs |
0.0056 μs |
0.0050 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.209 μs |
0.0093 μs |
0.0083 μs |
0.99 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.220 μs |
0.0091 μs |
0.0081 μs |
1.00 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
109.5 ns |
0.68 ns |
0.60 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
129.5 ns |
1.37 ns |
1.21 ns |
1.18 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
114.2 ns |
0.94 ns |
0.88 ns |
1.04 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
655.8 ns |
2.87 ns |
2.40 ns |
5.99 |
0.04 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
116.6 ns |
1.44 ns |
1.35 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
129.1 ns |
0.89 ns |
0.79 ns |
1.18 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
107.8 ns |
0.76 ns |
0.71 ns |
0.98 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
658.9 ns |
2.92 ns |
2.44 ns |
6.02 |
0.04 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
139.0 ns |
1.16 ns |
1.08 ns |
1.27 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
327.6 ns |
2.92 ns |
2.59 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
343.9 ns |
2.40 ns |
2.25 ns |
1.05 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
543.9 ns |
3.32 ns |
2.95 ns |
1.66 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
366.4 ns |
3.20 ns |
2.99 ns |
1.12 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
555.5 ns |
2.94 ns |
2.60 ns |
1.70 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.480 μs |
0.0092 μs |
0.0086 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,058.4 ns |
8.05 ns |
7.53 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,053.0 ns |
7.97 ns |
7.46 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,311.6 ns |
8.20 ns |
6.85 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,639.0 ns |
24.56 ns |
21.77 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
412.1 ns |
3.12 ns |
2.92 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
401.7 ns |
2.58 ns |
2.41 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
637.8 ns |
4.21 ns |
3.94 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,069.2 ns |
19.82 ns |
18.54 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_corretto_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
591.02 ns |
2.975 ns |
2.783 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
False |
True |
547.52 ns |
4.951 ns |
4.631 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
707.64 ns |
5.021 ns |
4.451 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,089.88 ns |
22.703 ns |
21.236 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
40.58 ns |
0.349 ns |
0.292 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
41.29 ns |
0.541 ns |
0.506 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
185.22 ns |
1.133 ns |
1.004 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,435.86 ns |
32.790 ns |
29.067 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
638.0 ns |
7.17 ns |
6.71 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,552.9 ns |
35.56 ns |
31.52 ns |
10.27 |
0.12 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,352.8 ns |
4.78 ns |
4.24 ns |
2.12 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,333.7 ns |
5.19 ns |
4.34 ns |
2.09 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,059.9 ns |
32.07 ns |
28.43 ns |
14.20 |
0.15 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
614.5 ns |
5.16 ns |
4.58 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
480,802.5 ns |
1,887.96 ns |
1,576.53 ns |
782.49 |
6.18 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,985.8 ns |
12.32 ns |
11.52 ns |
3.23 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,998.1 ns |
17.32 ns |
15.36 ns |
3.25 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
713,348.7 ns |
4,802.74 ns |
4,010.50 ns |
1,160.95 |
10.50 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
597.0 ns |
8.34 ns |
7.80 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,740,840.1 ns |
946,752.33 ns |
885,592.72 ns |
100,081.40 |
1,912.09 |
1111.1111 |
1000.0000 |
333.3333 |
16002099 B |
46,517.73 |
| InvokeIntArrayFixed |
100000 |
66,220.9 ns |
307.60 ns |
272.68 ns |
110.94 |
1.47 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
66,424.7 ns |
369.52 ns |
345.65 ns |
111.28 |
1.51 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
87,588,858.0 ns |
814,942.17 ns |
722,425.00 ns |
146,734.05 |
2,188.75 |
1833.3333 |
1666.6667 |
833.3333 |
27897092 B |
81,096.20 |
core-ubuntu-24.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.246 μs |
0.0075 μs |
0.0067 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.239 μs |
0.0106 μs |
0.0099 μs |
0.99 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.253 μs |
0.0082 μs |
0.0077 μs |
1.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
94.84 ns |
0.753 ns |
0.668 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
117.36 ns |
1.546 ns |
1.370 ns |
1.24 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
105.27 ns |
0.776 ns |
0.648 ns |
1.11 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
689.06 ns |
3.516 ns |
3.117 ns |
7.27 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
101.00 ns |
1.321 ns |
1.235 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
119.95 ns |
0.993 ns |
0.929 ns |
1.26 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
97.97 ns |
1.179 ns |
1.102 ns |
1.03 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
660.03 ns |
3.818 ns |
3.385 ns |
6.96 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
137.01 ns |
1.703 ns |
1.329 ns |
1.44 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
293.1 ns |
3.83 ns |
3.40 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
259.0 ns |
3.71 ns |
3.47 ns |
0.88 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
593.8 ns |
6.25 ns |
5.84 ns |
2.03 |
0.03 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
311.2 ns |
4.28 ns |
4.01 ns |
1.06 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
611.7 ns |
6.13 ns |
5.74 ns |
2.09 |
0.03 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.474 μs |
0.0109 μs |
0.0102 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,079.0 ns |
12.86 ns |
12.03 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,077.0 ns |
16.17 ns |
15.13 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,318.5 ns |
4.07 ns |
3.61 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,768.0 ns |
16.79 ns |
15.70 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
454.2 ns |
2.80 ns |
2.62 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
442.9 ns |
3.38 ns |
3.16 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
662.4 ns |
2.80 ns |
2.48 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,122.5 ns |
15.06 ns |
13.35 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_corretto_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
569.33 ns |
7.093 ns |
6.635 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
False |
True |
579.48 ns |
7.288 ns |
6.817 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
True |
False |
794.74 ns |
9.456 ns |
8.845 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,264.75 ns |
27.062 ns |
22.598 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
38.48 ns |
0.206 ns |
0.193 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
37.84 ns |
0.529 ns |
0.495 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
193.87 ns |
1.378 ns |
1.221 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,525.68 ns |
29.053 ns |
25.754 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
604.2 ns |
5.29 ns |
4.69 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,470.9 ns |
41.84 ns |
39.13 ns |
10.71 |
0.10 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,306.0 ns |
8.52 ns |
7.55 ns |
2.16 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,306.9 ns |
5.31 ns |
4.43 ns |
2.16 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,953.5 ns |
49.06 ns |
45.89 ns |
14.82 |
0.13 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
619.8 ns |
6.78 ns |
6.34 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
485,033.7 ns |
2,926.13 ns |
2,737.11 ns |
782.69 |
8.84 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,011.8 ns |
15.71 ns |
13.93 ns |
3.25 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,991.8 ns |
17.21 ns |
16.10 ns |
3.21 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
703,020.4 ns |
2,627.66 ns |
2,329.35 ns |
1,134.46 |
11.79 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
605.4 ns |
5.05 ns |
4.73 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
61,636,827.7 ns |
634,566.91 ns |
593,574.28 ns |
101,818.37 |
1,222.05 |
1111.1111 |
1000.0000 |
333.3333 |
16001141 B |
46,514.94 |
| InvokeIntArrayFixed |
100000 |
67,596.2 ns |
444.82 ns |
371.44 ns |
111.66 |
1.03 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
67,154.4 ns |
435.12 ns |
407.01 ns |
110.93 |
1.06 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,173,277.7 ns |
1,124,293.92 ns |
1,051,665.23 ns |
142,350.32 |
1,996.69 |
1833.3333 |
1666.6667 |
833.3333 |
27895763 B |
81,092.33 |
core-ubuntu-24.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.215 μs |
0.0130 μs |
0.0122 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.231 μs |
0.0108 μs |
0.0101 μs |
1.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.230 μs |
0.0087 μs |
0.0077 μs |
1.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
86.20 ns |
0.987 ns |
0.923 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
119.52 ns |
2.049 ns |
1.917 ns |
1.39 |
0.03 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
98.26 ns |
1.194 ns |
1.059 ns |
1.14 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
651.48 ns |
4.230 ns |
3.750 ns |
7.56 |
0.09 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
94.82 ns |
1.169 ns |
1.093 ns |
1.10 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
114.81 ns |
0.655 ns |
0.613 ns |
1.33 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
91.67 ns |
1.138 ns |
1.065 ns |
1.06 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
662.40 ns |
4.283 ns |
3.577 ns |
7.69 |
0.09 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
125.55 ns |
1.440 ns |
1.347 ns |
1.46 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
295.8 ns |
3.61 ns |
3.38 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
267.7 ns |
3.04 ns |
2.84 ns |
0.91 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
584.0 ns |
5.74 ns |
5.09 ns |
1.97 |
0.03 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
316.0 ns |
4.82 ns |
4.51 ns |
1.07 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
610.8 ns |
4.55 ns |
4.03 ns |
2.07 |
0.03 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.518 μs |
0.0133 μs |
0.0124 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,026.2 ns |
11.68 ns |
10.92 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,075.1 ns |
7.39 ns |
6.91 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,324.9 ns |
3.91 ns |
3.47 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,718.9 ns |
27.41 ns |
25.64 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
426.4 ns |
5.80 ns |
5.42 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
458.0 ns |
4.80 ns |
4.01 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
647.0 ns |
2.79 ns |
2.61 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,982.3 ns |
26.09 ns |
24.40 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_corretto_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
571.46 ns |
5.074 ns |
4.498 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
False |
True |
586.10 ns |
7.238 ns |
6.044 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
True |
False |
754.44 ns |
2.956 ns |
2.765 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,104.65 ns |
32.059 ns |
29.988 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
37.31 ns |
0.243 ns |
0.227 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
37.28 ns |
0.288 ns |
0.256 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
201.66 ns |
1.773 ns |
1.658 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,427.29 ns |
29.701 ns |
26.329 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
596.8 ns |
4.77 ns |
4.46 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,390.6 ns |
24.29 ns |
21.53 ns |
10.71 |
0.08 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,318.5 ns |
7.29 ns |
6.82 ns |
2.21 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,328.0 ns |
9.75 ns |
8.64 ns |
2.23 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,895.9 ns |
40.73 ns |
38.10 ns |
14.91 |
0.12 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
579.4 ns |
4.94 ns |
4.62 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
481,623.4 ns |
2,766.34 ns |
2,587.64 ns |
831.30 |
7.74 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,998.9 ns |
10.42 ns |
9.75 ns |
3.45 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,955.7 ns |
10.54 ns |
9.34 ns |
3.38 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
707,223.7 ns |
2,529.94 ns |
2,112.62 ns |
1,220.70 |
10.07 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
598.4 ns |
6.53 ns |
6.11 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,096,006.8 ns |
578,966.79 ns |
541,565.89 ns |
100,434.06 |
1,322.48 |
1111.1111 |
1000.0000 |
333.3333 |
16002620 B |
46,519.24 |
| InvokeIntArrayFixed |
100000 |
66,021.1 ns |
365.70 ns |
342.08 ns |
110.34 |
1.22 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
66,083.6 ns |
187.91 ns |
166.58 ns |
110.44 |
1.12 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,017,228.9 ns |
944,127.96 ns |
836,944.84 ns |
143,754.30 |
1,958.51 |
1833.3333 |
1666.6667 |
833.3333 |
27897325 B |
81,096.88 |
core-ubuntu-24.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.184 μs |
0.0067 μs |
0.0060 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.223 μs |
0.0057 μs |
0.0053 μs |
1.03 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.202 μs |
0.0043 μs |
0.0038 μs |
1.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
93.76 ns |
0.819 ns |
0.766 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
109.76 ns |
0.875 ns |
0.818 ns |
1.17 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
91.03 ns |
0.894 ns |
0.836 ns |
0.97 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
660.84 ns |
3.616 ns |
3.382 ns |
7.05 |
0.07 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
98.90 ns |
1.326 ns |
1.241 ns |
1.05 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
115.23 ns |
1.041 ns |
0.974 ns |
1.23 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
86.24 ns |
0.720 ns |
0.638 ns |
0.92 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
633.59 ns |
3.599 ns |
3.190 ns |
6.76 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
119.98 ns |
0.851 ns |
0.796 ns |
1.28 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
298.5 ns |
3.36 ns |
3.15 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
285.3 ns |
2.97 ns |
2.78 ns |
0.96 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
587.4 ns |
7.73 ns |
7.23 ns |
1.97 |
0.03 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
318.2 ns |
3.80 ns |
3.56 ns |
1.07 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
615.7 ns |
5.40 ns |
5.05 ns |
2.06 |
0.03 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.475 μs |
0.0119 μs |
0.0099 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,051.0 ns |
10.23 ns |
9.57 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,038.3 ns |
16.64 ns |
15.57 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,275.6 ns |
8.88 ns |
7.87 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,657.4 ns |
19.88 ns |
18.59 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
442.9 ns |
5.43 ns |
5.08 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
464.6 ns |
7.66 ns |
7.17 ns |
0.0010 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
673.6 ns |
2.66 ns |
2.35 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,035.5 ns |
19.09 ns |
16.92 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_corretto_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
539.09 ns |
3.841 ns |
3.405 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
508.29 ns |
2.710 ns |
2.263 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
709.67 ns |
2.611 ns |
2.039 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,104.78 ns |
21.357 ns |
17.834 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
39.27 ns |
0.560 ns |
0.524 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
38.74 ns |
0.425 ns |
0.397 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
192.73 ns |
1.830 ns |
1.711 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,471.50 ns |
15.606 ns |
13.834 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
579.5 ns |
5.52 ns |
5.16 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,542.1 ns |
23.06 ns |
20.45 ns |
11.29 |
0.10 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,262.1 ns |
4.46 ns |
3.96 ns |
2.18 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,247.9 ns |
11.57 ns |
10.25 ns |
2.15 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,777.8 ns |
95.31 ns |
89.15 ns |
15.15 |
0.20 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
580.6 ns |
5.42 ns |
4.80 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
495,370.2 ns |
3,082.01 ns |
2,732.12 ns |
853.20 |
8.23 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,721.1 ns |
6.34 ns |
5.62 ns |
2.96 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,715.8 ns |
6.96 ns |
6.51 ns |
2.96 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
716,127.2 ns |
5,945.86 ns |
5,561.77 ns |
1,233.42 |
13.58 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
593.6 ns |
3.28 ns |
3.07 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,829,330.3 ns |
662,716.35 ns |
587,480.79 ns |
102,471.59 |
1,084.78 |
1000.0000 |
875.0000 |
250.0000 |
16001479 B |
46,515.93 |
| InvokeIntArrayFixed |
100000 |
44,463.0 ns |
364.03 ns |
322.70 ns |
74.90 |
0.65 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
44,595.0 ns |
308.30 ns |
288.39 ns |
75.12 |
0.60 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,959,452.1 ns |
881,168.17 ns |
824,245.25 ns |
144,805.17 |
1,527.20 |
1833.3333 |
1666.6667 |
833.3333 |
27897736 B |
81,098.07 |
core-ubuntu-24.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.199 μs |
0.0061 μs |
0.0051 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.226 μs |
0.0042 μs |
0.0039 μs |
1.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.203 μs |
0.0036 μs |
0.0032 μs |
1.00 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
92.58 ns |
0.462 ns |
0.386 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
125.56 ns |
0.747 ns |
0.699 ns |
1.36 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
94.84 ns |
0.795 ns |
0.744 ns |
1.02 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
682.78 ns |
3.688 ns |
3.449 ns |
7.38 |
0.05 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
99.34 ns |
0.834 ns |
0.780 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
114.43 ns |
1.255 ns |
1.174 ns |
1.24 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
108.63 ns |
1.501 ns |
1.331 ns |
1.17 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
662.54 ns |
6.276 ns |
5.870 ns |
7.16 |
0.07 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
130.72 ns |
0.892 ns |
0.834 ns |
1.41 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
294.0 ns |
2.33 ns |
2.18 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
268.3 ns |
2.10 ns |
1.75 ns |
0.91 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
560.8 ns |
4.01 ns |
3.55 ns |
1.91 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
303.8 ns |
3.04 ns |
2.85 ns |
1.03 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
583.9 ns |
4.96 ns |
4.64 ns |
1.99 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.456 μs |
0.0112 μs |
0.0105 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,017.7 ns |
8.92 ns |
8.35 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,036.0 ns |
10.95 ns |
10.24 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,241.3 ns |
5.16 ns |
4.83 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,522.3 ns |
47.36 ns |
41.98 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
404.9 ns |
5.44 ns |
4.82 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
430.2 ns |
3.27 ns |
2.90 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
642.7 ns |
4.14 ns |
3.88 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,890.5 ns |
18.54 ns |
17.34 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_graalvm_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
539.98 ns |
4.016 ns |
3.756 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
553.27 ns |
5.781 ns |
5.407 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
True |
False |
754.06 ns |
10.596 ns |
9.912 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,998.12 ns |
26.462 ns |
24.753 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
37.42 ns |
0.351 ns |
0.328 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
37.49 ns |
0.568 ns |
0.531 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
194.91 ns |
0.702 ns |
0.623 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,356.78 ns |
22.742 ns |
18.991 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
586.8 ns |
3.82 ns |
3.58 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,295.3 ns |
39.78 ns |
37.21 ns |
10.73 |
0.09 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,274.3 ns |
4.96 ns |
4.64 ns |
2.17 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,303.5 ns |
3.08 ns |
2.41 ns |
2.22 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,669.9 ns |
65.81 ns |
58.34 ns |
14.77 |
0.13 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
591.4 ns |
5.36 ns |
5.02 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
466,345.2 ns |
1,966.35 ns |
1,743.11 ns |
788.56 |
7.11 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,740.4 ns |
5.41 ns |
4.79 ns |
2.94 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,721.0 ns |
6.08 ns |
5.39 ns |
2.91 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
685,737.6 ns |
4,643.97 ns |
4,116.76 ns |
1,159.54 |
11.70 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
573.9 ns |
3.84 ns |
3.40 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,492,640.0 ns |
460,687.16 ns |
430,927.05 ns |
101,919.38 |
932.72 |
1111.1111 |
1000.0000 |
333.3333 |
16002172 B |
46,517.94 |
| InvokeIntArrayFixed |
100000 |
43,203.4 ns |
509.47 ns |
451.64 ns |
75.28 |
0.87 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
43,265.0 ns |
387.82 ns |
362.77 ns |
75.39 |
0.75 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
84,498,865.1 ns |
851,720.17 ns |
796,699.58 ns |
147,233.43 |
1,587.26 |
1833.3333 |
1666.6667 |
833.3333 |
27896015 B |
81,093.07 |
core-ubuntu-24.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.215 μs |
0.0034 μs |
0.0029 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.184 μs |
0.0051 μs |
0.0046 μs |
0.98 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.236 μs |
0.0036 μs |
0.0031 μs |
1.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
86.21 ns |
0.531 ns |
0.497 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
111.41 ns |
0.760 ns |
0.711 ns |
1.29 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
96.76 ns |
0.780 ns |
0.730 ns |
1.12 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
633.24 ns |
3.182 ns |
2.976 ns |
7.35 |
0.05 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
92.33 ns |
0.512 ns |
0.479 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
113.26 ns |
1.221 ns |
1.143 ns |
1.31 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
87.22 ns |
0.727 ns |
0.680 ns |
1.01 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
637.51 ns |
4.714 ns |
3.937 ns |
7.40 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
119.55 ns |
0.678 ns |
0.634 ns |
1.39 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
289.4 ns |
4.24 ns |
3.97 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
260.0 ns |
3.35 ns |
2.97 ns |
0.90 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
577.3 ns |
4.14 ns |
3.67 ns |
1.99 |
0.03 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
299.1 ns |
2.32 ns |
1.93 ns |
1.03 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
593.0 ns |
3.31 ns |
2.76 ns |
2.05 |
0.03 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.468 μs |
0.0052 μs |
0.0046 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,047.2 ns |
9.53 ns |
8.92 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,033.1 ns |
8.23 ns |
7.30 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,329.3 ns |
5.02 ns |
4.45 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,466.4 ns |
21.62 ns |
20.23 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
425.8 ns |
5.04 ns |
4.71 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
408.7 ns |
2.73 ns |
2.55 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
624.9 ns |
2.56 ns |
2.27 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,807.3 ns |
11.67 ns |
9.74 ns |
0.0420 |
712 B |
core-ubuntu-24.04_net8.0_graalvm_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
541.96 ns |
4.667 ns |
4.138 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
545.59 ns |
3.941 ns |
3.077 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
True |
False |
733.03 ns |
4.767 ns |
4.226 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,976.13 ns |
26.349 ns |
23.358 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
37.36 ns |
0.154 ns |
0.137 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
42.68 ns |
0.187 ns |
0.175 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
196.26 ns |
1.148 ns |
0.958 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,377.87 ns |
50.469 ns |
42.144 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
432.1 ns |
1.38 ns |
1.29 ns |
1.00 |
0.00 |
0.0205 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,029.4 ns |
39.73 ns |
35.22 ns |
11.64 |
0.09 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
978.6 ns |
3.49 ns |
2.92 ns |
2.26 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
975.8 ns |
6.18 ns |
5.78 ns |
2.26 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
7,029.2 ns |
41.60 ns |
36.87 ns |
16.27 |
0.09 |
0.2060 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
421.7 ns |
1.66 ns |
1.55 ns |
1.00 |
0.01 |
0.0205 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
371,647.6 ns |
2,200.21 ns |
2,058.08 ns |
881.35 |
5.67 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,353.7 ns |
8.74 ns |
7.75 ns |
3.21 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,370.3 ns |
7.79 ns |
6.91 ns |
3.25 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
539,716.6 ns |
2,600.85 ns |
2,171.83 ns |
1,279.92 |
6.74 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
422.2 ns |
2.46 ns |
2.05 ns |
1.00 |
0.01 |
0.0205 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
45,327,764.0 ns |
480,961.26 ns |
449,891.46 ns |
107,367.29 |
1,147.34 |
1000.0000 |
909.0909 |
272.7273 |
16001524 B |
46,516.06 |
| InvokeIntArrayFixed |
100000 |
27,522.4 ns |
184.25 ns |
153.86 ns |
65.19 |
0.46 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
27,685.5 ns |
170.85 ns |
151.45 ns |
65.58 |
0.46 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
70,130,859.1 ns |
999,456.19 ns |
885,991.88 ns |
166,118.06 |
2,171.04 |
2000.0000 |
1875.0000 |
875.0000 |
27895681 B |
81,092.10 |
core-ubuntu-24.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
909.2 ns |
2.12 ns |
1.88 ns |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
911.9 ns |
4.39 ns |
4.10 ns |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
921.9 ns |
6.24 ns |
5.21 ns |
1.01 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
75.47 ns |
0.674 ns |
0.631 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
89.73 ns |
0.650 ns |
0.507 ns |
1.19 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
77.10 ns |
0.675 ns |
0.632 ns |
1.02 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
493.74 ns |
5.497 ns |
5.142 ns |
6.54 |
0.08 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
79.25 ns |
0.549 ns |
0.459 ns |
1.05 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
102.93 ns |
0.317 ns |
0.265 ns |
1.36 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
73.62 ns |
0.375 ns |
0.332 ns |
0.98 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
499.44 ns |
2.454 ns |
2.295 ns |
6.62 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
116.43 ns |
0.874 ns |
0.775 ns |
1.54 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
217.4 ns |
0.83 ns |
0.77 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
194.4 ns |
1.40 ns |
1.31 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
425.2 ns |
2.27 ns |
2.13 ns |
1.96 |
0.0205 |
344 B |
NA |
| InvokeInstanceEmpty |
225.4 ns |
1.69 ns |
1.50 ns |
1.04 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
432.0 ns |
3.06 ns |
2.86 ns |
1.99 |
0.0205 |
344 B |
NA |
core-ubuntu-24.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.120 μs |
0.0044 μs |
0.0041 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
821.3 ns |
4.69 ns |
4.39 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
811.8 ns |
5.92 ns |
5.24 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,011.4 ns |
5.96 ns |
4.98 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,473.7 ns |
6.35 ns |
4.95 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
309.7 ns |
2.80 ns |
2.49 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
310.0 ns |
1.69 ns |
1.58 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
490.2 ns |
2.21 ns |
1.96 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,052.8 ns |
22.76 ns |
19.01 ns |
0.0420 |
712 B |
core-ubuntu-24.04_net8.0_graalvm_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
399.22 ns |
2.198 ns |
2.056 ns |
0.0046 |
80 B |
| PredicateSustained |
False |
False |
True |
398.63 ns |
2.686 ns |
2.513 ns |
0.0046 |
80 B |
| PredicateSustained |
False |
True |
False |
534.79 ns |
3.067 ns |
2.869 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,094.84 ns |
11.291 ns |
10.009 ns |
0.0450 |
768 B |
| PredicateSustained |
True |
False |
False |
31.95 ns |
0.186 ns |
0.165 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
32.86 ns |
0.322 ns |
0.301 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
146.50 ns |
0.374 ns |
0.332 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,593.84 ns |
14.618 ns |
12.958 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
603.4 ns |
5.75 ns |
5.37 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
7,127.7 ns |
28.75 ns |
25.49 ns |
11.81 |
0.11 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,340.5 ns |
3.72 ns |
3.30 ns |
2.22 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,329.0 ns |
6.12 ns |
5.73 ns |
2.20 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,725.7 ns |
52.39 ns |
49.01 ns |
14.46 |
0.15 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
605.4 ns |
6.67 ns |
6.24 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
536,423.5 ns |
2,245.54 ns |
1,875.13 ns |
886.14 |
9.40 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,976.3 ns |
13.56 ns |
12.68 ns |
3.26 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,999.9 ns |
15.41 ns |
13.66 ns |
3.30 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
725,902.0 ns |
4,313.54 ns |
4,034.89 ns |
1,199.14 |
13.67 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
603.7 ns |
7.79 ns |
7.29 ns |
1.00 |
0.02 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
61,127,894.1 ns |
1,105,715.73 ns |
1,034,287.18 ns |
101,268.75 |
2,041.45 |
1000.0000 |
875.0000 |
250.0000 |
16002318 B |
46,518.37 |
| InvokeIntArrayFixed |
100000 |
65,602.9 ns |
322.29 ns |
301.47 ns |
108.68 |
1.37 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
65,419.7 ns |
232.28 ns |
217.28 ns |
108.38 |
1.32 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
84,963,270.4 ns |
1,156,689.30 ns |
1,081,967.88 ns |
140,756.10 |
2,396.98 |
1833.3333 |
1666.6667 |
833.3333 |
27897653 B |
81,097.83 |
core-ubuntu-24.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.215 μs |
0.0043 μs |
0.0038 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.245 μs |
0.0073 μs |
0.0069 μs |
1.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.257 μs |
0.0046 μs |
0.0043 μs |
1.03 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
93.00 ns |
0.574 ns |
0.509 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
127.03 ns |
1.364 ns |
1.276 ns |
1.37 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
94.95 ns |
1.172 ns |
1.096 ns |
1.02 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
692.10 ns |
3.862 ns |
3.424 ns |
7.44 |
0.05 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
100.19 ns |
0.908 ns |
0.850 ns |
1.08 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
123.91 ns |
1.287 ns |
1.204 ns |
1.33 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
92.92 ns |
0.663 ns |
0.621 ns |
1.00 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
719.40 ns |
4.191 ns |
3.920 ns |
7.74 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
128.10 ns |
0.836 ns |
0.742 ns |
1.38 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
371.6 ns |
5.97 ns |
5.59 ns |
1.00 |
0.02 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
324.9 ns |
3.27 ns |
2.90 ns |
0.87 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
590.2 ns |
2.69 ns |
2.38 ns |
1.59 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
373.7 ns |
3.25 ns |
2.89 ns |
1.01 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
588.0 ns |
6.98 ns |
6.53 ns |
1.58 |
0.03 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.492 μs |
0.0057 μs |
0.0051 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,078.1 ns |
12.99 ns |
12.15 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,096.8 ns |
10.46 ns |
9.79 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,400.4 ns |
7.63 ns |
7.14 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,917.3 ns |
21.82 ns |
19.34 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
412.6 ns |
3.85 ns |
3.60 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
415.8 ns |
6.26 ns |
5.85 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
647.6 ns |
2.67 ns |
2.50 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,061.9 ns |
21.57 ns |
20.17 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_microsoft_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
602.92 ns |
5.129 ns |
4.797 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
False |
True |
603.74 ns |
7.803 ns |
7.299 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
True |
False |
771.56 ns |
6.956 ns |
6.506 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,281.90 ns |
24.696 ns |
23.101 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
38.00 ns |
0.406 ns |
0.360 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
38.32 ns |
0.312 ns |
0.292 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
193.15 ns |
1.391 ns |
1.301 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,539.64 ns |
13.925 ns |
13.025 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
549.0 ns |
2.07 ns |
1.83 ns |
1.00 |
0.00 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,441.7 ns |
31.32 ns |
27.77 ns |
11.73 |
0.06 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,280.2 ns |
4.08 ns |
3.62 ns |
2.33 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,300.5 ns |
5.15 ns |
4.02 ns |
2.37 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,790.4 ns |
143.56 ns |
141.00 ns |
16.01 |
0.25 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
555.2 ns |
3.47 ns |
3.08 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
477,079.4 ns |
2,030.51 ns |
1,899.34 ns |
859.25 |
5.67 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,985.6 ns |
19.03 ns |
15.89 ns |
3.58 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,014.4 ns |
11.50 ns |
9.60 ns |
3.63 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
689,211.7 ns |
4,660.93 ns |
4,131.79 ns |
1,241.32 |
9.79 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
534.2 ns |
3.16 ns |
2.64 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,568,905.4 ns |
857,252.93 ns |
801,874.93 ns |
111,503.55 |
1,547.45 |
1111.1111 |
1000.0000 |
333.3333 |
16002567 B |
46,519.09 |
| InvokeIntArrayFixed |
100000 |
63,530.6 ns |
432.69 ns |
361.32 ns |
118.92 |
0.86 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
62,698.9 ns |
310.55 ns |
290.49 ns |
117.36 |
0.77 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,189,934.5 ns |
1,478,318.89 ns |
1,310,491.19 ns |
161,333.90 |
2,491.38 |
1833.3333 |
1666.6667 |
833.3333 |
27897695 B |
81,097.95 |
core-ubuntu-24.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.173 μs |
0.0095 μs |
0.0079 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.178 μs |
0.0064 μs |
0.0060 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.159 μs |
0.0059 μs |
0.0053 μs |
0.99 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
101.5 ns |
0.36 ns |
0.30 ns |
1.00 |
0.00 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
123.7 ns |
1.35 ns |
1.27 ns |
1.22 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
102.6 ns |
0.62 ns |
0.52 ns |
1.01 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
643.1 ns |
2.55 ns |
2.26 ns |
6.34 |
0.03 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
116.7 ns |
1.08 ns |
1.01 ns |
1.15 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
134.4 ns |
1.08 ns |
1.01 ns |
1.32 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
100.6 ns |
0.63 ns |
0.59 ns |
0.99 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
650.9 ns |
3.52 ns |
3.12 ns |
6.41 |
0.03 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
138.3 ns |
0.99 ns |
0.88 ns |
1.36 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
298.7 ns |
2.11 ns |
1.97 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
262.2 ns |
1.28 ns |
1.07 ns |
0.88 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
530.3 ns |
4.23 ns |
3.75 ns |
1.78 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
289.4 ns |
1.37 ns |
1.22 ns |
0.97 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
549.9 ns |
4.26 ns |
3.99 ns |
1.84 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.466 μs |
0.0051 μs |
0.0045 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,057.4 ns |
9.30 ns |
8.24 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,018.9 ns |
5.99 ns |
5.31 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,256.7 ns |
4.32 ns |
3.83 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,496.8 ns |
18.88 ns |
16.73 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
399.7 ns |
4.28 ns |
4.00 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
404.0 ns |
3.92 ns |
3.67 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
607.1 ns |
2.80 ns |
2.34 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,822.0 ns |
13.26 ns |
11.76 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_microsoft_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
516.45 ns |
3.895 ns |
3.253 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
514.16 ns |
3.679 ns |
3.262 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
694.94 ns |
3.896 ns |
3.454 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,963.49 ns |
32.551 ns |
30.448 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
39.88 ns |
0.386 ns |
0.323 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
40.03 ns |
0.342 ns |
0.320 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
186.67 ns |
0.764 ns |
0.677 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,365.76 ns |
19.057 ns |
15.914 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.97GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
570.0 ns |
4.43 ns |
4.14 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,361.4 ns |
17.26 ns |
14.42 ns |
11.16 |
0.08 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,220.8 ns |
3.40 ns |
2.84 ns |
2.14 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,256.2 ns |
6.07 ns |
5.07 ns |
2.20 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,613.1 ns |
58.16 ns |
54.41 ns |
15.11 |
0.14 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
587.7 ns |
5.17 ns |
4.84 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
472,763.2 ns |
1,734.13 ns |
1,537.26 ns |
804.43 |
6.92 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,875.5 ns |
7.49 ns |
7.00 ns |
3.19 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,918.7 ns |
10.31 ns |
9.64 ns |
3.26 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
678,518.7 ns |
3,314.62 ns |
2,938.32 ns |
1,154.54 |
10.42 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
595.7 ns |
3.61 ns |
3.38 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,944,120.7 ns |
584,013.16 ns |
546,286.27 ns |
98,956.86 |
1,041.37 |
1111.1111 |
1000.0000 |
333.3333 |
16002343 B |
46,518.44 |
| InvokeIntArrayFixed |
100000 |
66,765.7 ns |
228.39 ns |
202.46 ns |
112.09 |
0.70 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
67,001.2 ns |
370.09 ns |
328.08 ns |
112.48 |
0.82 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
83,837,695.0 ns |
949,701.42 ns |
888,351.30 ns |
140,748.81 |
1,638.25 |
1833.3333 |
1666.6667 |
833.3333 |
27896443 B |
81,094.31 |
core-ubuntu-24.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.97GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.154 μs |
0.0043 μs |
0.0038 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.186 μs |
0.0042 μs |
0.0039 μs |
1.03 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.175 μs |
0.0039 μs |
0.0036 μs |
1.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.97GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
87.02 ns |
1.069 ns |
1.000 ns |
1.00 |
0.02 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
108.22 ns |
0.999 ns |
0.934 ns |
1.24 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
89.18 ns |
0.876 ns |
0.819 ns |
1.02 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
647.63 ns |
3.474 ns |
3.250 ns |
7.44 |
0.09 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
99.66 ns |
0.687 ns |
0.609 ns |
1.15 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
109.05 ns |
0.601 ns |
0.532 ns |
1.25 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
84.37 ns |
0.850 ns |
0.795 ns |
0.97 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
651.07 ns |
4.465 ns |
4.176 ns |
7.48 |
0.10 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
121.07 ns |
1.401 ns |
1.310 ns |
1.39 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.97GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
303.6 ns |
2.50 ns |
2.34 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
252.9 ns |
2.72 ns |
2.55 ns |
0.83 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
576.6 ns |
5.82 ns |
5.44 ns |
1.90 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
306.8 ns |
3.47 ns |
3.25 ns |
1.01 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
585.1 ns |
3.43 ns |
3.21 ns |
1.93 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.97GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.464 μs |
0.0082 μs |
0.0076 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.97GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
982.2 ns |
13.72 ns |
12.83 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
993.7 ns |
5.64 ns |
4.71 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,204.6 ns |
6.22 ns |
5.82 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,375.6 ns |
38.48 ns |
32.13 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
425.2 ns |
3.40 ns |
3.02 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
424.8 ns |
4.08 ns |
3.81 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
624.3 ns |
1.70 ns |
1.59 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,753.9 ns |
11.67 ns |
10.92 ns |
0.0420 |
712 B |
core-ubuntu-24.04_net8.0_microsoft_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.97GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
518.60 ns |
5.956 ns |
5.572 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
524.77 ns |
5.935 ns |
5.261 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
True |
False |
704.55 ns |
4.031 ns |
3.771 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,856.29 ns |
17.407 ns |
14.535 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
38.70 ns |
0.344 ns |
0.305 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
38.89 ns |
0.279 ns |
0.261 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
193.94 ns |
2.267 ns |
2.121 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,234.18 ns |
17.879 ns |
14.930 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
485.5 ns |
4.64 ns |
4.34 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,269.9 ns |
37.08 ns |
32.87 ns |
12.92 |
0.13 |
0.0229 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
995.6 ns |
6.31 ns |
5.59 ns |
2.05 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
996.6 ns |
7.62 ns |
7.13 ns |
2.05 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,206.3 ns |
54.56 ns |
45.56 ns |
16.90 |
0.17 |
0.0305 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
489.7 ns |
5.73 ns |
5.36 ns |
1.00 |
0.02 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
499,472.0 ns |
2,390.44 ns |
2,119.06 ns |
1,019.99 |
11.62 |
0.9766 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,824.3 ns |
12.08 ns |
11.30 ns |
3.73 |
0.05 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,809.3 ns |
10.87 ns |
10.17 ns |
3.69 |
0.04 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
660,291.5 ns |
3,424.08 ns |
3,202.89 ns |
1,348.41 |
15.67 |
2.9297 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
496.2 ns |
7.75 ns |
7.25 ns |
1.00 |
0.02 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
55,483,883.3 ns |
314,309.38 ns |
262,462.56 ns |
111,836.44 |
1,673.72 |
333.3333 |
222.2222 |
222.2222 |
16001948 B |
46,517.29 |
| InvokeIntArrayFixed |
100000 |
77,161.3 ns |
406.56 ns |
360.41 ns |
155.53 |
2.33 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
77,246.1 ns |
363.55 ns |
340.07 ns |
155.70 |
2.32 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
76,984,103.7 ns |
1,340,808.91 ns |
1,254,193.49 ns |
155,173.49 |
3,298.84 |
1000.0000 |
857.1429 |
857.1429 |
27894642 B |
81,089.08 |
core-ubuntu-24.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.196 μs |
0.0113 μs |
0.0106 μs |
1.00 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.044 μs |
0.0035 μs |
0.0033 μs |
0.87 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.243 μs |
0.0133 μs |
0.0117 μs |
1.04 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
87.88 ns |
0.615 ns |
0.576 ns |
1.00 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
101.98 ns |
0.650 ns |
0.608 ns |
1.16 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
87.85 ns |
0.686 ns |
0.642 ns |
1.00 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
615.79 ns |
4.651 ns |
4.123 ns |
7.01 |
0.06 |
0.0029 |
288 B |
12.00 |
| GetStaticIntField |
91.18 ns |
0.756 ns |
0.707 ns |
1.04 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
98.06 ns |
0.590 ns |
0.523 ns |
1.12 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
82.45 ns |
0.422 ns |
0.374 ns |
0.94 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
619.32 ns |
4.483 ns |
4.194 ns |
7.05 |
0.06 |
0.0029 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
106.52 ns |
0.527 ns |
0.468 ns |
1.21 |
0.01 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
257.3 ns |
2.23 ns |
2.08 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
225.3 ns |
1.72 ns |
1.61 ns |
0.88 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
475.2 ns |
4.04 ns |
3.58 ns |
1.85 |
0.02 |
0.0038 |
344 B |
NA |
| InvokeInstanceEmpty |
249.1 ns |
1.39 ns |
1.08 ns |
0.97 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
487.7 ns |
4.29 ns |
4.01 ns |
1.90 |
0.02 |
0.0038 |
344 B |
NA |
core-ubuntu-24.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.197 μs |
0.0065 μs |
0.0060 μs |
1.00 |
0.0076 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
834.4 ns |
6.85 ns |
6.41 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
836.3 ns |
6.43 ns |
6.02 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,023.1 ns |
4.14 ns |
3.87 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,642.0 ns |
27.21 ns |
25.45 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
340.3 ns |
3.04 ns |
2.69 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
344.5 ns |
3.46 ns |
3.24 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
532.8 ns |
6.56 ns |
5.81 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,107.4 ns |
23.04 ns |
21.55 ns |
0.0076 |
712 B |
core-ubuntu-24.04_net8.0_microsoft_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
483.50 ns |
2.925 ns |
2.593 ns |
0.0009 |
80 B |
| PredicateSustained |
False |
False |
True |
471.18 ns |
3.780 ns |
3.351 ns |
0.0009 |
80 B |
| PredicateSustained |
False |
True |
False |
650.06 ns |
4.830 ns |
4.518 ns |
0.0013 |
176 B |
| PredicateSustained |
False |
True |
True |
3,275.66 ns |
28.001 ns |
24.822 ns |
0.0050 |
768 B |
| PredicateSustained |
True |
False |
False |
51.54 ns |
1.008 ns |
1.628 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
51.75 ns |
1.018 ns |
1.644 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
198.52 ns |
0.859 ns |
0.761 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
2,801.33 ns |
22.014 ns |
20.592 ns |
0.0050 |
688 B |
core-ubuntu-24.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
560.6 ns |
3.66 ns |
3.06 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,722.7 ns |
101.06 ns |
89.58 ns |
11.99 |
0.17 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,272.6 ns |
4.50 ns |
3.76 ns |
2.27 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,257.4 ns |
9.57 ns |
8.95 ns |
2.24 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,765.7 ns |
43.25 ns |
38.34 ns |
15.64 |
0.11 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
565.6 ns |
4.23 ns |
3.53 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
498,500.6 ns |
3,128.36 ns |
2,773.21 ns |
881.42 |
7.07 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,013.2 ns |
9.19 ns |
7.67 ns |
3.56 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,028.0 ns |
12.69 ns |
11.25 ns |
3.59 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
683,846.3 ns |
3,108.21 ns |
2,595.49 ns |
1,209.13 |
8.45 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
560.4 ns |
3.02 ns |
2.82 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
61,360,330.8 ns |
908,498.47 ns |
849,810.03 ns |
109,505.69 |
1,562.22 |
1000.0000 |
875.0000 |
250.0000 |
16000911 B |
46,514.28 |
| InvokeIntArrayFixed |
100000 |
64,845.8 ns |
510.95 ns |
477.94 ns |
115.73 |
1.00 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
65,313.8 ns |
454.30 ns |
402.73 ns |
116.56 |
0.90 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
88,580,931.6 ns |
1,413,165.39 ns |
1,387,917.37 ns |
158,084.48 |
2,523.48 |
1833.3333 |
1666.6667 |
833.3333 |
27895921 B |
81,092.79 |
core-ubuntu-24.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.184 μs |
0.0060 μs |
0.0056 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.185 μs |
0.0075 μs |
0.0070 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.175 μs |
0.0083 μs |
0.0074 μs |
0.99 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
104.88 ns |
0.690 ns |
0.646 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
141.93 ns |
1.577 ns |
1.317 ns |
1.35 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
103.73 ns |
0.814 ns |
0.722 ns |
0.99 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
693.41 ns |
5.263 ns |
4.395 ns |
6.61 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
113.73 ns |
0.891 ns |
0.834 ns |
1.08 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
124.44 ns |
0.975 ns |
0.912 ns |
1.19 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
98.97 ns |
0.983 ns |
0.919 ns |
0.94 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
663.96 ns |
5.131 ns |
4.549 ns |
6.33 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
141.01 ns |
1.628 ns |
1.523 ns |
1.34 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
273.0 ns |
2.29 ns |
2.14 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
254.5 ns |
1.92 ns |
1.79 ns |
0.93 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
539.8 ns |
3.51 ns |
2.93 ns |
1.98 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
282.9 ns |
2.43 ns |
2.27 ns |
1.04 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
556.8 ns |
2.34 ns |
1.95 ns |
2.04 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.448 μs |
0.0146 μs |
0.0130 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,059.3 ns |
10.24 ns |
9.58 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,093.5 ns |
5.62 ns |
4.70 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,287.2 ns |
6.93 ns |
5.41 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,518.4 ns |
18.21 ns |
16.14 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
407.0 ns |
2.74 ns |
2.56 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
409.3 ns |
3.40 ns |
3.01 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
636.5 ns |
2.46 ns |
2.18 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,901.8 ns |
21.85 ns |
19.37 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_oracle_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
535.13 ns |
7.560 ns |
6.702 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
522.87 ns |
4.015 ns |
3.756 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
750.15 ns |
7.223 ns |
6.403 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,022.97 ns |
26.004 ns |
24.324 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
39.42 ns |
0.262 ns |
0.219 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
39.37 ns |
0.409 ns |
0.382 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
188.34 ns |
2.695 ns |
2.389 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,358.10 ns |
46.614 ns |
38.925 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
479.5 ns |
2.38 ns |
1.86 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
4,793.9 ns |
28.44 ns |
25.21 ns |
10.00 |
0.06 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
950.9 ns |
4.13 ns |
3.87 ns |
1.98 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
963.3 ns |
4.56 ns |
3.81 ns |
2.01 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
6,712.8 ns |
63.61 ns |
56.39 ns |
14.00 |
0.13 |
0.2060 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
418.5 ns |
2.20 ns |
2.06 ns |
1.00 |
0.01 |
0.0205 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
359,150.0 ns |
1,885.37 ns |
1,671.33 ns |
858.15 |
5.62 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,567.0 ns |
10.75 ns |
9.53 ns |
3.74 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,567.2 ns |
8.75 ns |
7.31 ns |
3.74 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
524,828.5 ns |
3,086.58 ns |
2,577.44 ns |
1,254.02 |
8.42 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
415.5 ns |
5.63 ns |
5.26 ns |
1.00 |
0.02 |
0.0205 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
44,926,852.5 ns |
692,300.38 ns |
647,578.20 ns |
108,147.02 |
2,004.81 |
1000.0000 |
909.0909 |
272.7273 |
16001098 B |
46,514.82 |
| InvokeIntArrayFixed |
100000 |
51,101.3 ns |
202.67 ns |
179.66 ns |
123.01 |
1.56 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
51,196.9 ns |
221.83 ns |
196.65 ns |
123.24 |
1.57 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
72,883,943.9 ns |
1,373,805.71 ns |
1,217,842.98 ns |
175,444.77 |
3,550.01 |
2142.8571 |
2000.0000 |
1000.0000 |
27897019 B |
81,095.99 |
core-ubuntu-24.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
898.6 ns |
3.92 ns |
3.47 ns |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
923.2 ns |
3.15 ns |
2.94 ns |
1.03 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
887.1 ns |
4.86 ns |
4.06 ns |
0.99 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
77.83 ns |
0.541 ns |
0.506 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
89.39 ns |
0.475 ns |
0.371 ns |
1.15 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
78.61 ns |
0.772 ns |
0.722 ns |
1.01 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
493.84 ns |
2.368 ns |
2.099 ns |
6.35 |
0.05 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
88.52 ns |
0.602 ns |
0.534 ns |
1.14 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
91.15 ns |
0.411 ns |
0.385 ns |
1.17 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
75.91 ns |
0.603 ns |
0.564 ns |
0.98 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
489.66 ns |
4.057 ns |
3.795 ns |
6.29 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
102.16 ns |
0.704 ns |
0.659 ns |
1.31 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
216.3 ns |
2.14 ns |
2.00 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
197.4 ns |
0.85 ns |
0.80 ns |
0.91 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
415.1 ns |
3.58 ns |
3.18 ns |
1.92 |
0.02 |
0.0205 |
344 B |
NA |
| InvokeInstanceEmpty |
221.8 ns |
1.22 ns |
1.08 ns |
1.03 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
401.8 ns |
2.16 ns |
1.81 ns |
1.86 |
0.02 |
0.0205 |
344 B |
NA |
core-ubuntu-24.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.091 μs |
0.0062 μs |
0.0055 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
851.9 ns |
3.36 ns |
2.97 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
778.0 ns |
4.34 ns |
4.06 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
978.8 ns |
2.80 ns |
2.48 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,481.1 ns |
13.51 ns |
12.64 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
300.4 ns |
1.82 ns |
1.70 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
301.6 ns |
2.72 ns |
2.41 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
489.7 ns |
2.57 ns |
2.15 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,943.3 ns |
10.92 ns |
10.22 ns |
0.0420 |
712 B |
core-ubuntu-24.04_net8.0_oracle_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
394.15 ns |
1.948 ns |
1.822 ns |
0.0046 |
80 B |
| PredicateSustained |
False |
False |
True |
393.24 ns |
3.958 ns |
3.305 ns |
0.0046 |
80 B |
| PredicateSustained |
False |
True |
False |
541.53 ns |
3.813 ns |
3.380 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,013.59 ns |
12.982 ns |
10.841 ns |
0.0450 |
768 B |
| PredicateSustained |
True |
False |
False |
31.27 ns |
0.142 ns |
0.133 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
31.98 ns |
0.275 ns |
0.257 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
143.67 ns |
0.624 ns |
0.583 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
2,535.44 ns |
29.495 ns |
26.146 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
610.3 ns |
3.99 ns |
3.33 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,315.5 ns |
26.68 ns |
24.95 ns |
10.35 |
0.07 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,299.7 ns |
4.85 ns |
4.54 ns |
2.13 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,305.5 ns |
11.41 ns |
10.11 ns |
2.14 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,647.0 ns |
39.13 ns |
36.60 ns |
14.17 |
0.09 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
604.5 ns |
4.33 ns |
3.84 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
476,691.8 ns |
3,593.82 ns |
3,361.66 ns |
788.58 |
7.24 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,967.5 ns |
15.68 ns |
13.90 ns |
3.25 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,941.1 ns |
5.03 ns |
4.20 ns |
3.21 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
713,017.1 ns |
3,155.23 ns |
2,951.41 ns |
1,179.53 |
8.65 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
588.6 ns |
3.60 ns |
3.37 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,260,419.5 ns |
638,092.66 ns |
596,872.27 ns |
100,684.74 |
1,129.26 |
1111.1111 |
1000.0000 |
333.3333 |
16002740 B |
46,519.59 |
| InvokeIntArrayFixed |
100000 |
65,568.3 ns |
156.41 ns |
138.65 ns |
111.40 |
0.66 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
65,555.8 ns |
460.17 ns |
430.44 ns |
111.38 |
0.94 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,805,294.8 ns |
1,275,538.57 ns |
1,130,731.72 ns |
145,785.06 |
2,023.87 |
1833.3333 |
1666.6667 |
833.3333 |
27896559 B |
81,094.65 |
core-ubuntu-24.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.190 μs |
0.0053 μs |
0.0044 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.191 μs |
0.0046 μs |
0.0043 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.192 μs |
0.0057 μs |
0.0053 μs |
1.00 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
87.07 ns |
0.410 ns |
0.364 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
112.77 ns |
0.716 ns |
0.669 ns |
1.30 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
88.49 ns |
0.807 ns |
0.754 ns |
1.02 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
638.52 ns |
3.450 ns |
3.227 ns |
7.33 |
0.05 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
94.34 ns |
0.869 ns |
0.726 ns |
1.08 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
110.86 ns |
0.950 ns |
0.889 ns |
1.27 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
89.37 ns |
0.748 ns |
0.700 ns |
1.03 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
653.50 ns |
1.682 ns |
1.491 ns |
7.51 |
0.03 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
121.20 ns |
0.722 ns |
0.675 ns |
1.39 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
293.9 ns |
2.59 ns |
2.43 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
258.0 ns |
2.42 ns |
2.02 ns |
0.88 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
619.8 ns |
3.26 ns |
3.05 ns |
2.11 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
316.7 ns |
2.97 ns |
2.78 ns |
1.08 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
599.2 ns |
3.94 ns |
3.49 ns |
2.04 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.465 μs |
0.0046 μs |
0.0038 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,027.5 ns |
10.90 ns |
10.19 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,015.5 ns |
11.64 ns |
10.88 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,275.9 ns |
7.59 ns |
6.34 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,668.7 ns |
23.51 ns |
21.99 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
448.4 ns |
4.72 ns |
4.42 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
439.2 ns |
3.91 ns |
3.65 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
642.3 ns |
2.36 ns |
2.09 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,948.3 ns |
21.15 ns |
18.75 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_oracle_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
535.09 ns |
6.732 ns |
6.297 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
538.63 ns |
7.257 ns |
6.060 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
730.85 ns |
6.014 ns |
5.626 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,092.01 ns |
35.370 ns |
31.355 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
38.41 ns |
0.194 ns |
0.181 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
38.67 ns |
0.286 ns |
0.268 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
195.66 ns |
0.591 ns |
0.494 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,352.75 ns |
22.429 ns |
19.883 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
570.7 ns |
3.39 ns |
3.00 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,533.1 ns |
59.62 ns |
52.85 ns |
11.45 |
0.11 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,282.8 ns |
5.54 ns |
4.32 ns |
2.25 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,303.5 ns |
8.22 ns |
7.69 ns |
2.28 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,668.9 ns |
61.38 ns |
57.42 ns |
15.19 |
0.12 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
574.9 ns |
3.89 ns |
3.63 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
504,981.5 ns |
3,516.15 ns |
3,116.98 ns |
878.46 |
7.50 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,068.5 ns |
6.53 ns |
5.79 ns |
3.60 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,066.7 ns |
12.74 ns |
11.92 ns |
3.60 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
688,329.5 ns |
2,619.24 ns |
2,321.89 ns |
1,197.41 |
8.29 |
15.6250 |
6.8359 |
- |
265889 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
543.3 ns |
3.44 ns |
3.22 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,063,017.1 ns |
754,816.13 ns |
706,055.47 ns |
110,550.81 |
1,408.87 |
1000.0000 |
875.0000 |
250.0000 |
16000983 B |
46,514.49 |
| InvokeIntArrayFixed |
100000 |
63,850.8 ns |
303.56 ns |
253.49 ns |
117.52 |
0.81 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
63,561.2 ns |
214.40 ns |
190.06 ns |
116.99 |
0.75 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
87,430,640.0 ns |
784,162.64 ns |
733,506.22 ns |
160,923.12 |
1,599.92 |
1833.3333 |
1666.6667 |
833.3333 |
27895828 B |
81,092.52 |
core-ubuntu-24.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.237 μs |
0.0046 μs |
0.0041 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.259 μs |
0.0045 μs |
0.0040 μs |
1.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.211 μs |
0.0079 μs |
0.0074 μs |
0.98 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
104.9 ns |
0.72 ns |
0.67 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
137.0 ns |
1.33 ns |
1.25 ns |
1.31 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
109.7 ns |
0.84 ns |
0.79 ns |
1.05 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
660.8 ns |
2.08 ns |
1.74 ns |
6.30 |
0.04 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
111.9 ns |
0.87 ns |
0.81 ns |
1.07 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
133.8 ns |
1.80 ns |
1.69 ns |
1.28 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
107.0 ns |
0.85 ns |
0.79 ns |
1.02 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
659.9 ns |
4.39 ns |
4.10 ns |
6.29 |
0.05 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
148.5 ns |
1.32 ns |
1.23 ns |
1.42 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
328.3 ns |
1.91 ns |
1.69 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
293.0 ns |
2.29 ns |
2.14 ns |
0.89 |
- |
- |
NA |
| InvokeStaticWithFeedback |
530.0 ns |
2.65 ns |
2.35 ns |
1.61 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
350.7 ns |
2.36 ns |
2.09 ns |
1.07 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
564.1 ns |
3.76 ns |
3.34 ns |
1.72 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.534 μs |
0.0127 μs |
0.0119 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,106.5 ns |
6.44 ns |
6.03 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,085.9 ns |
5.64 ns |
5.28 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,304.9 ns |
3.34 ns |
2.96 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,695.8 ns |
49.13 ns |
43.55 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
413.3 ns |
5.51 ns |
5.16 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
419.1 ns |
3.31 ns |
3.09 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
655.6 ns |
3.89 ns |
3.44 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,084.7 ns |
23.61 ns |
22.08 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_temurin_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
564.70 ns |
3.235 ns |
3.026 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
False |
True |
557.92 ns |
3.743 ns |
3.318 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
719.31 ns |
5.359 ns |
4.751 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,124.55 ns |
21.875 ns |
20.462 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
42.61 ns |
0.520 ns |
0.487 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
40.78 ns |
0.316 ns |
0.295 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
187.75 ns |
1.542 ns |
1.442 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,443.03 ns |
15.303 ns |
12.778 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
559.3 ns |
5.46 ns |
5.11 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,412.2 ns |
42.61 ns |
37.78 ns |
11.46 |
0.12 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,300.5 ns |
8.24 ns |
7.71 ns |
2.33 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,260.6 ns |
6.35 ns |
5.63 ns |
2.25 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,665.9 ns |
101.82 ns |
95.24 ns |
15.49 |
0.21 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
553.1 ns |
5.36 ns |
5.01 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
483,498.2 ns |
2,990.04 ns |
2,650.59 ns |
874.22 |
8.93 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,981.4 ns |
11.37 ns |
9.49 ns |
3.58 |
0.04 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,985.0 ns |
21.17 ns |
19.81 ns |
3.59 |
0.05 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
682,302.9 ns |
3,390.66 ns |
3,005.73 ns |
1,233.69 |
11.99 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
548.5 ns |
2.34 ns |
1.96 ns |
1.00 |
0.00 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,122,284.4 ns |
988,270.30 ns |
876,075.88 ns |
107,781.91 |
1,587.20 |
1111.1111 |
1000.0000 |
333.3333 |
16001752 B |
46,516.72 |
| InvokeIntArrayFixed |
100000 |
62,896.1 ns |
270.59 ns |
253.11 ns |
114.66 |
0.60 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
62,840.7 ns |
389.05 ns |
363.92 ns |
114.56 |
0.75 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,802,317.7 ns |
1,058,932.18 ns |
990,525.82 ns |
156,420.50 |
1,829.93 |
1833.3333 |
1666.6667 |
833.3333 |
27896181 B |
81,093.55 |
core-ubuntu-24.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.169 μs |
0.0085 μs |
0.0079 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.173 μs |
0.0074 μs |
0.0062 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.158 μs |
0.0072 μs |
0.0067 μs |
0.99 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
100.4 ns |
0.70 ns |
0.65 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
120.5 ns |
0.91 ns |
0.85 ns |
1.20 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
104.5 ns |
0.83 ns |
0.78 ns |
1.04 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
631.7 ns |
2.59 ns |
2.42 ns |
6.29 |
0.05 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
122.7 ns |
0.85 ns |
0.75 ns |
1.22 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
127.7 ns |
1.42 ns |
1.33 ns |
1.27 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
101.2 ns |
0.76 ns |
0.71 ns |
1.01 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
638.3 ns |
4.48 ns |
4.19 ns |
6.36 |
0.06 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
137.1 ns |
1.50 ns |
1.40 ns |
1.37 |
0.02 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
273.4 ns |
1.49 ns |
1.39 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
251.4 ns |
2.52 ns |
2.24 ns |
0.92 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
517.6 ns |
3.06 ns |
2.86 ns |
1.89 |
0.01 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
278.8 ns |
2.08 ns |
1.95 ns |
1.02 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
533.5 ns |
5.44 ns |
4.82 ns |
1.95 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.403 μs |
0.0067 μs |
0.0056 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,007.0 ns |
8.07 ns |
7.54 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
995.7 ns |
10.06 ns |
9.41 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,281.9 ns |
7.15 ns |
6.34 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,457.7 ns |
30.19 ns |
26.76 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
384.2 ns |
2.14 ns |
2.00 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
386.4 ns |
2.38 ns |
2.23 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
623.0 ns |
3.77 ns |
3.15 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,826.9 ns |
18.58 ns |
16.47 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_temurin_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
511.53 ns |
4.876 ns |
4.561 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
510.96 ns |
3.486 ns |
3.261 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
689.23 ns |
4.521 ns |
3.775 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,917.58 ns |
29.677 ns |
27.760 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
39.99 ns |
0.173 ns |
0.153 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
40.09 ns |
0.446 ns |
0.417 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
185.63 ns |
1.627 ns |
1.522 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,263.65 ns |
31.991 ns |
29.924 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
444.1 ns |
8.68 ns |
13.76 ns |
1.00 |
0.04 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
5,620.3 ns |
72.71 ns |
68.01 ns |
12.67 |
0.42 |
0.0229 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
905.9 ns |
14.98 ns |
14.01 ns |
2.04 |
0.07 |
0.0048 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
924.2 ns |
16.40 ns |
15.34 ns |
2.08 |
0.07 |
0.0048 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
7,332.5 ns |
111.03 ns |
103.86 ns |
16.53 |
0.56 |
0.0381 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
453.6 ns |
8.90 ns |
16.04 ns |
1.00 |
0.05 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
451,459.5 ns |
8,589.15 ns |
9,546.81 ns |
996.51 |
40.88 |
1.4648 |
0.4883 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,654.7 ns |
19.27 ns |
16.09 ns |
3.65 |
0.13 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,634.9 ns |
7.49 ns |
6.64 ns |
3.61 |
0.13 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
573,524.7 ns |
4,822.53 ns |
4,027.04 ns |
1,265.94 |
45.72 |
2.9297 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
429.6 ns |
3.38 ns |
3.16 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
47,041,192.5 ns |
477,559.73 ns |
372,847.22 ns |
109,511.44 |
1,140.64 |
272.7273 |
181.8182 |
181.8182 |
16000927 B |
46,514.32 |
| InvokeIntArrayFixed |
100000 |
73,274.9 ns |
680.11 ns |
602.90 ns |
170.58 |
1.82 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
72,865.6 ns |
565.34 ns |
501.16 ns |
169.63 |
1.65 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
70,491,903.7 ns |
1,329,327.90 ns |
1,305,577.74 ns |
164,104.47 |
3,171.32 |
1000.0000 |
875.0000 |
875.0000 |
27894848 B |
81,089.67 |
core-ubuntu-24.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1,042.2 ns |
10.58 ns |
9.89 ns |
1.00 |
0.01 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
902.4 ns |
5.67 ns |
5.03 ns |
0.87 |
0.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1,071.6 ns |
20.40 ns |
17.04 ns |
1.03 |
0.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
77.00 ns |
1.427 ns |
1.335 ns |
1.00 |
0.02 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
93.29 ns |
1.228 ns |
1.089 ns |
1.21 |
0.02 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
82.05 ns |
0.795 ns |
0.744 ns |
1.07 |
0.02 |
- |
- |
0.00 |
| SetInstanceStringField |
534.21 ns |
10.639 ns |
8.884 ns |
6.94 |
0.16 |
0.0029 |
288 B |
12.00 |
| GetStaticIntField |
80.99 ns |
0.814 ns |
0.762 ns |
1.05 |
0.02 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
85.67 ns |
0.624 ns |
0.553 ns |
1.11 |
0.02 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
72.48 ns |
0.846 ns |
0.661 ns |
0.94 |
0.02 |
- |
- |
0.00 |
| SetStaticStringField |
562.16 ns |
3.192 ns |
2.665 ns |
7.30 |
0.13 |
0.0029 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
90.29 ns |
0.885 ns |
0.784 ns |
1.17 |
0.02 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
208.9 ns |
2.54 ns |
2.25 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
210.9 ns |
3.61 ns |
3.20 ns |
1.01 |
0.02 |
- |
- |
NA |
| InvokeStaticWithFeedback |
410.1 ns |
4.67 ns |
4.37 ns |
1.96 |
0.03 |
0.0038 |
344 B |
NA |
| InvokeInstanceEmpty |
221.0 ns |
2.60 ns |
2.31 ns |
1.06 |
0.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
431.5 ns |
8.22 ns |
8.07 ns |
2.07 |
0.04 |
0.0038 |
344 B |
NA |
core-ubuntu-24.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.088 μs |
0.0162 μs |
0.0152 μs |
1.00 |
0.02 |
0.0076 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
727.1 ns |
12.43 ns |
11.02 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
741.3 ns |
9.83 ns |
9.20 ns |
0.0010 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
915.8 ns |
10.42 ns |
9.24 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,108.3 ns |
25.86 ns |
24.19 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
288.3 ns |
5.41 ns |
4.23 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
286.1 ns |
3.37 ns |
2.99 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
470.0 ns |
5.38 ns |
5.03 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
2,683.2 ns |
44.25 ns |
39.23 ns |
0.0076 |
712 B |
core-ubuntu-24.04_net8.0_temurin_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
419.54 ns |
6.058 ns |
5.059 ns |
0.0008 |
80 B |
| PredicateSustained |
False |
False |
True |
413.71 ns |
4.185 ns |
3.495 ns |
0.0008 |
80 B |
| PredicateSustained |
False |
True |
False |
578.87 ns |
5.884 ns |
4.913 ns |
0.0011 |
176 B |
| PredicateSustained |
False |
True |
True |
2,838.01 ns |
29.751 ns |
26.374 ns |
0.0050 |
768 B |
| PredicateSustained |
True |
False |
False |
48.56 ns |
0.962 ns |
1.710 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
46.81 ns |
0.903 ns |
1.266 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
184.52 ns |
2.840 ns |
2.517 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
2,446.83 ns |
26.381 ns |
23.386 ns |
0.0050 |
688 B |
core-ubuntu-24.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
625.5 ns |
4.27 ns |
4.00 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,312.2 ns |
32.10 ns |
28.46 ns |
10.09 |
0.08 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,293.8 ns |
8.56 ns |
8.00 ns |
2.07 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,306.3 ns |
7.04 ns |
6.58 ns |
2.09 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
9,004.0 ns |
62.00 ns |
57.99 ns |
14.39 |
0.13 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
603.9 ns |
3.60 ns |
3.01 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
479,775.3 ns |
4,686.62 ns |
4,383.87 ns |
794.45 |
7.99 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,956.6 ns |
12.59 ns |
11.16 ns |
3.24 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,009.8 ns |
20.34 ns |
19.03 ns |
3.33 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
705,140.1 ns |
3,231.08 ns |
2,864.27 ns |
1,167.62 |
7.23 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
624.3 ns |
5.16 ns |
4.57 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,894,738.7 ns |
659,846.34 ns |
617,220.67 ns |
95,938.60 |
1,173.77 |
1111.1111 |
1000.0000 |
333.3333 |
16002268 B |
46,518.22 |
| InvokeIntArrayFixed |
100000 |
68,023.0 ns |
602.89 ns |
563.94 ns |
108.96 |
1.17 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
67,952.7 ns |
403.48 ns |
377.42 ns |
108.85 |
0.97 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
85,866,582.0 ns |
566,922.33 ns |
473,405.82 ns |
137,539.96 |
1,217.38 |
1833.3333 |
1666.6667 |
833.3333 |
27896968 B |
81,095.84 |
core-ubuntu-24.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.231 μs |
0.0058 μs |
0.0052 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.226 μs |
0.0074 μs |
0.0066 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.221 μs |
0.0035 μs |
0.0033 μs |
0.99 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
87.45 ns |
0.778 ns |
0.690 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
112.78 ns |
0.671 ns |
0.628 ns |
1.29 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
91.99 ns |
1.033 ns |
0.967 ns |
1.05 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
646.73 ns |
5.469 ns |
5.116 ns |
7.40 |
0.08 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
101.25 ns |
0.922 ns |
0.862 ns |
1.16 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
108.08 ns |
0.948 ns |
0.886 ns |
1.24 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
84.81 ns |
0.717 ns |
0.599 ns |
0.97 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
636.96 ns |
7.536 ns |
7.049 ns |
7.28 |
0.10 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
130.35 ns |
0.436 ns |
0.364 ns |
1.49 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
314.4 ns |
2.44 ns |
2.16 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
267.6 ns |
2.40 ns |
2.12 ns |
0.85 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
585.1 ns |
4.42 ns |
4.13 ns |
1.86 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
299.8 ns |
4.07 ns |
3.81 ns |
0.95 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
593.2 ns |
3.35 ns |
3.13 ns |
1.89 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.480 μs |
0.0076 μs |
0.0071 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,058.1 ns |
12.11 ns |
11.33 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,061.4 ns |
16.47 ns |
15.40 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,341.1 ns |
4.89 ns |
4.09 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,734.3 ns |
30.47 ns |
28.51 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
431.7 ns |
3.32 ns |
2.94 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
435.5 ns |
2.88 ns |
2.69 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
646.5 ns |
3.12 ns |
2.77 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,907.5 ns |
29.39 ns |
27.49 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_temurin_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
528.39 ns |
5.572 ns |
5.212 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
517.10 ns |
3.574 ns |
3.168 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
721.86 ns |
7.748 ns |
6.470 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,091.03 ns |
23.723 ns |
22.190 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
39.28 ns |
0.463 ns |
0.410 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
39.58 ns |
0.253 ns |
0.211 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
197.11 ns |
1.520 ns |
1.422 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,343.31 ns |
23.504 ns |
20.836 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
493.6 ns |
3.60 ns |
3.37 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,650.1 ns |
30.32 ns |
28.36 ns |
13.47 |
0.10 |
0.0229 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,066.1 ns |
9.09 ns |
8.50 ns |
2.16 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,070.4 ns |
7.00 ns |
6.55 ns |
2.17 |
0.02 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,393.7 ns |
62.34 ns |
58.31 ns |
17.01 |
0.16 |
0.0305 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
492.7 ns |
3.22 ns |
3.01 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
527,699.9 ns |
2,633.64 ns |
2,463.51 ns |
1,071.03 |
7.97 |
0.9766 |
- |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,900.3 ns |
14.29 ns |
12.67 ns |
3.86 |
0.03 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,893.8 ns |
13.64 ns |
12.76 ns |
3.84 |
0.03 |
0.0038 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
699,537.1 ns |
5,202.36 ns |
4,866.29 ns |
1,419.80 |
12.72 |
2.9297 |
0.9766 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
501.5 ns |
3.88 ns |
3.63 ns |
1.00 |
0.01 |
0.0038 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
59,101,546.2 ns |
444,988.95 ns |
416,242.94 ns |
117,860.42 |
1,149.96 |
333.3333 |
222.2222 |
222.2222 |
16000836 B |
46,514.06 |
| InvokeIntArrayFixed |
100000 |
78,862.0 ns |
347.00 ns |
324.59 ns |
157.27 |
1.26 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
78,784.2 ns |
590.49 ns |
552.34 ns |
157.11 |
1.53 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
80,661,481.7 ns |
1,564,210.43 ns |
2,033,915.56 ns |
160,855.28 |
4,131.40 |
1000.0000 |
833.3333 |
833.3333 |
27895529 B |
81,091.65 |
core-ubuntu-24.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.233 μs |
0.0174 μs |
0.0163 μs |
1.00 |
0.02 |
0.0038 |
360 B |
1.00 |
| NewWithSignature |
1.073 μs |
0.0089 μs |
0.0083 μs |
0.87 |
0.01 |
0.0038 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.264 μs |
0.0240 μs |
0.0224 μs |
1.02 |
0.02 |
0.0038 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
89.85 ns |
0.513 ns |
0.455 ns |
1.00 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetInstanceIntField |
109.75 ns |
0.581 ns |
0.543 ns |
1.22 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetInstanceStringField |
98.19 ns |
0.510 ns |
0.478 ns |
1.09 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
673.27 ns |
4.413 ns |
4.128 ns |
7.49 |
0.06 |
0.0029 |
288 B |
12.00 |
| GetStaticIntField |
100.42 ns |
0.502 ns |
0.470 ns |
1.12 |
0.01 |
0.0002 |
24 B |
1.00 |
| SetStaticIntField |
113.69 ns |
0.768 ns |
0.718 ns |
1.27 |
0.01 |
0.0002 |
24 B |
1.00 |
| GetStaticStringField |
94.81 ns |
0.476 ns |
0.445 ns |
1.06 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
656.71 ns |
3.542 ns |
3.140 ns |
7.31 |
0.05 |
0.0029 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
111.74 ns |
0.535 ns |
0.500 ns |
1.24 |
0.01 |
0.0002 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
307.7 ns |
2.34 ns |
1.83 ns |
1.00 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
291.1 ns |
1.37 ns |
1.28 ns |
0.95 |
- |
- |
NA |
| InvokeStaticWithFeedback |
488.7 ns |
2.34 ns |
1.95 ns |
1.59 |
0.0038 |
344 B |
NA |
| InvokeInstanceEmpty |
314.4 ns |
0.91 ns |
0.71 ns |
1.02 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
492.5 ns |
3.15 ns |
2.79 ns |
1.60 |
0.0038 |
344 B |
NA |
core-ubuntu-24.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.259 μs |
0.0062 μs |
0.0055 μs |
1.00 |
0.0076 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
934.8 ns |
6.86 ns |
5.72 ns |
- |
104 B |
| PredicateRoundTrip |
False |
False |
True |
944.5 ns |
7.20 ns |
6.73 ns |
- |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,115.1 ns |
6.15 ns |
5.75 ns |
0.0019 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
3,930.9 ns |
31.57 ns |
29.53 ns |
0.0076 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
339.7 ns |
1.14 ns |
1.07 ns |
- |
24 B |
| PredicateRoundTrip |
True |
False |
True |
350.8 ns |
3.33 ns |
3.11 ns |
- |
24 B |
| PredicateRoundTrip |
True |
True |
False |
543.9 ns |
3.54 ns |
3.31 ns |
0.0010 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,322.6 ns |
14.52 ns |
12.87 ns |
0.0076 |
712 B |
core-ubuntu-24.04_net8.0_zulu_11
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
INTEL XEON PLATINUM 8573C 2.30GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v4
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
541.13 ns |
1.523 ns |
1.189 ns |
- |
80 B |
| PredicateSustained |
False |
False |
True |
547.47 ns |
4.725 ns |
4.188 ns |
- |
80 B |
| PredicateSustained |
False |
True |
False |
724.19 ns |
3.882 ns |
3.632 ns |
0.0014 |
176 B |
| PredicateSustained |
False |
True |
True |
3,501.04 ns |
28.972 ns |
25.683 ns |
- |
768 B |
| PredicateSustained |
True |
False |
False |
53.15 ns |
1.053 ns |
1.787 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
53.77 ns |
1.069 ns |
1.427 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
203.65 ns |
0.905 ns |
0.802 ns |
0.0009 |
96 B |
| PredicateSustained |
True |
True |
True |
2,990.69 ns |
32.273 ns |
28.609 ns |
0.0050 |
688 B |
core-ubuntu-24.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
577.6 ns |
5.33 ns |
4.98 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,573.8 ns |
38.38 ns |
32.05 ns |
11.38 |
0.11 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,284.4 ns |
11.49 ns |
10.18 ns |
2.22 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,332.3 ns |
7.83 ns |
7.33 ns |
2.31 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,910.1 ns |
50.72 ns |
47.44 ns |
15.43 |
0.15 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
581.1 ns |
5.17 ns |
4.58 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
502,755.5 ns |
1,929.86 ns |
1,805.20 ns |
865.21 |
7.23 |
8.7891 |
1.9531 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,031.4 ns |
13.97 ns |
12.38 ns |
3.50 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,946.6 ns |
13.01 ns |
11.53 ns |
3.35 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
711,947.6 ns |
5,450.80 ns |
4,831.99 ns |
1,225.22 |
12.30 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
596.0 ns |
4.58 ns |
4.06 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
62,151,214.4 ns |
715,060.85 ns |
668,868.37 ns |
104,287.27 |
1,284.15 |
1000.0000 |
875.0000 |
250.0000 |
16001460 B |
46,515.87 |
| InvokeIntArrayFixed |
100000 |
66,381.5 ns |
392.80 ns |
348.21 ns |
111.39 |
0.92 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
67,707.4 ns |
1,006.81 ns |
941.77 ns |
113.61 |
1.70 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,280,562.0 ns |
1,036,899.48 ns |
969,916.42 ns |
144,775.36 |
1,839.95 |
1833.3333 |
1666.6667 |
833.3333 |
27896837 B |
81,095.46 |
core-ubuntu-24.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.203 μs |
0.0045 μs |
0.0040 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.212 μs |
0.0045 μs |
0.0040 μs |
1.01 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.222 μs |
0.0048 μs |
0.0043 μs |
1.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
99.77 ns |
0.442 ns |
0.392 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
120.64 ns |
0.744 ns |
0.659 ns |
1.21 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
105.12 ns |
0.822 ns |
0.769 ns |
1.05 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
745.88 ns |
3.975 ns |
3.103 ns |
7.48 |
0.04 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
104.98 ns |
1.082 ns |
1.012 ns |
1.05 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
121.72 ns |
1.246 ns |
1.166 ns |
1.22 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
106.12 ns |
0.512 ns |
0.454 ns |
1.06 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
670.09 ns |
3.930 ns |
3.677 ns |
6.72 |
0.04 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
123.73 ns |
1.109 ns |
1.037 ns |
1.24 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
296.8 ns |
2.39 ns |
2.23 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
270.9 ns |
2.97 ns |
2.64 ns |
0.91 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
593.6 ns |
5.05 ns |
4.73 ns |
2.00 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
303.0 ns |
2.54 ns |
2.25 ns |
1.02 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
589.8 ns |
3.48 ns |
3.08 ns |
1.99 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.443 μs |
0.0087 μs |
0.0082 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,023.6 ns |
13.52 ns |
12.65 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,022.8 ns |
13.38 ns |
12.52 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,288.2 ns |
3.80 ns |
3.37 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,631.4 ns |
32.08 ns |
28.43 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
423.5 ns |
3.70 ns |
3.46 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
434.6 ns |
4.67 ns |
4.37 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
655.0 ns |
3.55 ns |
3.32 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
4,013.6 ns |
32.47 ns |
28.79 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_zulu_17
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
586.59 ns |
5.259 ns |
4.662 ns |
0.0044 |
80 B |
| PredicateSustained |
False |
False |
True |
555.02 ns |
8.491 ns |
7.527 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
769.78 ns |
3.130 ns |
2.614 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
4,004.75 ns |
25.679 ns |
24.020 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
37.58 ns |
0.389 ns |
0.364 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
37.59 ns |
0.331 ns |
0.310 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
191.74 ns |
1.928 ns |
1.709 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,408.80 ns |
15.373 ns |
12.838 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
548.7 ns |
3.26 ns |
3.05 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,203.5 ns |
30.00 ns |
28.06 ns |
11.31 |
0.08 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,205.6 ns |
5.38 ns |
5.03 ns |
2.20 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,211.5 ns |
5.11 ns |
4.78 ns |
2.21 |
0.01 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,247.4 ns |
55.01 ns |
48.77 ns |
15.03 |
0.12 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
529.8 ns |
3.87 ns |
3.43 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
459,776.9 ns |
2,029.25 ns |
1,898.16 ns |
867.91 |
6.45 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
1,921.8 ns |
6.29 ns |
5.58 ns |
3.63 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
1,942.9 ns |
8.35 ns |
7.81 ns |
3.67 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
684,009.1 ns |
3,546.49 ns |
3,317.39 ns |
1,291.18 |
10.11 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
537.0 ns |
2.80 ns |
2.62 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
58,308,752.5 ns |
522,683.02 ns |
488,918.02 ns |
108,594.70 |
1,020.24 |
1111.1111 |
1000.0000 |
333.3333 |
16002011 B |
46,517.47 |
| InvokeIntArrayFixed |
100000 |
62,205.3 ns |
164.04 ns |
145.41 ns |
115.85 |
0.61 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
62,306.9 ns |
161.24 ns |
134.65 ns |
116.04 |
0.60 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
86,649,153.1 ns |
1,529,657.44 ns |
1,277,333.24 ns |
161,376.10 |
2,415.24 |
1833.3333 |
1666.6667 |
833.3333 |
27897263 B |
81,096.69 |
core-ubuntu-24.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.237 μs |
0.0042 μs |
0.0037 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.213 μs |
0.0047 μs |
0.0044 μs |
0.98 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.169 μs |
0.0051 μs |
0.0045 μs |
0.95 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
110.27 ns |
0.625 ns |
0.584 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
116.44 ns |
1.222 ns |
1.083 ns |
1.06 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
99.82 ns |
0.768 ns |
0.718 ns |
0.91 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
615.91 ns |
2.784 ns |
2.605 ns |
5.59 |
0.04 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
111.22 ns |
0.435 ns |
0.363 ns |
1.01 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
126.66 ns |
0.698 ns |
0.619 ns |
1.15 |
0.01 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
98.62 ns |
0.694 ns |
0.649 ns |
0.89 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
624.28 ns |
3.577 ns |
3.171 ns |
5.66 |
0.04 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
141.14 ns |
1.194 ns |
1.059 ns |
1.28 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
277.6 ns |
2.78 ns |
2.60 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
248.1 ns |
1.17 ns |
1.09 ns |
0.89 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
523.8 ns |
2.74 ns |
2.43 ns |
1.89 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
281.8 ns |
2.02 ns |
1.89 ns |
1.02 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
535.9 ns |
6.88 ns |
6.43 ns |
1.93 |
0.03 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.380 μs |
0.0096 μs |
0.0085 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,023.3 ns |
6.67 ns |
5.92 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,044.4 ns |
9.65 ns |
9.03 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,231.9 ns |
5.41 ns |
4.80 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,610.8 ns |
9.29 ns |
7.75 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
388.3 ns |
3.14 ns |
2.94 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
396.1 ns |
3.81 ns |
3.56 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
623.6 ns |
2.28 ns |
1.91 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,766.9 ns |
10.20 ns |
9.54 ns |
0.0420 |
712 B |
core-ubuntu-24.04_net8.0_zulu_21
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
494.09 ns |
3.308 ns |
3.094 ns |
0.0045 |
80 B |
| PredicateSustained |
False |
False |
True |
524.34 ns |
5.859 ns |
5.481 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
676.86 ns |
4.010 ns |
3.751 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,858.58 ns |
24.556 ns |
22.970 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
40.51 ns |
0.426 ns |
0.399 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
40.93 ns |
0.437 ns |
0.409 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
195.53 ns |
0.846 ns |
0.750 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,240.37 ns |
20.142 ns |
15.725 ns |
0.0400 |
688 B |
core-ubuntu-24.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Length |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Gen1 |
Gen2 |
Allocated |
Alloc Ratio |
| InvokeIntParam |
10 |
537.8 ns |
3.89 ns |
3.64 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
10 |
6,503.9 ns |
44.38 ns |
39.34 ns |
12.09 |
0.11 |
0.1221 |
- |
- |
2048 B |
5.95 |
| InvokeIntArrayFixed |
10 |
1,309.4 ns |
10.23 ns |
9.57 ns |
2.43 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
10 |
1,245.0 ns |
4.94 ns |
4.38 ns |
2.32 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
10 |
8,803.9 ns |
82.53 ns |
77.20 ns |
16.37 |
0.18 |
0.1984 |
- |
- |
3520 B |
10.23 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
1000 |
573.0 ns |
3.14 ns |
2.93 ns |
1.00 |
0.01 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
1000 |
471,114.2 ns |
1,035.97 ns |
918.36 ns |
822.19 |
4.37 |
9.2773 |
2.9297 |
- |
160448 B |
466.42 |
| InvokeIntArrayFixed |
1000 |
2,013.9 ns |
16.94 ns |
15.85 ns |
3.51 |
0.03 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
1000 |
2,026.0 ns |
10.01 ns |
9.36 ns |
3.54 |
0.02 |
0.0267 |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
1000 |
738,674.3 ns |
2,040.04 ns |
1,808.44 ns |
1,289.14 |
7.10 |
15.6250 |
6.8359 |
- |
265888 B |
772.93 |
|
|
|
|
|
|
|
|
|
|
|
|
| InvokeIntParam |
100000 |
557.1 ns |
2.23 ns |
1.86 ns |
1.00 |
0.00 |
0.0200 |
- |
- |
344 B |
1.00 |
| InvokeStringArrayFixed |
100000 |
60,329,733.4 ns |
482,230.12 ns |
451,078.36 ns |
108,290.46 |
858.44 |
1111.1111 |
1000.0000 |
333.3333 |
16001036 B |
46,514.64 |
| InvokeIntArrayFixed |
100000 |
62,943.3 ns |
147.11 ns |
122.84 ns |
112.98 |
0.42 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsWholeArray |
100000 |
62,881.2 ns |
200.03 ns |
177.32 ns |
112.87 |
0.48 |
- |
- |
- |
448 B |
1.30 |
| InvokeVarArgsSpreadElements |
100000 |
87,091,630.9 ns |
1,032,528.91 ns |
965,828.19 ns |
156,327.44 |
1,753.18 |
1666.6667 |
1500.0000 |
666.6667 |
27894313 B |
81,088.12 |
core-ubuntu-24.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| NewEmpty |
1.149 μs |
0.0081 μs |
0.0075 μs |
1.00 |
0.0210 |
360 B |
1.00 |
| NewWithSignature |
1.173 μs |
0.0049 μs |
0.0046 μs |
1.02 |
0.0210 |
360 B |
1.00 |
| DeclaredNewEmpty |
1.169 μs |
0.0103 μs |
0.0097 μs |
1.02 |
0.0210 |
360 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| GetInstanceIntField |
94.54 ns |
0.579 ns |
0.542 ns |
1.00 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetInstanceIntField |
116.74 ns |
1.646 ns |
1.539 ns |
1.23 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetInstanceStringField |
99.42 ns |
1.071 ns |
1.002 ns |
1.05 |
0.01 |
- |
- |
0.00 |
| SetInstanceStringField |
666.50 ns |
2.918 ns |
2.586 ns |
7.05 |
0.05 |
0.0172 |
288 B |
12.00 |
| GetStaticIntField |
105.24 ns |
0.894 ns |
0.836 ns |
1.11 |
0.01 |
0.0014 |
24 B |
1.00 |
| SetStaticIntField |
129.35 ns |
1.570 ns |
1.469 ns |
1.37 |
0.02 |
0.0014 |
24 B |
1.00 |
| GetStaticStringField |
93.71 ns |
0.612 ns |
0.572 ns |
0.99 |
0.01 |
- |
- |
0.00 |
| SetStaticStringField |
631.30 ns |
2.521 ns |
2.105 ns |
6.68 |
0.04 |
0.0172 |
288 B |
12.00 |
| GetInstanceIntFieldGeneric |
139.03 ns |
1.188 ns |
1.112 ns |
1.47 |
0.01 |
0.0014 |
24 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
RatioSD |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeStaticEmpty |
271.2 ns |
2.27 ns |
2.13 ns |
1.00 |
0.01 |
- |
- |
NA |
| InvokeStaticEmptyWithSignature |
247.4 ns |
1.25 ns |
1.16 ns |
0.91 |
0.01 |
- |
- |
NA |
| InvokeStaticWithFeedback |
574.1 ns |
3.48 ns |
3.08 ns |
2.12 |
0.02 |
0.0200 |
344 B |
NA |
| InvokeInstanceEmpty |
280.2 ns |
2.32 ns |
2.06 ns |
1.03 |
0.01 |
- |
- |
NA |
| InvokeInstanceWithFeedback |
558.7 ns |
4.87 ns |
4.56 ns |
2.06 |
0.02 |
0.0200 |
344 B |
NA |
core-ubuntu-24.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
Mean |
Error |
StdDev |
Ratio |
Gen0 |
Allocated |
Alloc Ratio |
| InvokeMultiParam |
1.435 μs |
0.0086 μs |
0.0076 μs |
1.00 |
0.0420 |
712 B |
1.00 |
core-ubuntu-24.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateRoundTrip |
False |
False |
False |
1,034.3 ns |
9.02 ns |
8.44 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
False |
True |
1,022.5 ns |
11.64 ns |
10.89 ns |
0.0057 |
104 B |
| PredicateRoundTrip |
False |
True |
False |
1,232.5 ns |
6.16 ns |
5.76 ns |
0.0114 |
200 B |
| PredicateRoundTrip |
False |
True |
True |
4,521.1 ns |
16.69 ns |
13.94 ns |
0.0458 |
792 B |
| PredicateRoundTrip |
True |
False |
False |
433.0 ns |
3.24 ns |
3.03 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
False |
True |
416.2 ns |
2.85 ns |
2.67 ns |
0.0014 |
24 B |
| PredicateRoundTrip |
True |
True |
False |
678.8 ns |
2.77 ns |
2.59 ns |
0.0067 |
120 B |
| PredicateRoundTrip |
True |
True |
True |
3,909.8 ns |
38.32 ns |
32.00 ns |
0.0381 |
712 B |
core-ubuntu-24.04_net8.0_zulu_25
BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.87GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.400
[Host] : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
DefaultJob : .NET 8.0.30 (8.0.30, 8.0.3026.36720), X64 RyuJIT x86-64-v3
| Method |
ByIndex |
ContinueFirstCheck |
ContinueSecondCheck |
Mean |
Error |
StdDev |
Gen0 |
Allocated |
| PredicateSustained |
False |
False |
False |
518.39 ns |
3.194 ns |
2.831 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
False |
True |
516.76 ns |
6.862 ns |
6.419 ns |
0.0040 |
80 B |
| PredicateSustained |
False |
True |
False |
682.05 ns |
3.980 ns |
3.323 ns |
0.0100 |
176 B |
| PredicateSustained |
False |
True |
True |
3,943.16 ns |
30.042 ns |
28.101 ns |
0.0400 |
768 B |
| PredicateSustained |
True |
False |
False |
41.81 ns |
0.647 ns |
0.605 ns |
- |
- |
| PredicateSustained |
True |
False |
True |
41.04 ns |
0.285 ns |
0.266 ns |
- |
- |
| PredicateSustained |
True |
True |
False |
189.86 ns |
1.538 ns |
1.439 ns |
0.0056 |
96 B |
| PredicateSustained |
True |
True |
True |
3,246.16 ns |
23.324 ns |
20.676 ns |
0.0400 |
688 B |