3125 lines
229 KiB
Plaintext
3125 lines
229 KiB
Plaintext
MulMod64Benchmarks.GpuCompatibleDeferred: .NET 8.0(Runtime=.NET 8.0) [Input=ZeroOperands]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 2.009 ns, StdErr = 0.001 ns (0.05%), N = 15, StdDev = 0.004 ns
|
|
Min = 2.001 ns, Q1 = 2.007 ns, Median = 2.010 ns, Q3 = 2.013 ns, Max = 2.015 ns
|
|
IQR = 0.006 ns, LowerFence = 1.998 ns, UpperFence = 2.022 ns
|
|
ConfidenceInterval = [2.005 ns; 2.014 ns] (CI 99.9%), Margin = 0.004 ns (0.21% of Mean)
|
|
Skewness = -0.31, Kurtosis = 1.94, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[1.999 ns ; 2.017 ns) | @@@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|------------------------------------------- |------------------ |-----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ExtensionBaseline | CrossWordBlend | 3.606 ns | 0.0030 ns | 0.0025 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuCompatibleMulModExtension | CrossWordBlend | 22.870 ns | 0.1463 ns | 0.1297 ns | 6.34 | 0.04 | - | NA |
|
|
| MulModGpu | CrossWordBlend | 22.780 ns | 0.4463 ns | 0.8600 ns | 6.32 | 0.23 | - | NA |
|
|
| InlineUInt128Operands | CrossWordBlend | 22.218 ns | 0.0319 ns | 0.0266 ns | 6.16 | 0.01 | - | NA |
|
|
| InlineUInt128OperandsWithReductionFirst | CrossWordBlend | 22.626 ns | 0.0553 ns | 0.0517 ns | 6.27 | 0.02 | - | NA |
|
|
| InlineUInt128OperandsWithOperandReduction | CrossWordBlend | 22.548 ns | 0.0487 ns | 0.0432 ns | 6.25 | 0.01 | - | NA |
|
|
| InlineUInt128WithLocals | CrossWordBlend | 22.226 ns | 0.0464 ns | 0.0434 ns | 6.16 | 0.01 | - | NA |
|
|
| InlineUInt128WithLocalsAndOperandReduction | CrossWordBlend | 29.746 ns | 0.1206 ns | 0.1128 ns | 8.24 | 0.03 | - | NA |
|
|
| MultiplyHighDecomposition | CrossWordBlend | 23.685 ns | 0.0547 ns | 0.0457 ns | 6.57 | 0.01 | - | NA |
|
|
| GpuCompatibleBaseline | CrossWordBlend | 24.422 ns | 0.4805 ns | 0.9257 ns | 6.86 | 0.28 | - | NA |
|
|
| GpuCompatibleDeferred | CrossWordBlend | 146.559 ns | 0.1736 ns | 0.1539 ns | 40.63 | 0.05 | - | NA |
|
|
| | | | | | | | | |
|
|
| ExtensionBaseline | MixedBitPattern | 3.564 ns | 0.0059 ns | 0.0052 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuCompatibleMulModExtension | MixedBitPattern | 64.800 ns | 0.3399 ns | 0.3179 ns | 18.17 | 0.09 | - | NA |
|
|
| MulModGpu | MixedBitPattern | 59.165 ns | 0.4243 ns | 0.3969 ns | 16.60 | 0.11 | - | NA |
|
|
| InlineUInt128Operands | MixedBitPattern | 30.539 ns | 0.1396 ns | 0.1306 ns | 8.57 | 0.03 | - | NA |
|
|
| InlineUInt128OperandsWithReductionFirst | MixedBitPattern | 31.237 ns | 0.1013 ns | 0.0898 ns | 8.76 | 0.03 | - | NA |
|
|
| InlineUInt128OperandsWithOperandReduction | MixedBitPattern | 30.210 ns | 0.1323 ns | 0.1237 ns | 8.48 | 0.04 | - | NA |
|
|
| InlineUInt128WithLocals | MixedBitPattern | 30.882 ns | 0.1155 ns | 0.1023 ns | 8.66 | 0.03 | - | NA |
|
|
| InlineUInt128WithLocalsAndOperandReduction | MixedBitPattern | 38.013 ns | 0.1240 ns | 0.1160 ns | 10.67 | 0.03 | - | NA |
|
|
| MultiplyHighDecomposition | MixedBitPattern | 30.114 ns | 0.1006 ns | 0.0840 ns | 8.45 | 0.02 | - | NA |
|
|
| GpuCompatibleBaseline | MixedBitPattern | 61.850 ns | 0.1293 ns | 0.1010 ns | 17.36 | 0.04 | - | NA |
|
|
| GpuCompatibleDeferred | MixedBitPattern | 255.555 ns | 0.3206 ns | 0.2842 ns | 71.70 | 0.14 | - | NA |
|
|
| | | | | | | | | |
|
|
| ExtensionBaseline | NearFullRange | 3.583 ns | 0.0105 ns | 0.0098 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuCompatibleMulModExtension | NearFullRange | 5.708 ns | 0.0520 ns | 0.0486 ns | 1.59 | 0.02 | - | NA |
|
|
| MulModGpu | NearFullRange | 5.952 ns | 0.1253 ns | 0.1172 ns | 1.66 | 0.04 | - | NA |
|
|
| InlineUInt128Operands | NearFullRange | 27.159 ns | 0.0936 ns | 0.0781 ns | 7.58 | 0.03 | - | NA |
|
|
| InlineUInt128OperandsWithReductionFirst | NearFullRange | 4.357 ns | 0.0205 ns | 0.0182 ns | 1.22 | 0.00 | - | NA |
|
|
| InlineUInt128OperandsWithOperandReduction | NearFullRange | 4.319 ns | 0.0158 ns | 0.0140 ns | 1.21 | 0.00 | - | NA |
|
|
| InlineUInt128WithLocals | NearFullRange | 27.137 ns | 0.1028 ns | 0.0962 ns | 7.57 | 0.03 | - | NA |
|
|
| InlineUInt128WithLocalsAndOperandReduction | NearFullRange | 12.187 ns | 0.1527 ns | 0.1429 ns | 3.40 | 0.04 | - | NA |
|
|
| MultiplyHighDecomposition | NearFullRange | 5.221 ns | 0.0265 ns | 0.0248 ns | 1.46 | 0.01 | - | NA |
|
|
| GpuCompatibleBaseline | NearFullRange | 7.267 ns | 0.0168 ns | 0.0158 ns | 2.03 | 0.01 | - | NA |
|
|
| GpuCompatibleDeferred | NearFullRange | 21.390 ns | 0.0212 ns | 0.0198 ns | 5.97 | 0.02 | - | NA |
|
|
| | | | | | | | | |
|
|
| ExtensionBaseline | PrimeSizedModulus | 3.593 ns | 0.0039 ns | 0.0037 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuCompatibleMulModExtension | PrimeSizedModulus | 52.766 ns | 0.3086 ns | 0.2887 ns | 14.69 | 0.08 | - | NA |
|
|
| MulModGpu | PrimeSizedModulus | 50.490 ns | 0.1977 ns | 0.1752 ns | 14.05 | 0.05 | - | NA |
|
|
| InlineUInt128Operands | PrimeSizedModulus | 31.409 ns | 0.0984 ns | 0.0920 ns | 8.74 | 0.03 | - | NA |
|
|
| InlineUInt128OperandsWithReductionFirst | PrimeSizedModulus | 32.176 ns | 0.3427 ns | 0.3206 ns | 8.96 | 0.09 | - | NA |
|
|
| InlineUInt128OperandsWithOperandReduction | PrimeSizedModulus | 31.786 ns | 0.1483 ns | 0.1387 ns | 8.85 | 0.04 | - | NA |
|
|
| InlineUInt128WithLocals | PrimeSizedModulus | 31.351 ns | 0.1016 ns | 0.0849 ns | 8.73 | 0.02 | - | NA |
|
|
| InlineUInt128WithLocalsAndOperandReduction | PrimeSizedModulus | 40.459 ns | 0.2541 ns | 0.2377 ns | 11.26 | 0.07 | - | NA |
|
|
| MultiplyHighDecomposition | PrimeSizedModulus | 31.950 ns | 0.1510 ns | 0.1339 ns | 8.89 | 0.04 | - | NA |
|
|
| GpuCompatibleBaseline | PrimeSizedModulus | 55.114 ns | 0.7359 ns | 0.6524 ns | 15.34 | 0.18 | - | NA |
|
|
| GpuCompatibleDeferred | PrimeSizedModulus | 294.486 ns | 4.3400 ns | 4.0597 ns | 81.97 | 1.14 | - | NA |
|
|
| | | | | | | | | |
|
|
| ExtensionBaseline | SparseOperands | 3.555 ns | 0.0087 ns | 0.0082 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuCompatibleMulModExtension | SparseOperands | 5.671 ns | 0.0043 ns | 0.0036 ns | 1.60 | 0.00 | - | NA |
|
|
| MulModGpu | SparseOperands | 5.239 ns | 0.0103 ns | 0.0096 ns | 1.47 | 0.00 | - | NA |
|
|
| InlineUInt128Operands | SparseOperands | 3.563 ns | 0.0217 ns | 0.0203 ns | 1.00 | 0.01 | - | NA |
|
|
| InlineUInt128OperandsWithReductionFirst | SparseOperands | 4.617 ns | 0.0095 ns | 0.0089 ns | 1.30 | 0.00 | - | NA |
|
|
| InlineUInt128OperandsWithOperandReduction | SparseOperands | 4.282 ns | 0.0193 ns | 0.0181 ns | 1.20 | 0.01 | - | NA |
|
|
| InlineUInt128WithLocals | SparseOperands | 3.566 ns | 0.0154 ns | 0.0144 ns | 1.00 | 0.00 | - | NA |
|
|
| InlineUInt128WithLocalsAndOperandReduction | SparseOperands | 15.100 ns | 0.0776 ns | 0.0726 ns | 4.25 | 0.03 | - | NA |
|
|
| MultiplyHighDecomposition | SparseOperands | 5.204 ns | 0.0223 ns | 0.0208 ns | 1.46 | 0.01 | - | NA |
|
|
| GpuCompatibleBaseline | SparseOperands | 7.261 ns | 0.0065 ns | 0.0057 ns | 2.04 | 0.00 | - | NA |
|
|
| GpuCompatibleDeferred | SparseOperands | 18.182 ns | 0.0233 ns | 0.0182 ns | 5.12 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ExtensionBaseline | ZeroOperands | 3.599 ns | 0.0069 ns | 0.0065 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuCompatibleMulModExtension | ZeroOperands | 1.976 ns | 0.0053 ns | 0.0049 ns | 0.55 | 0.00 | - | NA |
|
|
| MulModGpu | ZeroOperands | 1.986 ns | 0.0048 ns | 0.0045 ns | 0.55 | 0.00 | - | NA |
|
|
| InlineUInt128Operands | ZeroOperands | 3.542 ns | 0.0125 ns | 0.0117 ns | 0.98 | 0.00 | - | NA |
|
|
| InlineUInt128OperandsWithReductionFirst | ZeroOperands | 4.286 ns | 0.0178 ns | 0.0167 ns | 1.19 | 0.01 | - | NA |
|
|
| InlineUInt128OperandsWithOperandReduction | ZeroOperands | 4.256 ns | 0.0116 ns | 0.0097 ns | 1.18 | 0.00 | - | NA |
|
|
| InlineUInt128WithLocals | ZeroOperands | 3.586 ns | 0.0293 ns | 0.0274 ns | 1.00 | 0.01 | - | NA |
|
|
| InlineUInt128WithLocalsAndOperandReduction | ZeroOperands | 11.863 ns | 0.0499 ns | 0.0466 ns | 3.30 | 0.01 | - | NA |
|
|
| MultiplyHighDecomposition | ZeroOperands | 5.171 ns | 0.0320 ns | 0.0299 ns | 1.44 | 0.01 | - | NA |
|
|
| GpuCompatibleBaseline | ZeroOperands | 3.587 ns | 0.0091 ns | 0.0085 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuCompatibleDeferred | ZeroOperands | 2.009 ns | 0.0043 ns | 0.0040 ns | 0.56 | 0.00 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
MulMod64Benchmarks.ExtensionBaseline: .NET 8.0 -> 2 outliers were removed (4.92 ns, 5.01 ns)
|
|
MulMod64Benchmarks.GpuCompatibleMulModExtension: .NET 8.0 -> 1 outlier was removed, 2 outliers were detected (23.75 ns, 25.37 ns)
|
|
MulMod64Benchmarks.MulModGpu: .NET 8.0 -> 2 outliers were removed, 3 outliers were detected (22.07 ns, 26.53 ns, 26.65 ns)
|
|
MulMod64Benchmarks.InlineUInt128Operands: .NET 8.0 -> 2 outliers were removed (23.62 ns, 23.64 ns)
|
|
MulMod64Benchmarks.InlineUInt128OperandsWithOperandReduction: .NET 8.0 -> 1 outlier was removed (24.42 ns)
|
|
MulMod64Benchmarks.MultiplyHighDecomposition: .NET 8.0 -> 2 outliers were removed (25.12 ns, 25.31 ns)
|
|
MulMod64Benchmarks.GpuCompatibleBaseline: .NET 8.0 -> 1 outlier was removed (28.50 ns)
|
|
MulMod64Benchmarks.GpuCompatibleDeferred: .NET 8.0 -> 1 outlier was removed (148.92 ns)
|
|
MulMod64Benchmarks.ExtensionBaseline: .NET 8.0 -> 1 outlier was removed (5.07 ns)
|
|
MulMod64Benchmarks.InlineUInt128OperandsWithReductionFirst: .NET 8.0 -> 1 outlier was removed (32.96 ns)
|
|
MulMod64Benchmarks.InlineUInt128WithLocals: .NET 8.0 -> 1 outlier was removed (32.57 ns)
|
|
MulMod64Benchmarks.MultiplyHighDecomposition: .NET 8.0 -> 2 outliers were removed (32.46 ns, 33.49 ns)
|
|
MulMod64Benchmarks.GpuCompatibleBaseline: .NET 8.0 -> 3 outliers were removed (64.17 ns..64.56 ns)
|
|
MulMod64Benchmarks.GpuCompatibleDeferred: .NET 8.0 -> 1 outlier was removed (259.51 ns)
|
|
MulMod64Benchmarks.InlineUInt128Operands: .NET 8.0 -> 2 outliers were removed (29.01 ns, 29.49 ns)
|
|
MulMod64Benchmarks.InlineUInt128OperandsWithReductionFirst: .NET 8.0 -> 1 outlier was removed (5.72 ns)
|
|
MulMod64Benchmarks.InlineUInt128OperandsWithOperandReduction: .NET 8.0 -> 1 outlier was removed (5.73 ns)
|
|
MulMod64Benchmarks.MulModGpu: .NET 8.0 -> 1 outlier was removed, 3 outliers were detected (51.41 ns, 51.47 ns, 52.10 ns)
|
|
MulMod64Benchmarks.InlineUInt128Operands: .NET 8.0 -> 1 outlier was detected (32.44 ns)
|
|
MulMod64Benchmarks.InlineUInt128WithLocals: .NET 8.0 -> 2 outliers were removed (33.47 ns, 34.46 ns)
|
|
MulMod64Benchmarks.MultiplyHighDecomposition: .NET 8.0 -> 1 outlier was removed (33.93 ns)
|
|
MulMod64Benchmarks.GpuCompatibleBaseline: .NET 8.0 -> 1 outlier was removed, 2 outliers were detected (55.31 ns, 59.36 ns)
|
|
MulMod64Benchmarks.GpuCompatibleMulModExtension: .NET 8.0 -> 2 outliers were removed (6.96 ns, 6.96 ns)
|
|
MulMod64Benchmarks.InlineUInt128WithLocalsAndOperandReduction: .NET 8.0 -> 2 outliers were detected (16.25 ns, 16.25 ns)
|
|
MulMod64Benchmarks.GpuCompatibleBaseline: .NET 8.0 -> 1 outlier was removed (8.58 ns)
|
|
MulMod64Benchmarks.GpuCompatibleDeferred: .NET 8.0 -> 3 outliers were removed (19.93 ns..20.25 ns)
|
|
MulMod64Benchmarks.InlineUInt128OperandsWithReductionFirst: .NET 8.0 -> 2 outliers were detected (5.55 ns, 5.55 ns)
|
|
MulMod64Benchmarks.InlineUInt128OperandsWithOperandReduction: .NET 8.0 -> 2 outliers were removed (5.59 ns, 5.60 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mul64Benchmarks.BigIntegerReference: .NET 8.0(Runtime=.NET 8.0) [Input=TinyOperands]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 34.286 ns, StdErr = 0.027 ns (0.08%), N = 14, StdDev = 0.101 ns
|
|
Min = 34.030 ns, Q1 = 34.296 ns, Median = 34.312 ns, Q3 = 34.340 ns, Max = 34.400 ns
|
|
IQR = 0.044 ns, LowerFence = 34.229 ns, UpperFence = 34.407 ns
|
|
ConfidenceInterval = [34.173 ns; 34.400 ns] (CI 99.9%), Margin = 0.114 ns (0.33% of Mean)
|
|
Skewness = -1.33, Kurtosis = 3.69, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[33.975 ns ; 34.455 ns) | @@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | RatioSD | Gen0 | Allocated | Alloc Ratio |
|
|
|---------------------------- |------------------- |----------:|----------:|----------:|------:|--------:|-------:|----------:|------------:|
|
|
| HighWordAccumulatedInLocals | AllBitsSet | 1.568 ns | 0.0113 ns | 0.0100 ns | 1.00 | 0.00 | - | - | NA |
|
|
| FoldedHighReturnValue | AllBitsSet | 1.583 ns | 0.0140 ns | 0.0124 ns | 1.01 | 0.01 | - | - | NA |
|
|
| GpuFriendlyLayout | AllBitsSet | 3.682 ns | 0.0090 ns | 0.0080 ns | 2.35 | 0.02 | - | - | NA |
|
|
| BigIntegerReference | AllBitsSet | 86.087 ns | 0.3381 ns | 0.2997 ns | 54.92 | 0.36 | 0.0162 | 136 B | NA |
|
|
| | | | | | | | | | |
|
|
| HighWordAccumulatedInLocals | HighWordOnly | 1.495 ns | 0.0079 ns | 0.0070 ns | 1.00 | 0.00 | - | - | NA |
|
|
| FoldedHighReturnValue | HighWordOnly | 1.542 ns | 0.0127 ns | 0.0119 ns | 1.03 | 0.01 | - | - | NA |
|
|
| GpuFriendlyLayout | HighWordOnly | 3.679 ns | 0.0087 ns | 0.0082 ns | 2.46 | 0.01 | - | - | NA |
|
|
| BigIntegerReference | HighWordOnly | 78.860 ns | 0.2640 ns | 0.2470 ns | 52.74 | 0.32 | 0.0153 | 128 B | NA |
|
|
| | | | | | | | | | |
|
|
| HighWordAccumulatedInLocals | InterleavedHighLow | 1.526 ns | 0.0126 ns | 0.0112 ns | 1.00 | 0.00 | - | - | NA |
|
|
| FoldedHighReturnValue | InterleavedHighLow | 1.575 ns | 0.0062 ns | 0.0055 ns | 1.03 | 0.01 | - | - | NA |
|
|
| GpuFriendlyLayout | InterleavedHighLow | 3.719 ns | 0.0716 ns | 0.0906 ns | 2.45 | 0.08 | - | - | NA |
|
|
| BigIntegerReference | InterleavedHighLow | 87.367 ns | 0.4155 ns | 0.3684 ns | 57.24 | 0.56 | 0.0210 | 176 B | NA |
|
|
| | | | | | | | | | |
|
|
| HighWordAccumulatedInLocals | LowWordMax | 1.506 ns | 0.0071 ns | 0.0066 ns | 1.00 | 0.00 | - | - | NA |
|
|
| FoldedHighReturnValue | LowWordMax | 1.581 ns | 0.0068 ns | 0.0063 ns | 1.05 | 0.01 | - | - | NA |
|
|
| GpuFriendlyLayout | LowWordMax | 3.684 ns | 0.0091 ns | 0.0076 ns | 2.45 | 0.01 | - | - | NA |
|
|
| BigIntegerReference | LowWordMax | 74.418 ns | 0.3286 ns | 0.2913 ns | 49.43 | 0.27 | 0.0172 | 144 B | NA |
|
|
| | | | | | | | | | |
|
|
| HighWordAccumulatedInLocals | ShiftHeavyMixed | 1.481 ns | 0.0028 ns | 0.0026 ns | 1.00 | 0.00 | - | - | NA |
|
|
| FoldedHighReturnValue | ShiftHeavyMixed | 1.562 ns | 0.0079 ns | 0.0074 ns | 1.06 | 0.00 | - | - | NA |
|
|
| GpuFriendlyLayout | ShiftHeavyMixed | 3.707 ns | 0.0409 ns | 0.0362 ns | 2.50 | 0.02 | - | - | NA |
|
|
| BigIntegerReference | ShiftHeavyMixed | 81.020 ns | 0.7542 ns | 0.7054 ns | 54.71 | 0.49 | 0.0181 | 152 B | NA |
|
|
| | | | | | | | | | |
|
|
| HighWordAccumulatedInLocals | TinyOperands | 1.503 ns | 0.0118 ns | 0.0110 ns | 1.00 | 0.00 | - | - | NA |
|
|
| FoldedHighReturnValue | TinyOperands | 1.546 ns | 0.0073 ns | 0.0068 ns | 1.03 | 0.01 | - | - | NA |
|
|
| GpuFriendlyLayout | TinyOperands | 3.683 ns | 0.0210 ns | 0.0176 ns | 2.45 | 0.02 | - | - | NA |
|
|
| BigIntegerReference | TinyOperands | 34.286 ns | 0.1138 ns | 0.1009 ns | 22.80 | 0.16 | - | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mul64Benchmarks.HighWordAccumulatedInLocals: .NET 8.0 -> 1 outlier was removed (2.85 ns)
|
|
Mul64Benchmarks.FoldedHighReturnValue: .NET 8.0 -> 1 outlier was removed (2.90 ns)
|
|
Mul64Benchmarks.GpuFriendlyLayout: .NET 8.0 -> 1 outlier was removed (4.99 ns)
|
|
Mul64Benchmarks.BigIntegerReference: .NET 8.0 -> 1 outlier was removed (88.71 ns)
|
|
Mul64Benchmarks.HighWordAccumulatedInLocals: .NET 8.0 -> 1 outlier was removed (2.76 ns)
|
|
Mul64Benchmarks.HighWordAccumulatedInLocals: .NET 8.0 -> 1 outlier was removed, 2 outliers were detected (2.74 ns, 2.80 ns)
|
|
Mul64Benchmarks.FoldedHighReturnValue: .NET 8.0 -> 1 outlier was removed (2.83 ns)
|
|
Mul64Benchmarks.GpuFriendlyLayout: .NET 8.0 -> 6 outliers were removed (5.61 ns..5.93 ns)
|
|
Mul64Benchmarks.BigIntegerReference: .NET 8.0 -> 1 outlier was removed, 2 outliers were detected (87.97 ns, 90.14 ns)
|
|
Mul64Benchmarks.GpuFriendlyLayout: .NET 8.0 -> 2 outliers were removed (4.95 ns, 4.98 ns)
|
|
Mul64Benchmarks.BigIntegerReference: .NET 8.0 -> 1 outlier was removed (77.42 ns)
|
|
Mul64Benchmarks.GpuFriendlyLayout: .NET 8.0 -> 1 outlier was removed (5.36 ns)
|
|
Mul64Benchmarks.BigIntegerReference: .NET 8.0 -> 2 outliers were detected (81.47 ns, 81.49 ns)
|
|
Mul64Benchmarks.GpuFriendlyLayout: .NET 8.0 -> 2 outliers were removed (5.01 ns, 5.07 ns)
|
|
Mul64Benchmarks.BigIntegerReference: .NET 8.0 -> 1 outlier was removed, 4 outliers were detected (35.93 ns..36.11 ns, 36.33 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MulHighBenchmarks.SchoolbookVariant: .NET 8.0(Runtime=.NET 8.0) [Input=ShiftHeavy]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.748 ns, StdErr = 0.004 ns (0.48%), N = 15, StdDev = 0.014 ns
|
|
Min = 0.722 ns, Q1 = 0.736 ns, Median = 0.752 ns, Q3 = 0.758 ns, Max = 0.767 ns
|
|
IQR = 0.021 ns, LowerFence = 0.704 ns, UpperFence = 0.790 ns
|
|
ConfidenceInterval = [0.734 ns; 0.763 ns] (CI 99.9%), Margin = 0.015 ns (1.98% of Mean)
|
|
Skewness = -0.37, Kurtosis = 1.77, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.715 ns ; 0.742 ns) | @@@@@
|
|
[0.742 ns ; 0.775 ns) | @@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------------- |---------------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| CurrentImplementation | AllBitsSet | 0.7577 ns | 0.0082 ns | 0.0072 ns | 1.00 | 0.00 | - | NA |
|
|
| UInt128BuiltIn | AllBitsSet | 0.0641 ns | 0.0036 ns | 0.0033 ns | 0.08 | 0.00 | - | NA |
|
|
| GpuUInt128Style | AllBitsSet | 0.8643 ns | 0.0078 ns | 0.0065 ns | 1.14 | 0.01 | - | NA |
|
|
| ShiftThenMultiply | AllBitsSet | 0.9894 ns | 0.0074 ns | 0.0070 ns | 1.30 | 0.02 | - | NA |
|
|
| SchoolbookVariant | AllBitsSet | 0.7414 ns | 0.0064 ns | 0.0060 ns | 0.98 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | HighPowersOfTwo | 0.7352 ns | 0.0097 ns | 0.0081 ns | 1.00 | 0.00 | - | NA |
|
|
| UInt128BuiltIn | HighPowersOfTwo | 0.0674 ns | 0.0031 ns | 0.0029 ns | 0.09 | 0.00 | - | NA |
|
|
| GpuUInt128Style | HighPowersOfTwo | 0.8584 ns | 0.0235 ns | 0.0208 ns | 1.17 | 0.03 | - | NA |
|
|
| ShiftThenMultiply | HighPowersOfTwo | 1.1421 ns | 0.0455 ns | 0.0447 ns | 1.55 | 0.07 | - | NA |
|
|
| SchoolbookVariant | HighPowersOfTwo | 0.7459 ns | 0.0115 ns | 0.0107 ns | 1.01 | 0.02 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | IncludesZero | 0.7497 ns | 0.0173 ns | 0.0154 ns | 1.00 | 0.00 | - | NA |
|
|
| UInt128BuiltIn | IncludesZero | 0.0541 ns | 0.0039 ns | 0.0036 ns | 0.07 | 0.00 | - | NA |
|
|
| GpuUInt128Style | IncludesZero | 0.8538 ns | 0.0038 ns | 0.0034 ns | 1.14 | 0.02 | - | NA |
|
|
| ShiftThenMultiply | IncludesZero | 0.9270 ns | 0.0056 ns | 0.0053 ns | 1.24 | 0.03 | - | NA |
|
|
| SchoolbookVariant | IncludesZero | 0.7442 ns | 0.0128 ns | 0.0120 ns | 1.00 | 0.02 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | LowHighWord | 0.7296 ns | 0.0074 ns | 0.0069 ns | 1.00 | 0.00 | - | NA |
|
|
| UInt128BuiltIn | LowHighWord | 0.0576 ns | 0.0029 ns | 0.0027 ns | 0.08 | 0.00 | - | NA |
|
|
| GpuUInt128Style | LowHighWord | 0.8576 ns | 0.0057 ns | 0.0053 ns | 1.18 | 0.01 | - | NA |
|
|
| ShiftThenMultiply | LowHighWord | 0.9195 ns | 0.0060 ns | 0.0053 ns | 1.26 | 0.01 | - | NA |
|
|
| SchoolbookVariant | LowHighWord | 0.7441 ns | 0.0120 ns | 0.0112 ns | 1.02 | 0.02 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | Mixed | 0.7365 ns | 0.0146 ns | 0.0136 ns | 1.00 | 0.00 | - | NA |
|
|
| UInt128BuiltIn | Mixed | 0.0634 ns | 0.0048 ns | 0.0038 ns | 0.09 | 0.01 | - | NA |
|
|
| GpuUInt128Style | Mixed | 0.8693 ns | 0.0088 ns | 0.0073 ns | 1.18 | 0.02 | - | NA |
|
|
| ShiftThenMultiply | Mixed | 1.2042 ns | 0.0100 ns | 0.0089 ns | 1.64 | 0.03 | - | NA |
|
|
| SchoolbookVariant | Mixed | 0.7395 ns | 0.0070 ns | 0.0065 ns | 1.00 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | ShiftHeavy | 0.7747 ns | 0.0240 ns | 0.0213 ns | 1.00 | 0.00 | - | NA |
|
|
| UInt128BuiltIn | ShiftHeavy | 0.0591 ns | 0.0032 ns | 0.0030 ns | 0.08 | 0.00 | - | NA |
|
|
| GpuUInt128Style | ShiftHeavy | 0.8625 ns | 0.0068 ns | 0.0064 ns | 1.11 | 0.03 | - | NA |
|
|
| ShiftThenMultiply | ShiftHeavy | 1.1909 ns | 0.0073 ns | 0.0061 ns | 1.54 | 0.05 | - | NA |
|
|
| SchoolbookVariant | ShiftHeavy | 0.7485 ns | 0.0148 ns | 0.0139 ns | 0.97 | 0.03 | - | NA |
|
|
|
|
// * Warnings *
|
|
MultimodalDistribution
|
|
MulHighBenchmarks.UInt128BuiltIn: .NET 8.0 -> It seems that the distribution is bimodal (mValue = 3.5)
|
|
MulHighBenchmarks.UInt128BuiltIn: .NET 8.0 -> It seems that the distribution can have several modes (mValue = 3.14)
|
|
|
|
// * Hints *
|
|
Outliers
|
|
MulHighBenchmarks.CurrentImplementation: .NET 8.0 -> 1 outlier was removed (2.06 ns)
|
|
MulHighBenchmarks.GpuUInt128Style: .NET 8.0 -> 2 outliers were removed (2.23 ns, 2.23 ns)
|
|
MulHighBenchmarks.CurrentImplementation: .NET 8.0 -> 2 outliers were removed, 3 outliers were detected (2.00 ns, 2.05 ns, 2.06 ns)
|
|
MulHighBenchmarks.GpuUInt128Style: .NET 8.0 -> 1 outlier was removed (2.21 ns)
|
|
MulHighBenchmarks.ShiftThenMultiply: .NET 8.0 -> 1 outlier was detected (2.28 ns)
|
|
MulHighBenchmarks.CurrentImplementation: .NET 8.0 -> 1 outlier was removed (2.11 ns)
|
|
MulHighBenchmarks.UInt128BuiltIn: .NET 8.0 -> 1 outlier was detected (1.34 ns)
|
|
MulHighBenchmarks.GpuUInt128Style: .NET 8.0 -> 1 outlier was removed, 2 outliers were detected (2.14 ns, 2.16 ns)
|
|
MulHighBenchmarks.ShiftThenMultiply: .NET 8.0 -> 3 outliers were detected (2.19 ns..2.20 ns)
|
|
MulHighBenchmarks.ShiftThenMultiply: .NET 8.0 -> 1 outlier was removed, 3 outliers were detected (2.19 ns, 2.19 ns, 2.21 ns)
|
|
MulHighBenchmarks.UInt128BuiltIn: .NET 8.0 -> 3 outliers were removed, 4 outliers were detected (1.35 ns, 1.38 ns..1.41 ns)
|
|
MulHighBenchmarks.GpuUInt128Style: .NET 8.0 -> 2 outliers were removed, 3 outliers were detected (2.14 ns, 2.19 ns, 2.22 ns)
|
|
MulHighBenchmarks.ShiftThenMultiply: .NET 8.0 -> 1 outlier was removed (2.52 ns)
|
|
MulHighBenchmarks.CurrentImplementation: .NET 8.0 -> 1 outlier was removed, 3 outliers were detected (2.03 ns, 2.03 ns, 2.12 ns)
|
|
MulHighBenchmarks.UInt128BuiltIn: .NET 8.0 -> 1 outlier was detected (1.35 ns)
|
|
MulHighBenchmarks.GpuUInt128Style: .NET 8.0 -> 2 outliers were detected (2.14 ns, 2.14 ns)
|
|
MulHighBenchmarks.ShiftThenMultiply: .NET 8.0 -> 2 outliers were removed (2.50 ns, 2.50 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GpuPow2ModBenchmarks.ProcessSingleBits: .NET 8.0(Runtime=.NET 8.0) [Input=Small(...)dulus [25]]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 85.393 ns, StdErr = 0.062 ns (0.07%), N = 14, StdDev = 0.232 ns
|
|
Min = 85.090 ns, Q1 = 85.174 ns, Median = 85.434 ns, Q3 = 85.594 ns, Max = 85.735 ns
|
|
IQR = 0.420 ns, LowerFence = 84.543 ns, UpperFence = 86.225 ns
|
|
ConfidenceInterval = [85.131 ns; 85.655 ns] (CI 99.9%), Margin = 0.262 ns (0.31% of Mean)
|
|
Skewness = 0, Kurtosis = 1.2, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[84.963 ns ; 85.862 ns) | @@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|----------------------- |--------------------- |-------------:|-----------:|-----------:|------:|----------:|------------:|
|
|
| ProcessEightBitWindows | FullW(...)dulus [33] | 21,481.71 ns | 61.853 ns | 57.857 ns | 1.00 | - | NA |
|
|
| ProcessSingleBits | FullW(...)dulus [33] | 50,967.07 ns | 219.430 ns | 205.255 ns | 2.37 | - | NA |
|
|
| | | | | | | | |
|
|
| ProcessEightBitWindows | Large(...)dulus [28] | 7,874.85 ns | 23.410 ns | 20.752 ns | 1.00 | - | NA |
|
|
| ProcessSingleBits | Large(...)dulus [28] | 8,851.95 ns | 21.146 ns | 18.745 ns | 1.12 | - | NA |
|
|
| | | | | | | | |
|
|
| ProcessEightBitWindows | Mediu(...)dulus [26] | 264.97 ns | 0.225 ns | 0.211 ns | 1.00 | - | NA |
|
|
| ProcessSingleBits | Mediu(...)dulus [26] | 265.98 ns | 0.389 ns | 0.345 ns | 1.00 | - | NA |
|
|
| | | | | | | | |
|
|
| ProcessEightBitWindows | Small(...)dulus [25] | 82.97 ns | 0.049 ns | 0.044 ns | 1.00 | - | NA |
|
|
| ProcessSingleBits | Small(...)dulus [25] | 85.39 ns | 0.262 ns | 0.232 ns | 1.03 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
GpuPow2ModBenchmarks.ProcessEightBitWindows: .NET 8.0 -> 1 outlier was removed (7.95 us)
|
|
GpuPow2ModBenchmarks.ProcessSingleBits: .NET 8.0 -> 1 outlier was removed (8.93 us)
|
|
GpuPow2ModBenchmarks.ProcessSingleBits: .NET 8.0 -> 1 outlier was removed (269.27 ns)
|
|
GpuPow2ModBenchmarks.ProcessEightBitWindows: .NET 8.0 -> 1 outlier was removed (85.06 ns)
|
|
GpuPow2ModBenchmarks.ProcessSingleBits: .NET 8.0 -> 1 outlier was removed (88.89 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GpuUInt128AddBenchmarks.CarryInExpression: .NET 8.0(Runtime=.NET 8.0) [Input=MixedOperands]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.474 ns, StdErr = 0.003 ns (0.54%), N = 15, StdDev = 0.010 ns
|
|
Min = 0.460 ns, Q1 = 0.466 ns, Median = 0.470 ns, Q3 = 0.483 ns, Max = 0.491 ns
|
|
IQR = 0.017 ns, LowerFence = 0.441 ns, UpperFence = 0.508 ns
|
|
ConfidenceInterval = [0.463 ns; 0.485 ns] (CI 99.9%), Margin = 0.011 ns (2.25% of Mean)
|
|
Skewness = 0.25, Kurtosis = 1.52, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.460 ns ; 0.470 ns) | @@@@@@@@
|
|
[0.470 ns ; 0.485 ns) | @@@@@
|
|
[0.485 ns ; 0.497 ns) | @@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|------------------------- |-------------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| CarryMaterialisedInLocal | AllBitsSet | 0.4737 ns | 0.0032 ns | 0.0027 ns | 1.00 | 0.00 | - | NA |
|
|
| CarryInExpression | AllBitsSet | 0.4676 ns | 0.0120 ns | 0.0113 ns | 0.98 | 0.02 | - | NA |
|
|
| | | | | | | | | |
|
|
| CarryMaterialisedInLocal | CarryIntoHigh | 0.4586 ns | 0.0084 ns | 0.0079 ns | 1.00 | 0.00 | - | NA |
|
|
| CarryInExpression | CarryIntoHigh | 0.4907 ns | 0.0092 ns | 0.0086 ns | 1.07 | 0.03 | - | NA |
|
|
| | | | | | | | | |
|
|
| CarryMaterialisedInLocal | IncrementLow | 0.4653 ns | 0.0096 ns | 0.0090 ns | 1.00 | 0.00 | - | NA |
|
|
| CarryInExpression | IncrementLow | 0.5082 ns | 0.0170 ns | 0.0151 ns | 1.09 | 0.04 | - | NA |
|
|
| | | | | | | | | |
|
|
| CarryMaterialisedInLocal | MixedOperands | 0.4628 ns | 0.0098 ns | 0.0091 ns | 1.00 | 0.00 | - | NA |
|
|
| CarryInExpression | MixedOperands | 0.4741 ns | 0.0107 ns | 0.0100 ns | 1.02 | 0.03 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
GpuUInt128AddBenchmarks.CarryMaterialisedInLocal: .NET 8.0 -> 2 outliers were removed (1.77 ns, 1.78 ns)
|
|
GpuUInt128AddBenchmarks.CarryInExpression: .NET 8.0 -> 1 outlier was removed (1.93 ns)
|
|
GpuUInt128AddBenchmarks.CarryMaterialisedInLocal: .NET 8.0 -> 1 outlier was detected (1.72 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GpuUInt128BinaryGcdBenchmarks.TemporaryStructPerIteration: .NET 8.0(Runtime=.NET 8.0) [Input=SmallOperands]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 5.987 ns, StdErr = 0.003 ns (0.05%), N = 13, StdDev = 0.011 ns
|
|
Min = 5.968 ns, Q1 = 5.981 ns, Median = 5.988 ns, Q3 = 5.992 ns, Max = 6.005 ns
|
|
IQR = 0.011 ns, LowerFence = 5.965 ns, UpperFence = 6.009 ns
|
|
ConfidenceInterval = [5.975 ns; 6.000 ns] (CI 99.9%), Margin = 0.013 ns (0.21% of Mean)
|
|
Skewness = -0.19, Kurtosis = 2.12, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[5.962 ns ; 6.011 ns) | @@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Median | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------------------- |-------------- |-----------:|----------:|----------:|-----------:|------:|--------:|----------:|------------:|
|
|
| ReusedVariables | HighEntropy | 195.593 ns | 0.4527 ns | 0.4234 ns | 195.557 ns | 1.00 | 0.00 | - | NA |
|
|
| TemporaryStructPerIteration | HighEntropy | 186.615 ns | 1.8451 ns | 1.7259 ns | 186.575 ns | 0.95 | 0.01 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ReusedVariables | HighWordOnly | 196.218 ns | 0.9524 ns | 0.8909 ns | 196.453 ns | 1.00 | 0.00 | - | NA |
|
|
| TemporaryStructPerIteration | HighWordOnly | 185.849 ns | 0.2859 ns | 0.2535 ns | 185.776 ns | 0.95 | 0.00 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ReusedVariables | LowWordHeavy | 157.787 ns | 0.1786 ns | 0.1583 ns | 157.783 ns | 1.00 | 0.00 | - | NA |
|
|
| TemporaryStructPerIteration | LowWordHeavy | 143.686 ns | 0.3787 ns | 0.3542 ns | 143.548 ns | 0.91 | 0.00 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ReusedVariables | SmallOperands | 7.317 ns | 0.3025 ns | 0.8919 ns | 7.600 ns | 1.00 | 0.00 | - | NA |
|
|
| TemporaryStructPerIteration | SmallOperands | 5.987 ns | 0.0128 ns | 0.0107 ns | 5.988 ns | 0.95 | 0.06 | - | NA |
|
|
|
|
// * Warnings *
|
|
MultimodalDistribution
|
|
GpuUInt128BinaryGcdBenchmarks.ReusedVariables: .NET 8.0 -> It seems that the distribution is bimodal (mValue = 3.71)
|
|
|
|
// * Hints *
|
|
Outliers
|
|
GpuUInt128BinaryGcdBenchmarks.ReusedVariables: .NET 8.0 -> 2 outliers were detected (195.08 ns, 197.31 ns)
|
|
GpuUInt128BinaryGcdBenchmarks.TemporaryStructPerIteration: .NET 8.0 -> 1 outlier was removed (189.36 ns)
|
|
GpuUInt128BinaryGcdBenchmarks.ReusedVariables: .NET 8.0 -> 1 outlier was removed (160.52 ns)
|
|
GpuUInt128BinaryGcdBenchmarks.TemporaryStructPerIteration: .NET 8.0 -> 2 outliers were removed (7.32 ns, 7.34 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GpuUInt128Montgomery64Benchmarks.GpuStructMontgomeryMultiply: .NET 8.0(Runtime=.NET 8.0) [Input=TinyOperands]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 24.869 ns, StdErr = 0.004 ns (0.01%), N = 12, StdDev = 0.013 ns
|
|
Min = 24.843 ns, Q1 = 24.865 ns, Median = 24.868 ns, Q3 = 24.877 ns, Max = 24.890 ns
|
|
IQR = 0.012 ns, LowerFence = 24.847 ns, UpperFence = 24.895 ns
|
|
ConfidenceInterval = [24.852 ns; 24.885 ns] (CI 99.9%), Margin = 0.016 ns (0.07% of Mean)
|
|
Skewness = -0.44, Kurtosis = 2.4, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[24.835 ns ; 24.898 ns) | @@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------------------- |--------------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ExtensionMontgomeryMultiply | DenseOperands | 3.663 ns | 0.0130 ns | 0.0115 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuStructMontgomeryMultiply | DenseOperands | 24.904 ns | 0.0410 ns | 0.0383 ns | 6.80 | 0.02 | - | NA |
|
|
| | | | | | | | | |
|
|
| ExtensionMontgomeryMultiply | MixedMagnitude | 3.636 ns | 0.0060 ns | 0.0056 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuStructMontgomeryMultiply | MixedMagnitude | 24.886 ns | 0.0175 ns | 0.0155 ns | 6.84 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ExtensionMontgomeryMultiply | NearModulus | 3.651 ns | 0.0172 ns | 0.0143 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuStructMontgomeryMultiply | NearModulus | 24.893 ns | 0.0408 ns | 0.0382 ns | 6.82 | 0.04 | - | NA |
|
|
| | | | | | | | | |
|
|
| ExtensionMontgomeryMultiply | TinyOperands | 3.639 ns | 0.0051 ns | 0.0048 ns | 1.00 | 0.00 | - | NA |
|
|
| GpuStructMontgomeryMultiply | TinyOperands | 24.869 ns | 0.0164 ns | 0.0128 ns | 6.83 | 0.01 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
GpuUInt128Montgomery64Benchmarks.ExtensionMontgomeryMultiply: .NET 8.0 -> 1 outlier was removed (4.98 ns)
|
|
GpuUInt128Montgomery64Benchmarks.GpuStructMontgomeryMultiply: .NET 8.0 -> 1 outlier was removed (26.27 ns)
|
|
GpuUInt128Montgomery64Benchmarks.ExtensionMontgomeryMultiply: .NET 8.0 -> 2 outliers were removed (5.00 ns, 5.02 ns)
|
|
GpuUInt128Montgomery64Benchmarks.GpuStructMontgomeryMultiply: .NET 8.0 -> 3 outliers were removed (26.21 ns..26.24 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GpuUInt128Mul64Benchmarks.HighProductInline: .NET 8.0(Runtime=.NET 8.0) [Input=TinyOperands]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 1.602 ns, StdErr = 0.001 ns (0.07%), N = 15, StdDev = 0.004 ns
|
|
Min = 1.592 ns, Q1 = 1.601 ns, Median = 1.602 ns, Q3 = 1.605 ns, Max = 1.607 ns
|
|
IQR = 0.003 ns, LowerFence = 1.596 ns, UpperFence = 1.609 ns
|
|
ConfidenceInterval = [1.597 ns; 1.606 ns] (CI 99.9%), Margin = 0.005 ns (0.29% of Mean)
|
|
Skewness = -1.02, Kurtosis = 2.8, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[1.590 ns ; 1.609 ns) | @@@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|------------------------------- |------------- |---------:|----------:|----------:|------:|----------:|------------:|
|
|
| HighProductMaterialisedInLocal | AllBitsSet | 1.551 ns | 0.0116 ns | 0.0109 ns | 1.00 | - | NA |
|
|
| HighProductInline | AllBitsSet | 1.631 ns | 0.0164 ns | 0.0145 ns | 1.05 | - | NA |
|
|
| | | | | | | | |
|
|
| HighProductMaterialisedInLocal | HighByLow | 1.532 ns | 0.0056 ns | 0.0046 ns | 1.00 | - | NA |
|
|
| HighProductInline | HighByLow | 1.594 ns | 0.0064 ns | 0.0060 ns | 1.04 | - | NA |
|
|
| | | | | | | | |
|
|
| HighProductMaterialisedInLocal | LowWordMax | 1.548 ns | 0.0042 ns | 0.0035 ns | 1.00 | - | NA |
|
|
| HighProductInline | LowWordMax | 1.623 ns | 0.0062 ns | 0.0048 ns | 1.05 | - | NA |
|
|
| | | | | | | | |
|
|
| HighProductMaterialisedInLocal | TinyOperands | 1.529 ns | 0.0077 ns | 0.0069 ns | 1.00 | - | NA |
|
|
| HighProductInline | TinyOperands | 1.602 ns | 0.0047 ns | 0.0044 ns | 1.05 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
GpuUInt128Mul64Benchmarks.HighProductInline: .NET 8.0 -> 1 outlier was removed (2.99 ns)
|
|
GpuUInt128Mul64Benchmarks.HighProductMaterialisedInLocal: .NET 8.0 -> 2 outliers were removed, 3 outliers were detected (2.79 ns, 2.82 ns, 2.84 ns)
|
|
GpuUInt128Mul64Benchmarks.HighProductMaterialisedInLocal: .NET 8.0 -> 2 outliers were removed, 3 outliers were detected (2.82 ns, 2.84 ns, 2.84 ns)
|
|
GpuUInt128Mul64Benchmarks.HighProductInline: .NET 8.0 -> 3 outliers were removed (2.93 ns..2.96 ns)
|
|
GpuUInt128Mul64Benchmarks.HighProductMaterialisedInLocal: .NET 8.0 -> 1 outlier was removed (2.82 ns)
|
|
GpuUInt128Mul64Benchmarks.HighProductInline: .NET 8.0 -> 2 outliers were detected (2.87 ns, 2.87 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GpuUInt128MulModBenchmarks.AllocatePerIteration: .NET 8.0(Runtime=.NET 8.0) [Input=TinyOperands]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 4.659 ns, StdErr = 0.003 ns (0.06%), N = 14, StdDev = 0.011 ns
|
|
Min = 4.645 ns, Q1 = 4.650 ns, Median = 4.659 ns, Q3 = 4.667 ns, Max = 4.675 ns
|
|
IQR = 0.018 ns, LowerFence = 4.623 ns, UpperFence = 4.694 ns
|
|
ConfidenceInterval = [4.647 ns; 4.671 ns] (CI 99.9%), Margin = 0.012 ns (0.26% of Mean)
|
|
Skewness = 0.12, Kurtosis = 1.35, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[4.639 ns ; 4.681 ns) | @@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|--------------------- |---------------- |-----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| InPlaceMulMod | HighWordModulus | 192.794 ns | 0.5762 ns | 0.5390 ns | 1.00 | 0.00 | - | NA |
|
|
| AllocatePerIteration | HighWordModulus | 184.322 ns | 1.0378 ns | 0.9708 ns | 0.96 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| InPlaceMulMod | LowWordHeavy | 6.883 ns | 0.0163 ns | 0.0153 ns | 1.00 | 0.00 | - | NA |
|
|
| AllocatePerIteration | LowWordHeavy | 116.993 ns | 0.3416 ns | 0.2853 ns | 17.00 | 0.06 | - | NA |
|
|
| | | | | | | | | |
|
|
| InPlaceMulMod | MixedMagnitude | 201.468 ns | 1.0945 ns | 0.9703 ns | 1.00 | 0.00 | - | NA |
|
|
| AllocatePerIteration | MixedMagnitude | 138.684 ns | 1.0645 ns | 0.9437 ns | 0.69 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| InPlaceMulMod | TinyOperands | 7.146 ns | 0.0140 ns | 0.0125 ns | 1.00 | 0.00 | - | NA |
|
|
| AllocatePerIteration | TinyOperands | 4.659 ns | 0.0119 ns | 0.0106 ns | 0.65 | 0.00 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
GpuUInt128MulModBenchmarks.AllocatePerIteration: .NET 8.0 -> 2 outliers were removed, 3 outliers were detected (118.15 ns, 119.88 ns, 120.37 ns)
|
|
GpuUInt128MulModBenchmarks.InPlaceMulMod: .NET 8.0 -> 1 outlier was removed (205.87 ns)
|
|
GpuUInt128MulModBenchmarks.AllocatePerIteration: .NET 8.0 -> 1 outlier was removed (143.71 ns)
|
|
GpuUInt128MulModBenchmarks.InPlaceMulMod: .NET 8.0 -> 1 outlier was removed (8.46 ns)
|
|
GpuUInt128MulModBenchmarks.AllocatePerIteration: .NET 8.0 -> 1 outlier was removed (6.25 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GpuUInt128MulModByLimbBenchmarks.InPlaceReduction: .NET 8.0(Runtime=.NET 8.0) [Input=TinyOperands]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 12.915 ns, StdErr = 0.009 ns (0.07%), N = 15, StdDev = 0.034 ns
|
|
Min = 12.851 ns, Q1 = 12.901 ns, Median = 12.919 ns, Q3 = 12.938 ns, Max = 12.985 ns
|
|
IQR = 0.037 ns, LowerFence = 12.844 ns, UpperFence = 12.994 ns
|
|
ConfidenceInterval = [12.879 ns; 12.951 ns] (CI 99.9%), Margin = 0.036 ns (0.28% of Mean)
|
|
Skewness = -0.01, Kurtosis = 2.51, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[12.833 ns ; 13.003 ns) | @@@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|----------------- |----------------- |---------:|---------:|---------:|------:|----------:|------------:|
|
|
| LegacyAllocating | HighWordDominant | 12.69 ns | 0.026 ns | 0.023 ns | 1.00 | - | NA |
|
|
| InPlaceReduction | HighWordDominant | 17.88 ns | 0.059 ns | 0.055 ns | 1.41 | - | NA |
|
|
| | | | | | | | |
|
|
| LegacyAllocating | MixedMagnitude | 16.26 ns | 0.134 ns | 0.119 ns | 1.00 | - | NA |
|
|
| InPlaceReduction | MixedMagnitude | 25.14 ns | 0.086 ns | 0.076 ns | 1.55 | - | NA |
|
|
| | | | | | | | |
|
|
| LegacyAllocating | TinyOperands | 10.74 ns | 0.035 ns | 0.029 ns | 1.00 | - | NA |
|
|
| InPlaceReduction | TinyOperands | 12.92 ns | 0.036 ns | 0.034 ns | 1.20 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
GpuUInt128MulModByLimbBenchmarks.LegacyAllocating: .NET 8.0 -> 1 outlier was removed (14.07 ns)
|
|
GpuUInt128MulModByLimbBenchmarks.LegacyAllocating: .NET 8.0 -> 1 outlier was removed (18.20 ns)
|
|
GpuUInt128MulModByLimbBenchmarks.InPlaceReduction: .NET 8.0 -> 1 outlier was removed (26.84 ns)
|
|
GpuUInt128MulModByLimbBenchmarks.LegacyAllocating: .NET 8.0 -> 2 outliers were removed (12.48 ns, 12.82 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GpuUInt128NativeModuloBenchmarks.DeferredNativeModulo: .NET 8.0(Runtime=.NET 8.0) [Input=TinyOperands]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 18.149 ns, StdErr = 0.003 ns (0.02%), N = 13, StdDev = 0.011 ns
|
|
Min = 18.138 ns, Q1 = 18.140 ns, Median = 18.148 ns, Q3 = 18.153 ns, Max = 18.178 ns
|
|
IQR = 0.012 ns, LowerFence = 18.121 ns, UpperFence = 18.171 ns
|
|
ConfidenceInterval = [18.136 ns; 18.162 ns] (CI 99.9%), Margin = 0.013 ns (0.07% of Mean)
|
|
Skewness = 1.21, Kurtosis = 3.97, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[18.132 ns ; 18.184 ns) | @@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|--------------------- |--------------- |-----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ImmediateModulo | DenseOperands | 38.127 ns | 0.7045 ns | 0.6590 ns | 1.00 | 0.00 | - | NA |
|
|
| DeferredNativeModulo | DenseOperands | 298.926 ns | 0.5983 ns | 0.4996 ns | 7.83 | 0.14 | - | NA |
|
|
| | | | | | | | | |
|
|
| ImmediateModulo | MixedMagnitude | 58.555 ns | 0.4244 ns | 0.3970 ns | 1.00 | 0.00 | - | NA |
|
|
| DeferredNativeModulo | MixedMagnitude | 255.624 ns | 0.1145 ns | 0.1015 ns | 4.36 | 0.03 | - | NA |
|
|
| | | | | | | | | |
|
|
| ImmediateModulo | NearModulus | 54.691 ns | 0.0499 ns | 0.0442 ns | 1.00 | 0.00 | - | NA |
|
|
| DeferredNativeModulo | NearModulus | 293.280 ns | 0.4286 ns | 0.4009 ns | 5.36 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ImmediateModulo | TinyOperands | 7.278 ns | 0.0065 ns | 0.0058 ns | 1.00 | 0.00 | - | NA |
|
|
| DeferredNativeModulo | TinyOperands | 18.149 ns | 0.0132 ns | 0.0110 ns | 2.49 | 0.00 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
GpuUInt128NativeModuloBenchmarks.DeferredNativeModulo: .NET 8.0 -> 2 outliers were removed (303.48 ns, 306.88 ns)
|
|
GpuUInt128NativeModuloBenchmarks.DeferredNativeModulo: .NET 8.0 -> 1 outlier was removed (258.04 ns)
|
|
GpuUInt128NativeModuloBenchmarks.ImmediateModulo: .NET 8.0 -> 1 outlier was removed (56.38 ns)
|
|
GpuUInt128NativeModuloBenchmarks.ImmediateModulo: .NET 8.0 -> 1 outlier was removed (8.67 ns)
|
|
GpuUInt128NativeModuloBenchmarks.DeferredNativeModulo: .NET 8.0 -> 2 outliers were removed (19.49 ns, 19.50 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GpuUInt128ScalarMulModBenchmarks.SpecializedScalar: .NET 8.0(Runtime=.NET 8.0) [Input=TinyOperands]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 154.154 ns, StdErr = 0.059 ns (0.04%), N = 14, StdDev = 0.222 ns
|
|
Min = 153.796 ns, Q1 = 154.000 ns, Median = 154.182 ns, Q3 = 154.294 ns, Max = 154.519 ns
|
|
IQR = 0.294 ns, LowerFence = 153.559 ns, UpperFence = 154.736 ns
|
|
ConfidenceInterval = [153.903 ns; 154.405 ns] (CI 99.9%), Margin = 0.251 ns (0.16% of Mean)
|
|
Skewness = 0.02, Kurtosis = 1.76, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[153.675 ns ; 154.640 ns) | @@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|------------------ |----------------- |---------:|--------:|--------:|------:|----------:|------------:|
|
|
| StructAllocating | HighWordDominant | 193.7 ns | 0.63 ns | 0.59 ns | 1.00 | - | NA |
|
|
| SpecializedScalar | HighWordDominant | 192.1 ns | 0.42 ns | 0.35 ns | 0.99 | - | NA |
|
|
| | | | | | | | |
|
|
| StructAllocating | MixedMagnitude | 180.7 ns | 0.39 ns | 0.36 ns | 1.00 | - | NA |
|
|
| SpecializedScalar | MixedMagnitude | 168.5 ns | 0.59 ns | 0.55 ns | 0.93 | - | NA |
|
|
| | | | | | | | |
|
|
| StructAllocating | TinyOperands | 164.0 ns | 0.28 ns | 0.23 ns | 1.00 | - | NA |
|
|
| SpecializedScalar | TinyOperands | 154.2 ns | 0.25 ns | 0.22 ns | 0.94 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
GpuUInt128ScalarMulModBenchmarks.SpecializedScalar: .NET 8.0 -> 2 outliers were removed (195.07 ns, 197.17 ns)
|
|
GpuUInt128ScalarMulModBenchmarks.StructAllocating: .NET 8.0 -> 1 outlier was detected (181.51 ns)
|
|
GpuUInt128ScalarMulModBenchmarks.StructAllocating: .NET 8.0 -> 2 outliers were removed (166.87 ns, 167.12 ns)
|
|
GpuUInt128ScalarMulModBenchmarks.SpecializedScalar: .NET 8.0 -> 1 outlier was removed (157.40 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GpuUInt128SubModScalarBenchmarks.LegacyTemporaries: .NET 8.0(Runtime=.NET 8.0) [Input=UnderflowAddsModulus]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.722 ns, StdErr = 0.002 ns (0.31%), N = 15, StdDev = 0.009 ns
|
|
Min = 0.710 ns, Q1 = 0.718 ns, Median = 0.722 ns, Q3 = 0.728 ns, Max = 0.741 ns
|
|
IQR = 0.011 ns, LowerFence = 0.702 ns, UpperFence = 0.744 ns
|
|
ConfidenceInterval = [0.713 ns; 0.732 ns] (CI 99.9%), Margin = 0.009 ns (1.29% of Mean)
|
|
Skewness = 0.26, Kurtosis = 2.3, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.705 ns ; 0.730 ns) | @@@@@@@@@@@
|
|
[0.730 ns ; 0.746 ns) | @@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
.NET 8.0 : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Job=.NET 8.0 Runtime=.NET 8.0
|
|
|
|
| Method | Input | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|------------------ |--------------------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| CurrentInPlace | HighWordBorrow | 0.5112 ns | 0.0093 ns | 0.0087 ns | 1.00 | 0.00 | - | NA |
|
|
| LegacyTemporaries | HighWordBorrow | 0.5308 ns | 0.0044 ns | 0.0042 ns | 1.04 | 0.02 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentInPlace | LargeLowWord | 0.5092 ns | 0.0055 ns | 0.0052 ns | 1.00 | 0.00 | - | NA |
|
|
| LegacyTemporaries | LargeLowWord | 0.5144 ns | 0.0064 ns | 0.0060 ns | 1.01 | 0.02 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentInPlace | UnderflowAddsModulus | 0.7169 ns | 0.0040 ns | 0.0035 ns | 1.00 | 0.00 | - | NA |
|
|
| LegacyTemporaries | UnderflowAddsModulus | 0.7224 ns | 0.0093 ns | 0.0087 ns | 1.01 | 0.01 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
GpuUInt128SubModScalarBenchmarks.CurrentInPlace: .NET 8.0 -> 1 outlier was removed, 3 outliers were detected (1.98 ns, 1.98 ns, 2.00 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MontgomeryMultiplyBenchmarks.OptimizedImplementation: Job-KEFHMK(Runtime=.NET 8.0, IterationCount=10, LaunchCount=1, WarmupCount=1) [BatchSize=1024]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 3.752 us, StdErr = 0.001 us (0.02%), N = 10, StdDev = 0.002 us
|
|
Min = 3.746 us, Q1 = 3.751 us, Median = 3.752 us, Q3 = 3.753 us, Max = 3.755 us
|
|
IQR = 0.001 us, LowerFence = 3.750 us, UpperFence = 3.755 us
|
|
ConfidenceInterval = [3.748 us; 3.755 us] (CI 99.9%), Margin = 0.004 us (0.10% of Mean)
|
|
Skewness = -0.72, Kurtosis = 2.54, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[3.745 us ; 3.756 us) | @@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-KEFHMK : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=10 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | BatchSize | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|------------------------ |---------- |-----------:|---------:|---------:|------:|----------:|------------:|
|
|
| OriginalImplementation | 64 | 247.0 ns | 2.70 ns | 1.60 ns | 1.00 | - | NA |
|
|
| OptimizedImplementation | 64 | 234.9 ns | 0.83 ns | 0.55 ns | 0.95 | - | NA |
|
|
| | | | | | | | |
|
|
| OriginalImplementation | 256 | 974.2 ns | 5.34 ns | 2.79 ns | 1.00 | - | NA |
|
|
| OptimizedImplementation | 256 | 942.6 ns | 3.33 ns | 2.20 ns | 0.97 | - | NA |
|
|
| | | | | | | | |
|
|
| OriginalImplementation | 1024 | 3,940.6 ns | 51.22 ns | 33.88 ns | 1.00 | - | NA |
|
|
| OptimizedImplementation | 1024 | 3,751.6 ns | 3.73 ns | 2.47 ns | 0.95 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
MontgomeryMultiplyBenchmarks.OriginalImplementation: Runtime=.NET 8.0, IterationCount=10, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (256.77 ns)
|
|
MontgomeryMultiplyBenchmarks.OriginalImplementation: Runtime=.NET 8.0, IterationCount=10, LaunchCount=1, WarmupCount=1 -> 2 outliers were removed, 4 outliers were detected (971.28 ns, 972.29 ns, 984.85 ns, 1.00 us)
|
|
MontgomeryMultiplyBenchmarks.OptimizedImplementation: Runtime=.NET 8.0, IterationCount=10, LaunchCount=1, WarmupCount=1 -> 2 outliers were detected (3.75 us, 3.75 us)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pow2MontgomeryModBenchmarks.BigIntegerMod: Job-OPHYZY(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Scale=Large]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 562.781 us, StdErr = 0.497 us (0.09%), N = 5, StdDev = 1.111 us
|
|
Min = 561.136 us, Q1 = 562.598 us, Median = 562.681 us, Q3 = 563.338 us, Max = 564.153 us
|
|
IQR = 0.739 us, LowerFence = 561.489 us, UpperFence = 564.447 us
|
|
ConfidenceInterval = [558.502 us; 567.061 us] (CI 99.9%), Margin = 4.279 us (0.76% of Mean)
|
|
Skewness = -0.25, Kurtosis = 1.44, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[560.283 us ; 565.006 us) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-OPHYZY : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Scale | Mean | Error | StdDev | Ratio | RatioSD | Gen0 | Allocated | Alloc Ratio |
|
|
|----------------------- |------ |-----------:|----------:|----------:|------:|--------:|-------:|----------:|------------:|
|
|
| Baseline | Small | 36.359 us | 0.5443 us | 0.1414 us | 1.00 | 0.00 | - | - | NA |
|
|
| BaselineWithKnownCycle | Small | 26.040 us | 0.2308 us | 0.0357 us | 0.72 | 0.00 | - | - | NA |
|
|
| LeftToRight | Small | 39.112 us | 1.1095 us | 0.1717 us | 1.08 | 0.00 | - | - | NA |
|
|
| Batched4 | Small | 38.740 us | 0.4199 us | 0.1090 us | 1.07 | 0.01 | - | - | NA |
|
|
| SlidingWindow | Small | 52.822 us | 0.1447 us | 0.0376 us | 1.45 | 0.01 | - | - | NA |
|
|
| BinaryMod | Small | 24.746 us | 0.3291 us | 0.0855 us | 0.68 | 0.00 | - | - | NA |
|
|
| PrecomputedTableMod | Small | 30.177 us | 0.8010 us | 0.2080 us | 0.83 | 0.00 | - | - | NA |
|
|
| BigIntegerMod | Small | 17.207 us | 0.0480 us | 0.0074 us | 0.47 | 0.00 | - | - | NA |
|
|
| | | | | | | | | | |
|
|
| Baseline | Large | 117.316 us | 1.1253 us | 0.2922 us | 1.00 | 0.00 | - | - | NA |
|
|
| BaselineWithKnownCycle | Large | 9.528 us | 0.0969 us | 0.0252 us | 0.08 | 0.00 | - | - | NA |
|
|
| LeftToRight | Large | 126.384 us | 3.8246 us | 0.9932 us | 1.08 | 0.01 | - | - | NA |
|
|
| Batched4 | Large | 120.110 us | 0.5397 us | 0.1402 us | 1.02 | 0.00 | - | - | NA |
|
|
| SlidingWindow | Large | 124.134 us | 0.2362 us | 0.0365 us | 1.06 | 0.00 | - | - | NA |
|
|
| BinaryMod | Large | 295.289 us | 3.5017 us | 0.9094 us | 2.52 | 0.01 | - | - | NA |
|
|
| PrecomputedTableMod | Large | 289.804 us | 1.9896 us | 0.5167 us | 2.47 | 0.01 | - | - | NA |
|
|
| BigIntegerMod | Large | 562.781 us | 4.2794 us | 1.1114 us | 4.80 | 0.02 | 1.9531 | 20480 B | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Pow2MontgomeryModBenchmarks.BaselineWithKnownCycle: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (25.99 us, 26.54 us)
|
|
Pow2MontgomeryModBenchmarks.LeftToRight: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (39.65 us)
|
|
Pow2MontgomeryModBenchmarks.Batched4: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (38.56 us)
|
|
Pow2MontgomeryModBenchmarks.BigIntegerMod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (17.25 us)
|
|
Pow2MontgomeryModBenchmarks.Baseline: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (116.89 us)
|
|
Pow2MontgomeryModBenchmarks.SlidingWindow: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (124.35 us)
|
|
Pow2MontgomeryModBenchmarks.BigIntegerMod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (561.14 us)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pow2MontgomeryModCycleComputationBenchmarks.MontgomeryWithGpuCycleComputation: Job-DXKTIZ(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Scale=Large]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 12.908 us, StdErr = 0.013 us (0.10%), N = 5, StdDev = 0.030 us
|
|
Min = 12.875 us, Q1 = 12.884 us, Median = 12.916 us, Q3 = 12.916 us, Max = 12.949 us
|
|
IQR = 0.033 us, LowerFence = 12.834 us, UpperFence = 12.965 us
|
|
ConfidenceInterval = [12.794 us; 13.022 us] (CI 99.9%), Margin = 0.114 us (0.88% of Mean)
|
|
Skewness = 0.17, Kurtosis = 1.15, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[12.853 us ; 12.972 us) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-DXKTIZ : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Scale | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------------------------- |------ |--------------:|------------:|-----------:|---------:|--------:|----------:|------------:|
|
|
| MontgomeryWithoutCycle | Small | 35.407 us | 0.3530 us | 0.0917 us | 1.00 | 0.00 | - | NA |
|
|
| MontgomeryWithPrecomputedCycle | Small | 25.808 us | 0.1513 us | 0.0393 us | 0.73 | 0.00 | - | NA |
|
|
| MontgomeryWithGpuCycleComputation | Small | 54,088.467 us | 399.4765 us | 61.8194 us | 1,527.49 | 3.33 | 40 B | NA |
|
|
| | | | | | | | | |
|
|
| MontgomeryWithoutCycle | Large | 117.327 us | 1.4583 us | 0.3787 us | 1.00 | 0.00 | - | NA |
|
|
| MontgomeryWithPrecomputedCycle | Large | 9.119 us | 0.1517 us | 0.0394 us | 0.08 | 0.00 | - | NA |
|
|
| MontgomeryWithGpuCycleComputation | Large | 12.908 us | 0.1137 us | 0.0295 us | 0.11 | 0.00 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Pow2MontgomeryModCycleComputationBenchmarks.MontgomeryWithGpuCycleComputation: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (54.26 ms)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ResidueComputationBenchmarks.ModMethodModulo: DefaultJob [Exponent=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 3.355 ns, StdErr = 0.003 ns (0.08%), N = 15, StdDev = 0.011 ns
|
|
Min = 3.338 ns, Q1 = 3.347 ns, Median = 3.353 ns, Q3 = 3.366 ns, Max = 3.371 ns
|
|
IQR = 0.019 ns, LowerFence = 3.319 ns, UpperFence = 3.394 ns
|
|
ConfidenceInterval = [3.343 ns; 3.366 ns] (CI 99.9%), Margin = 0.012 ns (0.35% of Mean)
|
|
Skewness = 0.15, Kurtosis = 1.5, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[3.333 ns ; 3.377 ns) | @@@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
DefaultJob : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
|
|
| Method | Exponent | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |---------:|----------:|----------:|------:|----------:|------------:|
|
|
| LegacyModulo | 3 | 2.412 ns | 0.0088 ns | 0.0078 ns | 1.00 | - | NA |
|
|
| ModMethodModulo | 3 | 2.799 ns | 0.0109 ns | 0.0091 ns | 1.16 | - | NA |
|
|
| | | | | | | | |
|
|
| LegacyModulo | 8191 | 2.405 ns | 0.0110 ns | 0.0092 ns | 1.00 | - | NA |
|
|
| ModMethodModulo | 8191 | 2.842 ns | 0.0149 ns | 0.0139 ns | 1.18 | - | NA |
|
|
| | | | | | | | |
|
|
| LegacyModulo | 131071 | 2.416 ns | 0.0117 ns | 0.0110 ns | 1.00 | - | NA |
|
|
| ModMethodModulo | 131071 | 3.111 ns | 0.0138 ns | 0.0129 ns | 1.29 | - | NA |
|
|
| | | | | | | | |
|
|
| LegacyModulo | 2147483647 | 2.427 ns | 0.0051 ns | 0.0046 ns | 1.00 | - | NA |
|
|
| ModMethodModulo | 2147483647 | 3.355 ns | 0.0116 ns | 0.0108 ns | 1.38 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
ResidueComputationBenchmarks.LegacyModulo: Default -> 1 outlier was removed (3.74 ns)
|
|
ResidueComputationBenchmarks.ModMethodModulo: Default -> 2 outliers were removed (4.10 ns, 4.14 ns)
|
|
ResidueComputationBenchmarks.LegacyModulo: Default -> 2 outliers were removed (3.75 ns, 3.78 ns)
|
|
ResidueComputationBenchmarks.ModMethodModulo: Default -> 2 outliers were detected (4.09 ns, 4.10 ns)
|
|
ResidueComputationBenchmarks.LegacyModulo: Default -> 1 outlier was removed (3.73 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MersenneDivisorCycleLengthGpuBenchmarks.UnrolledHexImplementation: Job-VMUOXT(Runtime=.NET 8.0, IterationCount=3, LaunchCount=1, WarmupCount=1) [Divisor=8388607]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 4.591 ms, StdErr = 0.001 ms (0.02%), N = 3, StdDev = 0.002 ms
|
|
Min = 4.590 ms, Q1 = 4.591 ms, Median = 4.591 ms, Q3 = 4.592 ms, Max = 4.593 ms
|
|
IQR = 0.002 ms, LowerFence = 4.588 ms, UpperFence = 4.594 ms
|
|
ConfidenceInterval = [4.564 ms; 4.619 ms] (CI 99.9%), Margin = 0.028 ms (0.60% of Mean)
|
|
Skewness = 0.06, Kurtosis = 0.67, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[4.588 ms ; 4.594 ms) | @@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-VMUOXT : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=3 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Divisor | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|----------------------------- |-------- |-----------------:|----------------:|---------------:|------:|--------:|----------:|------------:|
|
|
| CurrentImplementation | 17 | 6.741 ns | 20.3809 ns | 1.1171 ns | 1.00 | 0.00 | - | NA |
|
|
| DoWhileImplementation | 17 | 5.877 ns | 1.2875 ns | 0.0706 ns | 0.89 | 0.14 | - | NA |
|
|
| DoubleSubtractImplementation | 17 | 6.300 ns | 0.7151 ns | 0.0392 ns | 0.95 | 0.14 | - | NA |
|
|
| UInt128ModuloImplementation | 17 | 42.355 ns | 2.8645 ns | 0.1570 ns | 6.39 | 0.97 | - | NA |
|
|
| UnrolledPairImplementation | 17 | 6.789 ns | 0.0964 ns | 0.0053 ns | 1.02 | 0.16 | - | NA |
|
|
| UnrolledQuadImplementation | 17 | 5.834 ns | 2.6198 ns | 0.1436 ns | 0.88 | 0.13 | - | NA |
|
|
| UnrolledOctImplementation | 17 | 5.445 ns | 0.3855 ns | 0.0211 ns | 0.82 | 0.12 | - | NA |
|
|
| UnrolledHexImplementation | 17 | 4.833 ns | 0.1499 ns | 0.0082 ns | 0.73 | 0.11 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | 31 | 9.469 ns | 0.4837 ns | 0.0265 ns | 1.00 | 0.00 | - | NA |
|
|
| DoWhileImplementation | 31 | 9.409 ns | 0.3854 ns | 0.0211 ns | 0.99 | 0.00 | - | NA |
|
|
| DoubleSubtractImplementation | 31 | 8.476 ns | 0.6979 ns | 0.0383 ns | 0.90 | 0.01 | - | NA |
|
|
| UInt128ModuloImplementation | 31 | 45.255 ns | 0.5181 ns | 0.0284 ns | 4.78 | 0.01 | - | NA |
|
|
| UnrolledPairImplementation | 31 | 7.372 ns | 0.1373 ns | 0.0075 ns | 0.78 | 0.00 | - | NA |
|
|
| UnrolledQuadImplementation | 31 | 5.988 ns | 0.6249 ns | 0.0343 ns | 0.63 | 0.00 | - | NA |
|
|
| UnrolledOctImplementation | 31 | 5.779 ns | 1.5591 ns | 0.0855 ns | 0.61 | 0.01 | - | NA |
|
|
| UnrolledHexImplementation | 31 | 5.127 ns | 0.3423 ns | 0.0188 ns | 0.54 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | 8191 | 684.638 ns | 9.7897 ns | 0.5366 ns | 1.00 | 0.00 | - | NA |
|
|
| DoWhileImplementation | 8191 | 681.509 ns | 97.6324 ns | 5.3516 ns | 1.00 | 0.01 | - | NA |
|
|
| DoubleSubtractImplementation | 8191 | 685.454 ns | 130.5754 ns | 7.1573 ns | 1.00 | 0.01 | - | NA |
|
|
| UInt128ModuloImplementation | 8191 | 3,292.450 ns | 165.4176 ns | 9.0671 ns | 4.81 | 0.01 | - | NA |
|
|
| UnrolledPairImplementation | 8191 | 640.489 ns | 91.3047 ns | 5.0047 ns | 0.94 | 0.01 | - | NA |
|
|
| UnrolledQuadImplementation | 8191 | 610.716 ns | 63.5287 ns | 3.4822 ns | 0.89 | 0.00 | - | NA |
|
|
| UnrolledOctImplementation | 8191 | 582.150 ns | 124.1510 ns | 6.8051 ns | 0.85 | 0.01 | - | NA |
|
|
| UnrolledHexImplementation | 8191 | 552.836 ns | 30.3518 ns | 1.6637 ns | 0.81 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | 131071 | 55,781.576 ns | 3,739.5389 ns | 204.9767 ns | 1.00 | 0.00 | - | NA |
|
|
| DoWhileImplementation | 131071 | 55,696.390 ns | 1,069.4099 ns | 58.6180 ns | 1.00 | 0.00 | - | NA |
|
|
| DoubleSubtractImplementation | 131071 | 56,267.609 ns | 3,211.0457 ns | 176.0083 ns | 1.01 | 0.00 | - | NA |
|
|
| UInt128ModuloImplementation | 131071 | 71,508.525 ns | 2,910.0609 ns | 159.5103 ns | 1.28 | 0.00 | - | NA |
|
|
| UnrolledPairImplementation | 131071 | 52,647.972 ns | 5,477.0651 ns | 300.2164 ns | 0.94 | 0.00 | - | NA |
|
|
| UnrolledQuadImplementation | 131071 | 52,175.284 ns | 4,709.0765 ns | 258.1204 ns | 0.94 | 0.01 | - | NA |
|
|
| UnrolledOctImplementation | 131071 | 50,453.831 ns | 9,204.4196 ns | 504.5253 ns | 0.90 | 0.01 | - | NA |
|
|
| UnrolledHexImplementation | 131071 | 50,516.549 ns | 1,290.6332 ns | 70.7440 ns | 0.91 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | 524287 | 100,190.804 ns | 2,701.2789 ns | 148.0662 ns | 1.00 | 0.00 | - | NA |
|
|
| DoWhileImplementation | 524287 | 100,180.701 ns | 2,021.5359 ns | 110.8072 ns | 1.00 | 0.00 | - | NA |
|
|
| DoubleSubtractImplementation | 524287 | 100,945.190 ns | 8,500.9006 ns | 465.9630 ns | 1.01 | 0.01 | - | NA |
|
|
| UInt128ModuloImplementation | 524287 | 132,443.294 ns | 1,489.1490 ns | 81.6253 ns | 1.32 | 0.00 | - | NA |
|
|
| UnrolledPairImplementation | 524287 | 95,646.906 ns | 2,659.2089 ns | 145.7602 ns | 0.95 | 0.00 | - | NA |
|
|
| UnrolledQuadImplementation | 524287 | 98,377.401 ns | 700.5979 ns | 38.4021 ns | 0.98 | 0.00 | - | NA |
|
|
| UnrolledOctImplementation | 524287 | 96,018.392 ns | 634.3117 ns | 34.7688 ns | 0.96 | 0.00 | - | NA |
|
|
| UnrolledHexImplementation | 524287 | 94,820.581 ns | 4,302.7771 ns | 235.8497 ns | 0.95 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | 2097151 | 572,102.567 ns | 12,462.9791 ns | 683.1379 ns | 1.00 | 0.00 | - | NA |
|
|
| DoWhileImplementation | 2097151 | 597,706.585 ns | 12,005.6116 ns | 658.0681 ns | 1.04 | 0.00 | - | NA |
|
|
| DoubleSubtractImplementation | 2097151 | 579,587.128 ns | 486,254.8709 ns | 26,653.2703 ns | 1.01 | 0.05 | - | NA |
|
|
| UInt128ModuloImplementation | 2097151 | 730,129.924 ns | 18,007.6131 ns | 987.0580 ns | 1.28 | 0.00 | 1 B | NA |
|
|
| UnrolledPairImplementation | 2097151 | 541,683.750 ns | 23,917.6353 ns | 1,311.0063 ns | 0.95 | 0.00 | - | NA |
|
|
| UnrolledQuadImplementation | 2097151 | 530,161.597 ns | 10,170.0594 ns | 557.4553 ns | 0.93 | 0.00 | - | NA |
|
|
| UnrolledOctImplementation | 2097151 | 541,356.250 ns | 4,299.7940 ns | 235.6862 ns | 0.95 | 0.00 | - | NA |
|
|
| UnrolledHexImplementation | 2097151 | 530,835.382 ns | 18,773.6811 ns | 1,029.0488 ns | 0.93 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| CurrentImplementation | 8388607 | 4,945,688.281 ns | 80,178.6194 ns | 4,394.8607 ns | 1.00 | 0.00 | 3 B | 1.00 |
|
|
| DoWhileImplementation | 8388607 | 4,950,188.542 ns | 126,375.4630 ns | 6,927.0656 ns | 1.00 | 0.00 | 3 B | 1.00 |
|
|
| DoubleSubtractImplementation | 8388607 | 4,915,241.406 ns | 198,944.9215 ns | 10,904.8425 ns | 0.99 | 0.00 | 3 B | 1.00 |
|
|
| UInt128ModuloImplementation | 8388607 | 6,165,180.208 ns | 345,499.7285 ns | 18,938.0060 ns | 1.25 | 0.00 | 6 B | 2.00 |
|
|
| UnrolledPairImplementation | 8388607 | 4,778,103.125 ns | 48,098.6391 ns | 2,636.4487 ns | 0.97 | 0.00 | 3 B | 1.00 |
|
|
| UnrolledQuadImplementation | 8388607 | 4,748,245.052 ns | 221,915.6436 ns | 12,163.9452 ns | 0.96 | 0.00 | 3 B | 1.00 |
|
|
| UnrolledOctImplementation | 8388607 | 4,674,474.219 ns | 171,733.6592 ns | 9,413.3014 ns | 0.95 | 0.00 | 3 B | 1.00 |
|
|
| UnrolledHexImplementation | 8388607 | 4,591,312.500 ns | 27,677.3865 ns | 1,517.0909 ns | 0.93 | 0.00 | 3 B | 1.00 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod8ULongBenchmarks.ExtensionMethod: Job-MSCCQK(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551488]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.011 ns, StdErr = 0.000 ns (3.51%), N = 5, StdDev = 0.001 ns
|
|
Min = 0.010 ns, Q1 = 0.011 ns, Median = 0.011 ns, Q3 = 0.012 ns, Max = 0.012 ns
|
|
IQR = 0.001 ns, LowerFence = 0.009 ns, UpperFence = 0.013 ns
|
|
ConfidenceInterval = [0.008 ns; 0.014 ns] (CI 99.9%), Margin = 0.003 ns (30.26% of Mean)
|
|
Skewness = -0.29, Kurtosis = 1.23, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.009 ns ; 0.010 ns) | @
|
|
[0.010 ns ; 0.012 ns) | @@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-MSCCQK : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Median | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 8 | 0.0224 ns | 0.0199 ns | 0.0031 ns | 0.0234 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8 | 0.0344 ns | 0.0296 ns | 0.0046 ns | 0.0345 ns | 1.55 | 0.26 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 8191 | 0.0000 ns | 0.0000 ns | 0.0000 ns | 0.0000 ns | ? | ? | - | ? |
|
|
| ExtensionMethod | 8191 | 0.0296 ns | 0.0199 ns | 0.0052 ns | 0.0305 ns | ? | ? | - | ? |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 131071 | 0.0069 ns | 0.0102 ns | 0.0026 ns | 0.0072 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.0114 ns | 0.0044 ns | 0.0011 ns | 0.0114 ns | 2.00 | 1.26 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0117 ns | 0.0041 ns | 0.0011 ns | 0.0111 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.0106 ns | 0.0021 ns | 0.0003 ns | 0.0107 ns | 0.90 | 0.11 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 18446744073709551488 | 0.1073 ns | 0.4465 ns | 0.1160 ns | 0.0256 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 18446744073709551488 | 0.0109 ns | 0.0033 ns | 0.0009 ns | 0.0107 ns | 0.31 | 0.25 | - | NA |
|
|
|
|
// * Warnings *
|
|
BaselineCustomAnalyzer
|
|
Summary -> A question mark '?' symbol indicates that it was not possible to compute the (Ratio, RatioSD, Alloc Ratio) column(s) because the baseline value is too close to zero.
|
|
ZeroMeasurement
|
|
Mod8ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod8ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.32 ns, 1.35 ns)
|
|
Mod8ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.35 ns)
|
|
Mod8ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.52 ns)
|
|
Mod8ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.29 ns)
|
|
Mod8ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.29 ns, 1.29 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod10_8_5_3Benchmarks.ModMethodModulo: DefaultJob [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 2.164 ns, StdErr = 0.002 ns (0.08%), N = 14, StdDev = 0.007 ns
|
|
Min = 2.151 ns, Q1 = 2.159 ns, Median = 2.165 ns, Q3 = 2.166 ns, Max = 2.176 ns
|
|
IQR = 0.007 ns, LowerFence = 2.149 ns, UpperFence = 2.177 ns
|
|
ConfidenceInterval = [2.156 ns; 2.171 ns] (CI 99.9%), Margin = 0.008 ns (0.35% of Mean)
|
|
Skewness = -0.26, Kurtosis = 2.21, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[2.147 ns ; 2.180 ns) | @@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
DefaultJob : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |---------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 3 | 1.138 ns | 0.0057 ns | 0.0053 ns | 1.00 | 0.00 | - | NA |
|
|
| LegacyModulo | 3 | 2.834 ns | 0.0066 ns | 0.0061 ns | 2.49 | 0.01 | - | NA |
|
|
| ModMethodModulo | 3 | 1.630 ns | 0.0083 ns | 0.0074 ns | 1.43 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 8191 | 1.143 ns | 0.0062 ns | 0.0058 ns | 1.00 | 0.00 | - | NA |
|
|
| LegacyModulo | 8191 | 3.038 ns | 0.0090 ns | 0.0084 ns | 2.66 | 0.02 | - | NA |
|
|
| ModMethodModulo | 8191 | 1.635 ns | 0.0033 ns | 0.0031 ns | 1.43 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 131071 | 1.134 ns | 0.0043 ns | 0.0041 ns | 1.00 | 0.00 | - | NA |
|
|
| LegacyModulo | 131071 | 3.067 ns | 0.0347 ns | 0.0289 ns | 2.70 | 0.03 | - | NA |
|
|
| ModMethodModulo | 131071 | 1.875 ns | 0.0055 ns | 0.0049 ns | 1.65 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 1.141 ns | 0.0044 ns | 0.0042 ns | 1.00 | 0.00 | - | NA |
|
|
| LegacyModulo | 2147483647 | 3.039 ns | 0.0100 ns | 0.0094 ns | 2.66 | 0.01 | - | NA |
|
|
| ModMethodModulo | 2147483647 | 2.164 ns | 0.0076 ns | 0.0067 ns | 1.90 | 0.01 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod10_8_5_3Benchmarks.ModMethodModulo: Default -> 1 outlier was removed (2.93 ns)
|
|
Mod10_8_5_3Benchmarks.LegacyModulo: Default -> 1 outlier was detected (4.30 ns)
|
|
Mod10_8_5_3Benchmarks.ModuloOperator: Default -> 1 outlier was detected (2.41 ns)
|
|
Mod10_8_5_3Benchmarks.LegacyModulo: Default -> 2 outliers were removed (4.46 ns, 4.57 ns)
|
|
Mod10_8_5_3Benchmarks.ModMethodModulo: Default -> 1 outlier was removed (3.17 ns)
|
|
Mod10_8_5_3Benchmarks.LegacyModulo: Default -> 1 outlier was detected (4.29 ns)
|
|
Mod10_8_5_3Benchmarks.ModMethodModulo: Default -> 1 outlier was removed (3.48 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod10_8_5_3PropertiesBenchmarks.ModMethodModulo: DefaultJob [Value=18446744073709551598]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 4.289 ns, StdErr = 0.002 ns (0.05%), N = 15, StdDev = 0.008 ns
|
|
Min = 4.279 ns, Q1 = 4.282 ns, Median = 4.286 ns, Q3 = 4.296 ns, Max = 4.305 ns
|
|
IQR = 0.013 ns, LowerFence = 4.263 ns, UpperFence = 4.315 ns
|
|
ConfidenceInterval = [4.281 ns; 4.298 ns] (CI 99.9%), Margin = 0.009 ns (0.20% of Mean)
|
|
Skewness = 0.42, Kurtosis = 1.76, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[4.275 ns ; 4.310 ns) | @@@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
DefaultJob : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |---------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| LegacyModulo | 3 | 2.413 ns | 0.0132 ns | 0.0123 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 3 | 2.790 ns | 0.0058 ns | 0.0049 ns | 1.16 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 6 | 2.378 ns | 0.0156 ns | 0.0146 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 6 | 3.135 ns | 0.0503 ns | 0.0471 ns | 1.32 | 0.02 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 128 | 2.358 ns | 0.0047 ns | 0.0040 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 128 | 2.775 ns | 0.0174 ns | 0.0163 ns | 1.18 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 256 | 2.363 ns | 0.0051 ns | 0.0048 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 256 | 3.005 ns | 0.0059 ns | 0.0049 ns | 1.27 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 2047 | 2.370 ns | 0.0104 ns | 0.0092 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 2047 | 3.033 ns | 0.0078 ns | 0.0069 ns | 1.28 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 8191 | 2.361 ns | 0.0048 ns | 0.0045 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 8191 | 3.070 ns | 0.0113 ns | 0.0101 ns | 1.30 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 65535 | 2.400 ns | 0.0142 ns | 0.0133 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 65535 | 3.032 ns | 0.0141 ns | 0.0132 ns | 1.26 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 131071 | 2.355 ns | 0.0056 ns | 0.0044 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 131071 | 3.206 ns | 0.0096 ns | 0.0089 ns | 1.36 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 2147483647 | 2.458 ns | 0.0105 ns | 0.0093 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 2147483647 | 3.441 ns | 0.0357 ns | 0.0334 ns | 1.40 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 18446744073709550591 | 2.371 ns | 0.0037 ns | 0.0029 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 18446744073709550591 | 4.247 ns | 0.0159 ns | 0.0149 ns | 1.79 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 18446744073709551104 | 2.368 ns | 0.0093 ns | 0.0087 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 18446744073709551104 | 3.716 ns | 0.0137 ns | 0.0128 ns | 1.57 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 18446744073709551360 | 2.367 ns | 0.0030 ns | 0.0027 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 18446744073709551360 | 4.264 ns | 0.0074 ns | 0.0069 ns | 1.80 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 18446744073709551488 | 2.374 ns | 0.0027 ns | 0.0024 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 18446744073709551488 | 4.344 ns | 0.0135 ns | 0.0119 ns | 1.83 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 18446744073709551552 | 2.368 ns | 0.0043 ns | 0.0038 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 18446744073709551552 | 4.272 ns | 0.0128 ns | 0.0113 ns | 1.80 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 18446744073709551584 | 2.366 ns | 0.0035 ns | 0.0031 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 18446744073709551584 | 3.717 ns | 0.0064 ns | 0.0057 ns | 1.57 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 18446744073709551598 | 2.412 ns | 0.0202 ns | 0.0179 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 18446744073709551598 | 4.289 ns | 0.0086 ns | 0.0080 ns | 1.78 | 0.01 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod10_8_5_3PropertiesBenchmarks.ModMethodModulo: Default -> 2 outliers were removed, 3 outliers were detected (4.06 ns, 4.09 ns, 4.10 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.ModMethodModulo: Default -> 2 outliers were detected (4.32 ns, 4.35 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.LegacyModulo: Default -> 2 outliers were removed, 3 outliers were detected (3.62 ns, 3.64 ns, 3.65 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.ModMethodModulo: Default -> 2 outliers were removed, 3 outliers were detected (4.28 ns, 4.31 ns, 4.35 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.LegacyModulo: Default -> 1 outlier was removed (3.69 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.ModMethodModulo: Default -> 1 outlier was removed, 4 outliers were detected (4.31 ns..4.31 ns, 4.34 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.ModMethodModulo: Default -> 1 outlier was removed, 2 outliers were detected (4.33 ns, 4.39 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.LegacyModulo: Default -> 3 outliers were removed, 5 outliers were detected (3.62 ns, 3.63 ns, 3.64 ns..3.64 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.LegacyModulo: Default -> 1 outlier was removed (3.80 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.LegacyModulo: Default -> 3 outliers were removed (3.71 ns..3.73 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.ModMethodModulo: Default -> 1 outlier was detected (4.98 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.LegacyModulo: Default -> 1 outlier was removed, 2 outliers were detected (3.64 ns, 3.65 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.LegacyModulo: Default -> 1 outlier was removed (3.66 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.ModMethodModulo: Default -> 1 outlier was removed, 2 outliers were detected (5.60 ns, 5.65 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.LegacyModulo: Default -> 1 outlier was removed, 2 outliers were detected (3.63 ns, 3.65 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.ModMethodModulo: Default -> 1 outlier was removed (5.74 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.LegacyModulo: Default -> 1 outlier was removed, 2 outliers were detected (3.64 ns, 3.66 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.ModMethodModulo: Default -> 1 outlier was removed (5.04 ns)
|
|
Mod10_8_5_3PropertiesBenchmarks.LegacyModulo: Default -> 1 outlier was removed (3.74 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod10_8_5_3StepsBenchmarks.ModMethodModulo: DefaultJob [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 3.649 ns, StdErr = 0.006 ns (0.18%), N = 15, StdDev = 0.025 ns
|
|
Min = 3.614 ns, Q1 = 3.633 ns, Median = 3.643 ns, Q3 = 3.662 ns, Max = 3.697 ns
|
|
IQR = 0.028 ns, LowerFence = 3.591 ns, UpperFence = 3.705 ns
|
|
ConfidenceInterval = [3.623 ns; 3.675 ns] (CI 99.9%), Margin = 0.026 ns (0.73% of Mean)
|
|
Skewness = 0.58, Kurtosis = 2.35, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[3.607 ns ; 3.711 ns) | @@@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
DefaultJob : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|------:|----------:|------------:|
|
|
| LegacyModulo | 3 | 12.052 ns | 0.0425 ns | 0.0332 ns | 1.00 | - | NA |
|
|
| ModMethodModulo | 3 | 3.576 ns | 0.0900 ns | 0.0842 ns | 0.30 | - | NA |
|
|
| | | | | | | | |
|
|
| LegacyModulo | 8191 | 11.891 ns | 0.0333 ns | 0.0295 ns | 1.00 | - | NA |
|
|
| ModMethodModulo | 8191 | 3.682 ns | 0.0963 ns | 0.1031 ns | 0.31 | - | NA |
|
|
| | | | | | | | |
|
|
| LegacyModulo | 131071 | 13.401 ns | 0.1983 ns | 0.1854 ns | 1.00 | - | NA |
|
|
| ModMethodModulo | 131071 | 3.773 ns | 0.0437 ns | 0.0409 ns | 0.28 | - | NA |
|
|
| | | | | | | | |
|
|
| LegacyModulo | 2147483647 | 12.114 ns | 0.0669 ns | 0.0593 ns | 1.00 | - | NA |
|
|
| ModMethodModulo | 2147483647 | 3.649 ns | 0.0265 ns | 0.0248 ns | 0.30 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod10_8_5_3StepsBenchmarks.LegacyModulo: Default -> 3 outliers were removed (13.57 ns..13.83 ns)
|
|
Mod10_8_5_3StepsBenchmarks.ModMethodModulo: Default -> 1 outlier was detected (4.67 ns)
|
|
Mod10_8_5_3StepsBenchmarks.LegacyModulo: Default -> 1 outlier was removed (13.30 ns)
|
|
Mod10_8_5_3StepsBenchmarks.ModMethodModulo: Default -> 3 outliers were detected (4.68 ns..4.80 ns)
|
|
Mod10_8_5_3StepsBenchmarks.LegacyModulo: Default -> 3 outliers were detected (14.17 ns..14.51 ns)
|
|
Mod10_8_5_3StepsBenchmarks.LegacyModulo: Default -> 1 outlier was removed (13.86 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod10UInt128Benchmarks.ModWithLoopModulo: DefaultJob [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 2.216 ns, StdErr = 0.002 ns (0.09%), N = 15, StdDev = 0.008 ns
|
|
Min = 2.202 ns, Q1 = 2.211 ns, Median = 2.216 ns, Q3 = 2.220 ns, Max = 2.232 ns
|
|
IQR = 0.009 ns, LowerFence = 2.197 ns, UpperFence = 2.234 ns
|
|
ConfidenceInterval = [2.208 ns; 2.225 ns] (CI 99.9%), Margin = 0.009 ns (0.39% of Mean)
|
|
Skewness = 0.34, Kurtosis = 2.34, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[2.198 ns ; 2.236 ns) | @@@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
DefaultJob : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|--------------------- |----------- |---------:|----------:|----------:|------:|----------:|------------:|
|
|
| StandardModulo | 3 | 3.378 ns | 0.0137 ns | 0.0128 ns | 1.00 | - | NA |
|
|
| ModWithHighLowModulo | 3 | 1.804 ns | 0.0072 ns | 0.0067 ns | 0.53 | - | NA |
|
|
| ModWithLoopModulo | 3 | 2.204 ns | 0.0105 ns | 0.0098 ns | 0.65 | - | NA |
|
|
| | | | | | | | |
|
|
| StandardModulo | 8191 | 3.269 ns | 0.0064 ns | 0.0057 ns | 1.00 | - | NA |
|
|
| ModWithHighLowModulo | 8191 | 1.798 ns | 0.0084 ns | 0.0078 ns | 0.55 | - | NA |
|
|
| ModWithLoopModulo | 8191 | 2.234 ns | 0.0090 ns | 0.0080 ns | 0.68 | - | NA |
|
|
| | | | | | | | |
|
|
| StandardModulo | 131071 | 3.248 ns | 0.0118 ns | 0.0104 ns | 1.00 | - | NA |
|
|
| ModWithHighLowModulo | 131071 | 1.817 ns | 0.0056 ns | 0.0052 ns | 0.56 | - | NA |
|
|
| ModWithLoopModulo | 131071 | 2.268 ns | 0.0118 ns | 0.0110 ns | 0.70 | - | NA |
|
|
| | | | | | | | |
|
|
| StandardModulo | 2147483647 | 3.281 ns | 0.0085 ns | 0.0080 ns | 1.00 | - | NA |
|
|
| ModWithHighLowModulo | 2147483647 | 1.779 ns | 0.0061 ns | 0.0057 ns | 0.54 | - | NA |
|
|
| ModWithLoopModulo | 2147483647 | 2.216 ns | 0.0087 ns | 0.0081 ns | 0.68 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod10UInt128Benchmarks.StandardModulo: Default -> 1 outlier was removed, 2 outliers were detected (4.56 ns, 4.58 ns)
|
|
Mod10UInt128Benchmarks.ModWithLoopModulo: Default -> 1 outlier was removed, 2 outliers were detected (3.49 ns, 3.53 ns)
|
|
Mod10UInt128Benchmarks.StandardModulo: Default -> 1 outlier was removed (4.63 ns)
|
|
Mod10UInt128Benchmarks.ModWithHighLowModulo: Default -> 1 outlier was detected (3.08 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod10UIntBenchmarks.ExtensionMethod: Job-MVZCXR(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.037 ns, StdErr = 0.000 ns (1.31%), N = 4, StdDev = 0.001 ns
|
|
Min = 0.036 ns, Q1 = 0.037 ns, Median = 0.038 ns, Q3 = 0.038 ns, Max = 0.038 ns
|
|
IQR = 0.001 ns, LowerFence = 0.036 ns, UpperFence = 0.039 ns
|
|
ConfidenceInterval = [0.031 ns; 0.044 ns] (CI 99.9%), Margin = 0.006 ns (16.98% of Mean)
|
|
Skewness = -0.69, Kurtosis = 1.27, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.035 ns ; 0.037 ns) | @
|
|
[0.037 ns ; 0.039 ns) | @@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-MVZCXR : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Median | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 10 | 0.0407 ns | 0.0148 ns | 0.0038 ns | 0.0405 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 10 | 0.7727 ns | 2.5823 ns | 0.6706 ns | 1.2387 ns | 19.59 | 17.15 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.3224 ns | 0.0016 ns | 0.0004 ns | 0.3227 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 0.0448 ns | 0.0038 ns | 0.0010 ns | 0.0451 ns | 0.14 | 0.00 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.2382 ns | 0.4473 ns | 0.1162 ns | 0.2598 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 0.0405 ns | 0.0112 ns | 0.0017 ns | 0.0408 ns | 0.14 | 0.02 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0555 ns | 0.0558 ns | 0.0145 ns | 0.0615 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.0372 ns | 0.0063 ns | 0.0010 ns | 0.0377 ns | 0.76 | 0.23 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod10UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.30 ns)
|
|
Mod10UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.31 ns)
|
|
Mod10UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.30 ns, 1.31 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod10ULongBenchmarks.ModMethodModulo: DefaultJob [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.741 ns, StdErr = 0.000 ns (0.07%), N = 14, StdDev = 0.002 ns
|
|
Min = 0.738 ns, Q1 = 0.739 ns, Median = 0.741 ns, Q3 = 0.742 ns, Max = 0.745 ns
|
|
IQR = 0.003 ns, LowerFence = 0.735 ns, UpperFence = 0.746 ns
|
|
ConfidenceInterval = [0.739 ns; 0.743 ns] (CI 99.9%), Margin = 0.002 ns (0.28% of Mean)
|
|
Skewness = 0.17, Kurtosis = 2.03, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.737 ns ; 0.746 ns) | @@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
DefaultJob : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| LegacyModulo | 3 | 0.2591 ns | 0.0053 ns | 0.0050 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 3 | 0.7503 ns | 0.0274 ns | 0.0257 ns | 2.90 | 0.14 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 8191 | 0.2597 ns | 0.0061 ns | 0.0057 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 8191 | 0.7320 ns | 0.0042 ns | 0.0039 ns | 2.82 | 0.06 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 131071 | 0.2605 ns | 0.0060 ns | 0.0047 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 131071 | 0.7346 ns | 0.0063 ns | 0.0053 ns | 2.82 | 0.05 | - | NA |
|
|
| | | | | | | | | |
|
|
| LegacyModulo | 2147483647 | 0.2598 ns | 0.0022 ns | 0.0019 ns | 1.00 | 0.00 | - | NA |
|
|
| ModMethodModulo | 2147483647 | 0.7411 ns | 0.0021 ns | 0.0019 ns | 2.85 | 0.02 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod10ULongBenchmarks.ModMethodModulo: Default -> 1 outlier was detected (1.99 ns)
|
|
Mod10ULongBenchmarks.LegacyModulo: Default -> 3 outliers were removed (1.60 ns..1.70 ns)
|
|
Mod10ULongBenchmarks.ModMethodModulo: Default -> 2 outliers were removed (2.01 ns, 2.02 ns)
|
|
Mod10ULongBenchmarks.LegacyModulo: Default -> 2 outliers were removed (1.53 ns, 1.53 ns)
|
|
Mod10ULongBenchmarks.ModMethodModulo: Default -> 1 outlier was removed (2.03 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod11_7_5_3Benchmarks.CombinedMethod: DefaultJob [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 8.968 ns, StdErr = 0.013 ns (0.15%), N = 15, StdDev = 0.051 ns
|
|
Min = 8.881 ns, Q1 = 8.936 ns, Median = 8.958 ns, Q3 = 9.006 ns, Max = 9.052 ns
|
|
IQR = 0.070 ns, LowerFence = 8.832 ns, UpperFence = 9.110 ns
|
|
ConfidenceInterval = [8.914 ns; 9.022 ns] (CI 99.9%), Margin = 0.054 ns (0.60% of Mean)
|
|
Skewness = 0.14, Kurtosis = 1.81, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[8.854 ns ; 9.079 ns) | @@@@@@@@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
DefaultJob : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|--------------- |----------- |---------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 3 | 1.611 ns | 0.0100 ns | 0.0089 ns | 1.00 | 0.00 | - | NA |
|
|
| CombinedMethod | 3 | 2.095 ns | 0.0079 ns | 0.0074 ns | 1.30 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 8191 | 1.563 ns | 0.0030 ns | 0.0026 ns | 1.00 | 0.00 | - | NA |
|
|
| CombinedMethod | 8191 | 4.926 ns | 0.0089 ns | 0.0083 ns | 3.15 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 131071 | 1.561 ns | 0.0039 ns | 0.0034 ns | 1.00 | 0.00 | - | NA |
|
|
| CombinedMethod | 131071 | 7.098 ns | 0.0493 ns | 0.0437 ns | 4.55 | 0.03 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 1.572 ns | 0.0088 ns | 0.0082 ns | 1.00 | 0.00 | - | NA |
|
|
| CombinedMethod | 2147483647 | 8.968 ns | 0.0542 ns | 0.0507 ns | 5.70 | 0.04 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod11_7_5_3Benchmarks.ModuloOperator: Default -> 1 outlier was removed (2.94 ns)
|
|
Mod11_7_5_3Benchmarks.ModuloOperator: Default -> 1 outlier was removed, 2 outliers were detected (2.82 ns, 2.97 ns)
|
|
Mod11_7_5_3Benchmarks.ModuloOperator: Default -> 1 outlier was removed (2.84 ns)
|
|
Mod11_7_5_3Benchmarks.CombinedMethod: Default -> 1 outlier was removed (8.86 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod11UInt128Benchmarks.ExtensionMethod: Job-KKLXVZ(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551360]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.666 ns, StdErr = 0.001 ns (0.16%), N = 5, StdDev = 0.002 ns
|
|
Min = 0.662 ns, Q1 = 0.666 ns, Median = 0.666 ns, Q3 = 0.668 ns, Max = 0.668 ns
|
|
IQR = 0.002 ns, LowerFence = 0.663 ns, UpperFence = 0.671 ns
|
|
ConfidenceInterval = [0.657 ns; 0.675 ns] (CI 99.9%), Margin = 0.009 ns (1.38% of Mean)
|
|
Skewness = -0.64, Kurtosis = 1.59, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.660 ns ; 0.670 ns) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-KKLXVZ : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|----------:|------------:|
|
|
| ModuloOperator | 11 | 2.8719 ns | 0.0334 ns | 0.0052 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 11 | 0.6721 ns | 0.0522 ns | 0.0081 ns | 0.23 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 8191 | 2.8715 ns | 0.0116 ns | 0.0030 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.6765 ns | 0.0322 ns | 0.0084 ns | 0.24 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 131071 | 2.8534 ns | 0.0410 ns | 0.0064 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.6760 ns | 0.0252 ns | 0.0066 ns | 0.24 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 2.8716 ns | 0.0578 ns | 0.0150 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.6614 ns | 0.0245 ns | 0.0064 ns | 0.23 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 18446744073709551360 | 2.8715 ns | 0.0104 ns | 0.0016 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 18446744073709551360 | 0.6661 ns | 0.0092 ns | 0.0024 ns | 0.23 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod11UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (4.14 ns, 4.16 ns)
|
|
Mod11UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.94 ns, 1.96 ns)
|
|
Mod11UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (4.12 ns, 4.14 ns)
|
|
Mod11UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (4.16 ns)
|
|
Mod11UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.92 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod11UIntBenchmarks.ExtensionMethod: Job-WJRSHE(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 3.170 ns, StdErr = 0.001 ns (0.02%), N = 5, StdDev = 0.001 ns
|
|
Min = 3.168 ns, Q1 = 3.169 ns, Median = 3.170 ns, Q3 = 3.170 ns, Max = 3.171 ns
|
|
IQR = 0.002 ns, LowerFence = 3.166 ns, UpperFence = 3.173 ns
|
|
ConfidenceInterval = [3.165 ns; 3.174 ns] (CI 99.9%), Margin = 0.005 ns (0.15% of Mean)
|
|
Skewness = -0.02, Kurtosis = 1.06, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[3.167 ns ; 3.172 ns) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-WJRSHE : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 11 | 0.0299 ns | 0.0035 ns | 0.0009 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 11 | 0.2862 ns | 0.0248 ns | 0.0064 ns | 9.60 | 0.49 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.0333 ns | 0.0119 ns | 0.0018 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 0.9571 ns | 0.0370 ns | 0.0096 ns | 28.88 | 1.46 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.0393 ns | 0.0054 ns | 0.0014 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 0.9218 ns | 0.0444 ns | 0.0069 ns | 23.21 | 0.79 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0367 ns | 0.0027 ns | 0.0004 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 3.1696 ns | 0.0047 ns | 0.0012 ns | 86.34 | 1.03 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod11UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.30 ns)
|
|
Mod11UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (2.17 ns, 2.19 ns)
|
|
Mod11UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.29 ns, 1.30 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod11UIntBenchmarks.ExtensionMethod: Job-WJRSHE(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 3.170 ns, StdErr = 0.001 ns (0.02%), N = 5, StdDev = 0.001 ns
|
|
Min = 3.168 ns, Q1 = 3.169 ns, Median = 3.170 ns, Q3 = 3.170 ns, Max = 3.171 ns
|
|
IQR = 0.002 ns, LowerFence = 3.166 ns, UpperFence = 3.173 ns
|
|
ConfidenceInterval = [3.165 ns; 3.174 ns] (CI 99.9%), Margin = 0.005 ns (0.15% of Mean)
|
|
Skewness = -0.02, Kurtosis = 1.06, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[3.167 ns ; 3.172 ns) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-WJRSHE : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 11 | 0.0299 ns | 0.0035 ns | 0.0009 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 11 | 0.2862 ns | 0.0248 ns | 0.0064 ns | 9.60 | 0.49 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.0333 ns | 0.0119 ns | 0.0018 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 0.9571 ns | 0.0370 ns | 0.0096 ns | 28.88 | 1.46 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.0393 ns | 0.0054 ns | 0.0014 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 0.9218 ns | 0.0444 ns | 0.0069 ns | 23.21 | 0.79 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0367 ns | 0.0027 ns | 0.0004 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 3.1696 ns | 0.0047 ns | 0.0012 ns | 86.34 | 1.03 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod11UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.30 ns)
|
|
Mod11UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (2.17 ns, 2.19 ns)
|
|
Mod11UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.29 ns, 1.30 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod11UIntBenchmarks.ExtensionMethod: Job-WJRSHE(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 3.170 ns, StdErr = 0.001 ns (0.02%), N = 5, StdDev = 0.001 ns
|
|
Min = 3.168 ns, Q1 = 3.169 ns, Median = 3.170 ns, Q3 = 3.170 ns, Max = 3.171 ns
|
|
IQR = 0.002 ns, LowerFence = 3.166 ns, UpperFence = 3.173 ns
|
|
ConfidenceInterval = [3.165 ns; 3.174 ns] (CI 99.9%), Margin = 0.005 ns (0.15% of Mean)
|
|
Skewness = -0.02, Kurtosis = 1.06, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[3.167 ns ; 3.172 ns) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-WJRSHE : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 11 | 0.0299 ns | 0.0035 ns | 0.0009 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 11 | 0.2862 ns | 0.0248 ns | 0.0064 ns | 9.60 | 0.49 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.0333 ns | 0.0119 ns | 0.0018 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 0.9571 ns | 0.0370 ns | 0.0096 ns | 28.88 | 1.46 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.0393 ns | 0.0054 ns | 0.0014 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 0.9218 ns | 0.0444 ns | 0.0069 ns | 23.21 | 0.79 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0367 ns | 0.0027 ns | 0.0004 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 3.1696 ns | 0.0047 ns | 0.0012 ns | 86.34 | 1.03 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod11UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.30 ns)
|
|
Mod11UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (2.17 ns, 2.19 ns)
|
|
Mod11UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.29 ns, 1.30 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod128UIntBenchmarks.ExtensionMethod: Job-YWWRGO(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=4294967295]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.016 ns, StdErr = 0.002 ns (10.50%), N = 5, StdDev = 0.004 ns
|
|
Min = 0.012 ns, Q1 = 0.012 ns, Median = 0.015 ns, Q3 = 0.017 ns, Max = 0.021 ns
|
|
IQR = 0.004 ns, LowerFence = 0.006 ns, UpperFence = 0.024 ns
|
|
ConfidenceInterval = [0.002 ns; 0.030 ns] (CI 99.9%), Margin = 0.014 ns (90.38% of Mean)
|
|
Skewness = 0.44, Kurtosis = 1.31, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.012 ns ; 0.018 ns) | @@@@
|
|
[0.018 ns ; 0.024 ns) | @
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-YWWRGO : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Median | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 3 | 0.0191 ns | 0.0229 ns | 0.0035 ns | 0.0201 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 3 | 0.0163 ns | 0.0075 ns | 0.0020 ns | 0.0172 ns | 0.85 | 0.16 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 5 | 0.0136 ns | 0.0195 ns | 0.0051 ns | 0.0125 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 5 | 0.0123 ns | 0.0102 ns | 0.0016 ns | 0.0129 ns | 0.86 | 0.28 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 6 | 0.0122 ns | 0.0221 ns | 0.0034 ns | 0.0123 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 6 | 0.0064 ns | 0.0088 ns | 0.0023 ns | 0.0065 ns | 0.52 | 0.18 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 8 | 0.0140 ns | 0.0077 ns | 0.0012 ns | 0.0141 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8 | 0.0130 ns | 0.0221 ns | 0.0057 ns | 0.0112 ns | 0.99 | 0.41 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 10 | 0.0181 ns | 0.0066 ns | 0.0010 ns | 0.0184 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 10 | 0.0152 ns | 0.0029 ns | 0.0008 ns | 0.0157 ns | 0.84 | 0.08 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 11 | 0.0179 ns | 0.0100 ns | 0.0026 ns | 0.0183 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 11 | 0.0111 ns | 0.0132 ns | 0.0034 ns | 0.0128 ns | 0.65 | 0.26 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 32 | 0.0170 ns | 0.0091 ns | 0.0024 ns | 0.0172 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 32 | 0.0180 ns | 0.0095 ns | 0.0025 ns | 0.0191 ns | 1.06 | 0.06 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 64 | 0.0145 ns | 0.0039 ns | 0.0010 ns | 0.0144 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 64 | 0.9496 ns | 0.0173 ns | 0.0027 ns | 0.9506 ns | 67.21 | 3.57 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 128 | 0.0125 ns | 0.0069 ns | 0.0011 ns | 0.0128 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 128 | 0.0228 ns | 0.0910 ns | 0.0141 ns | 0.0167 ns | 1.84 | 1.12 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 256 | 0.0108 ns | 0.0050 ns | 0.0008 ns | 0.0105 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 256 | 0.1192 ns | 0.0209 ns | 0.0054 ns | 0.1166 ns | 11.22 | 1.07 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.0127 ns | 0.0043 ns | 0.0011 ns | 0.0128 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 0.0002 ns | 0.0013 ns | 0.0002 ns | 0.0002 ns | 0.02 | 0.01 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 8191 | 0.0135 ns | 0.0081 ns | 0.0013 ns | 0.0138 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.1209 ns | 0.0127 ns | 0.0033 ns | 0.1219 ns | 9.00 | 1.06 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.0148 ns | 0.0116 ns | 0.0030 ns | 0.0145 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 0.0140 ns | 0.0072 ns | 0.0019 ns | 0.0136 ns | 0.97 | 0.20 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 131071 | 0.0104 ns | 0.0136 ns | 0.0035 ns | 0.0118 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.0153 ns | 0.0064 ns | 0.0017 ns | 0.0155 ns | 1.64 | 0.66 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0138 ns | 0.0112 ns | 0.0029 ns | 0.0130 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.0200 ns | 0.0138 ns | 0.0036 ns | 0.0189 ns | 1.52 | 0.47 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294966271 | 0.0135 ns | 0.0054 ns | 0.0008 ns | 0.0132 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294966271 | 0.0141 ns | 0.0090 ns | 0.0023 ns | 0.0145 ns | 1.04 | 0.21 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294966784 | 0.0257 ns | 0.0317 ns | 0.0082 ns | 0.0230 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294966784 | 0.0129 ns | 0.0094 ns | 0.0015 ns | 0.0132 ns | 0.58 | 0.14 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967040 | 0.0180 ns | 0.0219 ns | 0.0057 ns | 0.0147 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967040 | 0.0060 ns | 0.0178 ns | 0.0046 ns | 0.0044 ns | 0.35 | 0.26 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967168 | 0.0096 ns | 0.0105 ns | 0.0027 ns | 0.0105 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967168 | 0.1193 ns | 0.0437 ns | 0.0114 ns | 0.1171 ns | 14.13 | 7.74 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967232 | 0.0116 ns | 0.0077 ns | 0.0020 ns | 0.0113 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967232 | 0.0153 ns | 0.0110 ns | 0.0017 ns | 0.0146 ns | 1.30 | 0.27 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967264 | 0.0124 ns | 0.0007 ns | 0.0001 ns | 0.0124 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967264 | 0.0090 ns | 0.0037 ns | 0.0010 ns | 0.0090 ns | 0.72 | 0.08 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967278 | 0.0105 ns | 0.0135 ns | 0.0035 ns | 0.0091 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967278 | 0.0131 ns | 0.0093 ns | 0.0024 ns | 0.0139 ns | 1.39 | 0.56 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967295 | 0.0170 ns | 0.0110 ns | 0.0029 ns | 0.0155 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967295 | 0.0156 ns | 0.0141 ns | 0.0037 ns | 0.0151 ns | 0.95 | 0.32 | - | NA |
|
|
|
|
// * Warnings *
|
|
ZeroMeasurement
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.31 ns)
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.28 ns, 1.29 ns)
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.32 ns)
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.29 ns)
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.28 ns, 1.28 ns)
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.27 ns)
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (2.22 ns, 2.23 ns)
|
|
Mod128UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.36 ns)
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.30 ns)
|
|
Mod128UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.28 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod128ULongBenchmarks.ExtensionMethod: Job-EFEXGV(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=4294967295]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.012 ns, StdErr = 0.001 ns (11.66%), N = 5, StdDev = 0.003 ns
|
|
Min = 0.009 ns, Q1 = 0.009 ns, Median = 0.012 ns, Q3 = 0.014 ns, Max = 0.017 ns
|
|
IQR = 0.004 ns, LowerFence = 0.003 ns, UpperFence = 0.020 ns
|
|
ConfidenceInterval = [-0.000 ns; 0.024 ns] (CI 99.9%), Margin = 0.012 ns (100.42% of Mean)
|
|
Skewness = 0.24, Kurtosis = 1.13, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.009 ns ; 0.014 ns) | @@@@
|
|
[0.014 ns ; 0.019 ns) | @
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-EFEXGV : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Median | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 3 | 0.0227 ns | 0.0167 ns | 0.0043 ns | 0.0226 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 3 | 0.0113 ns | 0.0150 ns | 0.0039 ns | 0.0092 ns | 0.51 | 0.20 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 5 | 0.0124 ns | 0.0235 ns | 0.0061 ns | 0.0148 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 5 | 0.0149 ns | 0.0145 ns | 0.0038 ns | 0.0124 ns | 1.47 | 0.73 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 6 | 0.0087 ns | 0.0058 ns | 0.0015 ns | 0.0088 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 6 | 0.0152 ns | 0.0104 ns | 0.0027 ns | 0.0150 ns | 1.78 | 0.43 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 8 | 0.0101 ns | 0.0135 ns | 0.0035 ns | 0.0103 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8 | 0.0110 ns | 0.0076 ns | 0.0020 ns | 0.0114 ns | 1.25 | 0.58 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 10 | 0.0146 ns | 0.0161 ns | 0.0042 ns | 0.0173 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 10 | 0.0152 ns | 0.0169 ns | 0.0044 ns | 0.0161 ns | 1.12 | 0.53 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 11 | 0.0141 ns | 0.0141 ns | 0.0037 ns | 0.0133 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 11 | 0.0100 ns | 0.0080 ns | 0.0021 ns | 0.0106 ns | 0.74 | 0.21 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 32 | 0.0090 ns | 0.0118 ns | 0.0018 ns | 0.0095 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 32 | 0.0128 ns | 0.0067 ns | 0.0017 ns | 0.0135 ns | 1.43 | 0.25 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 64 | 0.0184 ns | 0.0120 ns | 0.0031 ns | 0.0175 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 64 | 0.0094 ns | 0.0056 ns | 0.0015 ns | 0.0087 ns | 0.51 | 0.07 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 128 | 0.0141 ns | 0.0094 ns | 0.0024 ns | 0.0127 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 128 | 0.0105 ns | 0.0237 ns | 0.0062 ns | 0.0089 ns | 0.80 | 0.53 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 256 | 0.0096 ns | 0.0091 ns | 0.0014 ns | 0.0101 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 256 | 0.0106 ns | 0.0141 ns | 0.0037 ns | 0.0124 ns | 1.04 | 0.33 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.0251 ns | 0.0332 ns | 0.0086 ns | 0.0201 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 0.0080 ns | 0.0091 ns | 0.0024 ns | 0.0090 ns | 0.33 | 0.08 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 8191 | 0.0120 ns | 0.0116 ns | 0.0030 ns | 0.0113 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.0099 ns | 0.0084 ns | 0.0022 ns | 0.0096 ns | 0.85 | 0.20 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.0113 ns | 0.0071 ns | 0.0011 ns | 0.0112 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 0.0101 ns | 0.0084 ns | 0.0022 ns | 0.0100 ns | 0.90 | 0.27 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 131071 | 0.0137 ns | 0.0129 ns | 0.0033 ns | 0.0115 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.0068 ns | 0.0059 ns | 0.0009 ns | 0.0069 ns | 0.51 | 0.19 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0190 ns | 0.0447 ns | 0.0116 ns | 0.0160 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.0109 ns | 0.0118 ns | 0.0031 ns | 0.0114 ns | 0.78 | 0.55 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294966271 | 0.0165 ns | 0.0185 ns | 0.0048 ns | 0.0186 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294966271 | 0.0119 ns | 0.0065 ns | 0.0017 ns | 0.0115 ns | 0.82 | 0.42 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294966784 | 0.0089 ns | 0.0090 ns | 0.0014 ns | 0.0095 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294966784 | 0.5901 ns | 2.0424 ns | 0.5304 ns | 0.9747 ns | 51.92 | 58.78 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967040 | 0.0110 ns | 0.0136 ns | 0.0021 ns | 0.0115 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967040 | 0.0118 ns | 0.0066 ns | 0.0017 ns | 0.0124 ns | 1.09 | 0.32 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967168 | 0.0108 ns | 0.0111 ns | 0.0029 ns | 0.0113 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967168 | 0.0062 ns | 0.0092 ns | 0.0024 ns | 0.0062 ns | 0.57 | 0.16 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967232 | 0.0174 ns | 0.0088 ns | 0.0023 ns | 0.0161 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967232 | 0.0094 ns | 0.0045 ns | 0.0007 ns | 0.0096 ns | 0.54 | 0.10 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967264 | 0.0106 ns | 0.0084 ns | 0.0013 ns | 0.0111 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967264 | 0.0107 ns | 0.0087 ns | 0.0022 ns | 0.0097 ns | 1.06 | 0.38 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967278 | 0.0157 ns | 0.0146 ns | 0.0038 ns | 0.0163 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967278 | 0.0173 ns | 0.0484 ns | 0.0075 ns | 0.0167 ns | 1.20 | 0.46 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967295 | 0.0004 ns | 0.0027 ns | 0.0007 ns | 0.0000 ns | ? | ? | - | ? |
|
|
| ExtensionMethod | 4294967295 | 0.0122 ns | 0.0122 ns | 0.0032 ns | 0.0123 ns | ? | ? | - | ? |
|
|
|
|
// * Warnings *
|
|
BaselineCustomAnalyzer
|
|
Summary -> A question mark '?' symbol indicates that it was not possible to compute the (Ratio, RatioSD, Alloc Ratio) column(s) because the baseline value is too close to zero.
|
|
ZeroMeasurement
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.28 ns)
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.28 ns, 1.29 ns)
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.29 ns)
|
|
Mod128ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.32 ns)
|
|
Mod128ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.29 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod3UInt128Benchmarks.ExtensionMethod: Job-REHAVU(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551598]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.475 ns, StdErr = 0.002 ns (0.51%), N = 5, StdDev = 0.005 ns
|
|
Min = 0.468 ns, Q1 = 0.473 ns, Median = 0.474 ns, Q3 = 0.478 ns, Max = 0.482 ns
|
|
IQR = 0.004 ns, LowerFence = 0.467 ns, UpperFence = 0.484 ns
|
|
ConfidenceInterval = [0.454 ns; 0.496 ns] (CI 99.9%), Margin = 0.021 ns (4.40% of Mean)
|
|
Skewness = 0.07, Kurtosis = 1.35, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.464 ns ; 0.487 ns) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-REHAVU : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|----------:|------------:|
|
|
| ModuloOperator | 3 | 2.9692 ns | 0.0336 ns | 0.0087 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 3 | 0.4549 ns | 0.0199 ns | 0.0052 ns | 0.15 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 8191 | 2.8871 ns | 0.0411 ns | 0.0064 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.4562 ns | 0.0133 ns | 0.0035 ns | 0.16 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 131071 | 2.8850 ns | 0.0209 ns | 0.0054 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.4656 ns | 0.0048 ns | 0.0007 ns | 0.16 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 2.8841 ns | 0.0396 ns | 0.0103 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.4710 ns | 0.0065 ns | 0.0017 ns | 0.16 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 18446744073709551598 | 2.9329 ns | 0.0549 ns | 0.0143 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 18446744073709551598 | 0.4750 ns | 0.0209 ns | 0.0054 ns | 0.16 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod3UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (4.21 ns)
|
|
Mod3UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.75 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod3UIntBenchmarks.ExtensionMethod: Job-GFHXOG(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.035 ns, StdErr = 0.002 ns (5.03%), N = 5, StdDev = 0.004 ns
|
|
Min = 0.031 ns, Q1 = 0.032 ns, Median = 0.035 ns, Q3 = 0.037 ns, Max = 0.040 ns
|
|
IQR = 0.005 ns, LowerFence = 0.024 ns, UpperFence = 0.045 ns
|
|
ConfidenceInterval = [0.020 ns; 0.050 ns] (CI 99.9%), Margin = 0.015 ns (43.34% of Mean)
|
|
Skewness = 0.24, Kurtosis = 1.09, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.030 ns ; 0.036 ns) | @@@
|
|
[0.036 ns ; 0.042 ns) | @@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-GFHXOG : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 3 | 0.0320 ns | 0.0636 ns | 0.0165 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 3 | 0.0217 ns | 0.0133 ns | 0.0021 ns | 0.73 | 0.35 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.0918 ns | 0.1303 ns | 0.0202 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 0.0303 ns | 0.0085 ns | 0.0013 ns | 0.34 | 0.08 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.0355 ns | 0.0130 ns | 0.0034 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 0.0597 ns | 0.0564 ns | 0.0146 ns | 1.69 | 0.44 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0309 ns | 0.0098 ns | 0.0025 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.0350 ns | 0.0152 ns | 0.0039 ns | 1.15 | 0.21 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod3UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.32 ns)
|
|
Mod3UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.53 ns)
|
|
Mod3UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.31 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod3ULongBenchmarks.ExtensionMethod: Job-URMFUY(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551598]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.448 ns, StdErr = 0.005 ns (1.11%), N = 5, StdDev = 0.011 ns
|
|
Min = 0.435 ns, Q1 = 0.438 ns, Median = 0.450 ns, Q3 = 0.454 ns, Max = 0.461 ns
|
|
IQR = 0.017 ns, LowerFence = 0.412 ns, UpperFence = 0.480 ns
|
|
ConfidenceInterval = [0.405 ns; 0.490 ns] (CI 99.9%), Margin = 0.043 ns (9.59% of Mean)
|
|
Skewness = -0.07, Kurtosis = 0.92, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.426 ns ; 0.445 ns) | @@
|
|
[0.445 ns ; 0.464 ns) | @@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-URMFUY : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 3 | 0.2640 ns | 0.0123 ns | 0.0019 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 3 | 0.4406 ns | 0.0119 ns | 0.0031 ns | 1.67 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 8191 | 0.2599 ns | 0.0158 ns | 0.0041 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.4372 ns | 0.0096 ns | 0.0015 ns | 1.69 | 0.03 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 131071 | 0.2620 ns | 0.0163 ns | 0.0042 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.4379 ns | 0.0066 ns | 0.0017 ns | 1.67 | 0.03 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.2858 ns | 0.1371 ns | 0.0356 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.4355 ns | 0.0127 ns | 0.0033 ns | 1.54 | 0.18 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 18446744073709551598 | 0.4916 ns | 0.0336 ns | 0.0052 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 18446744073709551598 | 0.4475 ns | 0.0429 ns | 0.0112 ns | 0.92 | 0.02 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod3ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.53 ns)
|
|
Mod3ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.70 ns)
|
|
Mod3ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.72 ns)
|
|
Mod3ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.78 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod5UInt128Benchmarks.ExtensionMethod: Job-CYVDBZ(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551584]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.467 ns, StdErr = 0.001 ns (0.27%), N = 5, StdDev = 0.003 ns
|
|
Min = 0.462 ns, Q1 = 0.467 ns, Median = 0.468 ns, Q3 = 0.469 ns, Max = 0.469 ns
|
|
IQR = 0.002 ns, LowerFence = 0.463 ns, UpperFence = 0.472 ns
|
|
ConfidenceInterval = [0.456 ns; 0.478 ns] (CI 99.9%), Margin = 0.011 ns (2.30% of Mean)
|
|
Skewness = -0.8, Kurtosis = 1.71, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.460 ns ; 0.471 ns) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-CYVDBZ : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|----------:|------------:|
|
|
| ModuloOperator | 5 | 2.8402 ns | 0.0655 ns | 0.0170 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 5 | 0.4706 ns | 0.0269 ns | 0.0070 ns | 0.17 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 8191 | 2.8744 ns | 0.0511 ns | 0.0079 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.4691 ns | 0.0143 ns | 0.0037 ns | 0.16 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 131071 | 2.8699 ns | 0.0563 ns | 0.0146 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.4644 ns | 0.0164 ns | 0.0043 ns | 0.16 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 2.8950 ns | 0.0268 ns | 0.0069 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.4847 ns | 0.0481 ns | 0.0125 ns | 0.17 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 18446744073709551584 | 2.9267 ns | 0.0559 ns | 0.0145 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 18446744073709551584 | 0.4669 ns | 0.0107 ns | 0.0028 ns | 0.16 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod5UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (4.25 ns)
|
|
Mod5UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (4.19 ns)
|
|
Mod5UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.75 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod5UIntBenchmarks.ExtensionMethod: Job-UKOYIC(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=4294967295]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.029 ns, StdErr = 0.001 ns (4.81%), N = 5, StdDev = 0.003 ns
|
|
Min = 0.026 ns, Q1 = 0.027 ns, Median = 0.029 ns, Q3 = 0.031 ns, Max = 0.034 ns
|
|
IQR = 0.004 ns, LowerFence = 0.021 ns, UpperFence = 0.038 ns
|
|
ConfidenceInterval = [0.017 ns; 0.042 ns] (CI 99.9%), Margin = 0.012 ns (41.40% of Mean)
|
|
Skewness = 0.21, Kurtosis = 1.08, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.025 ns ; 0.030 ns) | @@@
|
|
[0.030 ns ; 0.035 ns) | @@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-UKOYIC : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Median | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 3 | 0.0547 ns | 0.1192 ns | 0.0185 ns | 0.0541 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 3 | 0.0349 ns | 0.0087 ns | 0.0014 ns | 0.0349 ns | 0.70 | 0.25 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 5 | 0.0296 ns | 0.0047 ns | 0.0012 ns | 0.0303 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 5 | 0.0316 ns | 0.0234 ns | 0.0036 ns | 0.0300 ns | 1.05 | 0.11 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 6 | 0.0671 ns | 0.0674 ns | 0.0175 ns | 0.0745 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 6 | 0.0346 ns | 0.0168 ns | 0.0044 ns | 0.0360 ns | 0.58 | 0.29 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 8 | 0.0326 ns | 0.0067 ns | 0.0017 ns | 0.0333 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8 | 0.0294 ns | 0.0040 ns | 0.0006 ns | 0.0292 ns | 0.88 | 0.01 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 10 | 0.0289 ns | 0.0117 ns | 0.0030 ns | 0.0275 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 10 | 0.0306 ns | 0.0030 ns | 0.0008 ns | 0.0304 ns | 1.07 | 0.12 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 11 | 0.1236 ns | 0.4016 ns | 0.1043 ns | 0.0900 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 11 | 0.0315 ns | 0.0208 ns | 0.0032 ns | 0.0323 ns | 0.64 | 0.47 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 32 | 0.0840 ns | 0.0343 ns | 0.0089 ns | 0.0855 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 32 | 0.0328 ns | 0.0085 ns | 0.0022 ns | 0.0336 ns | 0.39 | 0.04 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 64 | 0.0721 ns | 0.1529 ns | 0.0237 ns | 0.0754 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 64 | 0.0356 ns | 0.0108 ns | 0.0017 ns | 0.0363 ns | 0.54 | 0.21 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 128 | 0.0272 ns | 0.0062 ns | 0.0016 ns | 0.0276 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 128 | 0.0336 ns | 0.0127 ns | 0.0020 ns | 0.0335 ns | 1.21 | 0.11 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 256 | 0.0285 ns | 0.0143 ns | 0.0037 ns | 0.0288 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 256 | 0.0282 ns | 0.0054 ns | 0.0014 ns | 0.0285 ns | 1.01 | 0.16 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.0882 ns | 0.1426 ns | 0.0370 ns | 0.0945 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 0.0328 ns | 0.0053 ns | 0.0008 ns | 0.0331 ns | 0.49 | 0.21 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 8191 | 0.0303 ns | 0.0044 ns | 0.0011 ns | 0.0305 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.0390 ns | 0.0296 ns | 0.0077 ns | 0.0365 ns | 1.29 | 0.28 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.0866 ns | 0.0601 ns | 0.0093 ns | 0.0901 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 0.0305 ns | 0.0199 ns | 0.0052 ns | 0.0291 ns | 0.36 | 0.03 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 131071 | 0.2312 ns | 0.5389 ns | 0.1399 ns | 0.3289 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.0270 ns | 0.0161 ns | 0.0042 ns | 0.0285 ns | 0.17 | 0.12 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0306 ns | 0.0057 ns | 0.0015 ns | 0.0298 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.0327 ns | 0.0234 ns | 0.0036 ns | 0.0335 ns | 1.08 | 0.09 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294966271 | 0.0302 ns | 0.0061 ns | 0.0016 ns | 0.0301 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294966271 | 0.0371 ns | 0.0161 ns | 0.0042 ns | 0.0380 ns | 1.23 | 0.16 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294966784 | 0.0683 ns | 0.2301 ns | 0.0356 ns | 0.0646 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294966784 | 0.0359 ns | 0.0205 ns | 0.0032 ns | 0.0366 ns | 0.65 | 0.32 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967040 | 0.0329 ns | 0.0152 ns | 0.0039 ns | 0.0345 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967040 | 0.0327 ns | 0.0105 ns | 0.0027 ns | 0.0327 ns | 1.00 | 0.14 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967168 | 0.0297 ns | 0.0284 ns | 0.0074 ns | 0.0314 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967168 | 0.0322 ns | 0.0223 ns | 0.0034 ns | 0.0335 ns | 1.23 | 0.43 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967232 | 0.0229 ns | 0.0103 ns | 0.0027 ns | 0.0244 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967232 | 0.0306 ns | 0.0041 ns | 0.0011 ns | 0.0307 ns | 1.36 | 0.23 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967264 | 0.0867 ns | 0.1993 ns | 0.0518 ns | 0.0584 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967264 | 0.0288 ns | 0.0072 ns | 0.0019 ns | 0.0291 ns | 0.42 | 0.19 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967278 | 0.0313 ns | 0.0092 ns | 0.0024 ns | 0.0301 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967278 | 0.0465 ns | 0.0510 ns | 0.0079 ns | 0.0453 ns | 1.48 | 0.33 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 4294967295 | 0.0728 ns | 0.0825 ns | 0.0214 ns | 0.0670 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 4294967295 | 0.0295 ns | 0.0122 ns | 0.0032 ns | 0.0292 ns | 0.43 | 0.11 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod5UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.52 ns)
|
|
Mod5UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.31 ns)
|
|
Mod5UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.34 ns)
|
|
Mod5UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.31 ns)
|
|
Mod5UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.30 ns)
|
|
Mod5UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.30 ns, 1.52 ns)
|
|
Mod5UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.53 ns)
|
|
Mod5UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.31 ns, 1.32 ns)
|
|
Mod5UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.32 ns)
|
|
Mod5UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.31 ns, 1.31 ns)
|
|
Mod5UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.35 ns, 1.40 ns)
|
|
Mod5UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.30 ns, 1.33 ns)
|
|
Mod5UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.36 ns)
|
|
Mod5UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.30 ns, 1.31 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod5ULongBenchmarks.ExtensionMethod: Job-QVAGLZ(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551584]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.448 ns, StdErr = 0.003 ns (0.67%), N = 5, StdDev = 0.007 ns
|
|
Min = 0.437 ns, Q1 = 0.448 ns, Median = 0.448 ns, Q3 = 0.452 ns, Max = 0.455 ns
|
|
IQR = 0.005 ns, LowerFence = 0.441 ns, UpperFence = 0.459 ns
|
|
ConfidenceInterval = [0.422 ns; 0.474 ns] (CI 99.9%), Margin = 0.026 ns (5.78% of Mean)
|
|
Skewness = -0.51, Kurtosis = 1.54, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.432 ns ; 0.443 ns) | @
|
|
[0.443 ns ; 0.457 ns) | @@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-QVAGLZ : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 5 | 0.2657 ns | 0.0194 ns | 0.0030 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 5 | 0.4305 ns | 0.0443 ns | 0.0069 ns | 1.62 | 0.04 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 8191 | 0.2622 ns | 0.0330 ns | 0.0051 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.4404 ns | 0.0068 ns | 0.0011 ns | 1.68 | 0.03 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 131071 | 0.2640 ns | 0.0141 ns | 0.0037 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.4359 ns | 0.0104 ns | 0.0027 ns | 1.65 | 0.03 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.2645 ns | 0.0300 ns | 0.0046 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.4361 ns | 0.0142 ns | 0.0037 ns | 1.65 | 0.04 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 18446744073709551584 | 0.2696 ns | 0.0195 ns | 0.0051 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 18446744073709551584 | 0.4481 ns | 0.0259 ns | 0.0067 ns | 1.66 | 0.05 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod5ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.59 ns)
|
|
Mod5ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.69 ns, 1.72 ns)
|
|
Mod5ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.52 ns, 1.74 ns)
|
|
Mod5ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.70 ns, 1.70 ns)
|
|
Mod5ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.60 ns)
|
|
Mod5ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.70 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod6ComparisonBenchmarks.ExtensionMethod: Job-YZTHHU(Runtime=.NET 8.0, IterationCount=3, LaunchCount=1, WarmupCount=1) [StartValue=18446744073709550591]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 1.060 ns, StdErr = 0.001 ns (0.08%), N = 3, StdDev = 0.001 ns
|
|
Min = 1.059 ns, Q1 = 1.060 ns, Median = 1.061 ns, Q3 = 1.061 ns, Max = 1.062 ns
|
|
IQR = 0.001 ns, LowerFence = 1.058 ns, UpperFence = 1.063 ns
|
|
ConfidenceInterval = [1.033 ns; 1.088 ns] (CI 99.9%), Margin = 0.027 ns (2.58% of Mean)
|
|
Skewness = -0.23, Kurtosis = 0.67, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[1.057 ns ; 1.063 ns) | @@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-YZTHHU : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=3 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | StartValue | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 3 | 1.0201 ns | 0.0221 ns | 0.0012 ns | 1.00 | 0.00 | - | NA |
|
|
| DivisionBased | 3 | 0.9915 ns | 0.1010 ns | 0.0055 ns | 0.97 | 0.00 | - | NA |
|
|
| FastDivHigh | 3 | 1.6913 ns | 0.1088 ns | 0.0060 ns | 1.66 | 0.00 | - | NA |
|
|
| ExtensionMethod | 3 | 1.0605 ns | 0.0498 ns | 0.0027 ns | 1.04 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 131071 | 1.0351 ns | 0.2104 ns | 0.0115 ns | 1.00 | 0.00 | - | NA |
|
|
| DivisionBased | 131071 | 1.0633 ns | 0.3786 ns | 0.0208 ns | 1.03 | 0.02 | - | NA |
|
|
| FastDivHigh | 131071 | 1.7062 ns | 0.1798 ns | 0.0099 ns | 1.65 | 0.01 | - | NA |
|
|
| ExtensionMethod | 131071 | 1.0696 ns | 0.0920 ns | 0.0050 ns | 1.03 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 18446744073709550591 | 1.0105 ns | 0.0190 ns | 0.0010 ns | 1.00 | 0.00 | - | NA |
|
|
| DivisionBased | 18446744073709550591 | 0.9617 ns | 0.1333 ns | 0.0073 ns | 0.95 | 0.01 | - | NA |
|
|
| FastDivHigh | 18446744073709550591 | 1.6730 ns | 0.1585 ns | 0.0087 ns | 1.66 | 0.01 | - | NA |
|
|
| ExtensionMethod | 18446744073709550591 | 1.0604 ns | 0.0273 ns | 0.0015 ns | 1.05 | 0.00 | - | NA |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod6UInt128Benchmarks.ExtensionMethod: Job-OUNYJB(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551552]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 1.167 ns, StdErr = 0.003 ns (0.24%), N = 5, StdDev = 0.006 ns
|
|
Min = 1.162 ns, Q1 = 1.163 ns, Median = 1.164 ns, Q3 = 1.172 ns, Max = 1.176 ns
|
|
IQR = 0.009 ns, LowerFence = 1.150 ns, UpperFence = 1.185 ns
|
|
ConfidenceInterval = [1.144 ns; 1.191 ns] (CI 99.9%), Margin = 0.024 ns (2.04% of Mean)
|
|
Skewness = 0.34, Kurtosis = 0.95, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[1.157 ns ; 1.181 ns) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-OUNYJB : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |---------:|----------:|----------:|------:|----------:|------------:|
|
|
| ModuloOperator | 6 | 2.894 ns | 0.0430 ns | 0.0112 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 6 | 1.180 ns | 0.0513 ns | 0.0079 ns | 0.41 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 8191 | 2.897 ns | 0.0300 ns | 0.0078 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 1.164 ns | 0.0139 ns | 0.0036 ns | 0.40 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 131071 | 2.911 ns | 0.0209 ns | 0.0054 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 1.158 ns | 0.0402 ns | 0.0104 ns | 0.40 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 2.874 ns | 0.0221 ns | 0.0057 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 1.241 ns | 0.0476 ns | 0.0074 ns | 0.43 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 18446744073709551552 | 2.908 ns | 0.0120 ns | 0.0031 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 18446744073709551552 | 1.167 ns | 0.0238 ns | 0.0062 ns | 0.40 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod6UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (2.53 ns)
|
|
Mod6UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (2.45 ns)
|
|
Mod6UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (4.19 ns)
|
|
Mod6UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (2.51 ns, 2.53 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod6UIntBenchmarks.ExtensionMethod: Job-NYQPPY(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.459 ns, StdErr = 0.002 ns (0.52%), N = 5, StdDev = 0.005 ns
|
|
Min = 0.450 ns, Q1 = 0.457 ns, Median = 0.461 ns, Q3 = 0.461 ns, Max = 0.464 ns
|
|
IQR = 0.005 ns, LowerFence = 0.450 ns, UpperFence = 0.468 ns
|
|
ConfidenceInterval = [0.438 ns; 0.479 ns] (CI 99.9%), Margin = 0.021 ns (4.47% of Mean)
|
|
Skewness = -0.5, Kurtosis = 1.39, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.446 ns ; 0.465 ns) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-NYQPPY : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Median | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 6 | 0.0348 ns | 0.0632 ns | 0.0164 ns | 0.0432 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 6 | 0.4328 ns | 0.0241 ns | 0.0063 ns | 0.4352 ns | 19.21 | 18.98 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.0277 ns | 0.0118 ns | 0.0031 ns | 0.0287 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 0.4518 ns | 0.0098 ns | 0.0025 ns | 0.4508 ns | 16.47 | 1.86 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.0492 ns | 0.0875 ns | 0.0227 ns | 0.0470 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 0.4543 ns | 0.0131 ns | 0.0034 ns | 0.4545 ns | 11.10 | 5.23 | - | NA |
|
|
| | | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0385 ns | 0.0097 ns | 0.0025 ns | 0.0394 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.4587 ns | 0.0205 ns | 0.0053 ns | 0.4609 ns | 11.96 | 0.92 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod6UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.30 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod6ULongBenchmarks.ExtensionMethod: Job-PJWCPL(Runtime=.NET 8.0, IterationCount=3, LaunchCount=1, WarmupCount=1) [Value=18446744073709551615]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.467 ns, StdErr = 0.002 ns (0.39%), N = 3, StdDev = 0.003 ns
|
|
Min = 0.465 ns, Q1 = 0.466 ns, Median = 0.466 ns, Q3 = 0.469 ns, Max = 0.471 ns
|
|
IQR = 0.003 ns, LowerFence = 0.461 ns, UpperFence = 0.473 ns
|
|
ConfidenceInterval = [0.410 ns; 0.525 ns] (CI 99.9%), Margin = 0.057 ns (12.23% of Mean)
|
|
Skewness = 0.3, Kurtosis = 0.67, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.462 ns ; 0.474 ns) | @@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-PJWCPL : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=3 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 3 | 0.2644 ns | 0.1200 ns | 0.0066 ns | 1.00 | 0.00 | - | NA |
|
|
| DivisionBased | 3 | 0.2767 ns | 0.1131 ns | 0.0062 ns | 1.05 | 0.03 | - | NA |
|
|
| FastDivHigh | 3 | 1.2405 ns | 0.0349 ns | 0.0019 ns | 4.69 | 0.12 | - | NA |
|
|
| ExtensionMethod | 3 | 0.4609 ns | 0.0214 ns | 0.0012 ns | 1.74 | 0.04 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 131071 | 0.2624 ns | 0.0816 ns | 0.0045 ns | 1.00 | 0.00 | - | NA |
|
|
| DivisionBased | 131071 | 0.2843 ns | 0.0577 ns | 0.0032 ns | 1.08 | 0.02 | - | NA |
|
|
| FastDivHigh | 131071 | 1.0431 ns | 0.0419 ns | 0.0023 ns | 3.98 | 0.06 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.4671 ns | 0.0199 ns | 0.0011 ns | 1.78 | 0.03 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 18446744073709551615 | 0.2705 ns | 0.0662 ns | 0.0036 ns | 1.00 | 0.00 | - | NA |
|
|
| DivisionBased | 18446744073709551615 | 0.2872 ns | 0.0161 ns | 0.0009 ns | 1.06 | 0.01 | - | NA |
|
|
| FastDivHigh | 18446744073709551615 | 1.1667 ns | 0.1333 ns | 0.0073 ns | 4.31 | 0.04 | - | NA |
|
|
| ExtensionMethod | 18446744073709551615 | 0.4674 ns | 0.0572 ns | 0.0031 ns | 1.73 | 0.01 | - | NA |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod7UInt128Benchmarks.ExtensionMethod: Job-YIEQKK(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551488]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.676 ns, StdErr = 0.005 ns (0.70%), N = 4, StdDev = 0.010 ns
|
|
Min = 0.662 ns, Q1 = 0.676 ns, Median = 0.680 ns, Q3 = 0.681 ns, Max = 0.681 ns
|
|
IQR = 0.005 ns, LowerFence = 0.668 ns, UpperFence = 0.688 ns
|
|
ConfidenceInterval = [0.614 ns; 0.737 ns] (CI 99.9%), Margin = 0.062 ns (9.10% of Mean)
|
|
Skewness = -0.75, Kurtosis = 1.31, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.654 ns ; 0.672 ns) | @
|
|
[0.672 ns ; 0.689 ns) | @@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-YIEQKK : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|----------:|------------:|
|
|
| ModuloOperator | 7 | 2.8599 ns | 0.0231 ns | 0.0060 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 7 | 0.6761 ns | 0.0105 ns | 0.0027 ns | 0.24 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 8191 | 2.8866 ns | 0.0290 ns | 0.0075 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.6747 ns | 0.0207 ns | 0.0032 ns | 0.23 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 131071 | 2.8732 ns | 0.0070 ns | 0.0011 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.7218 ns | 0.1429 ns | 0.0371 ns | 0.25 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 2.8779 ns | 0.0353 ns | 0.0055 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.8820 ns | 0.0091 ns | 0.0024 ns | 0.31 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 18446744073709551488 | 2.9146 ns | 0.0095 ns | 0.0025 ns | 1.00 | - | NA |
|
|
| ExtensionMethod | 18446744073709551488 | 0.6758 ns | 0.0615 ns | 0.0095 ns | 0.23 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod7UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.95 ns)
|
|
Mod7UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (4.19 ns)
|
|
Mod7UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (4.20 ns)
|
|
Mod7UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.94 ns, 1.96 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod7UIntBenchmarks.ExtensionMethod: Job-RAOTLX(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 4.579 ns, StdErr = 0.051 ns (1.11%), N = 5, StdDev = 0.113 ns
|
|
Min = 4.391 ns, Q1 = 4.554 ns, Median = 4.632 ns, Q3 = 4.654 ns, Max = 4.663 ns
|
|
IQR = 0.099 ns, LowerFence = 4.406 ns, UpperFence = 4.802 ns
|
|
ConfidenceInterval = [4.143 ns; 5.015 ns] (CI 99.9%), Margin = 0.436 ns (9.52% of Mean)
|
|
Skewness = -0.75, Kurtosis = 1.62, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[4.304 ns ; 4.478 ns) | @
|
|
[4.478 ns ; 4.696 ns) | @@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-RAOTLX : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|-------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 7 | 0.0354 ns | 0.0124 ns | 0.0032 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 7 | 0.2683 ns | 0.0194 ns | 0.0050 ns | 7.63 | 0.78 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.0276 ns | 0.0131 ns | 0.0034 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 1.2166 ns | 0.0164 ns | 0.0025 ns | 45.72 | 5.92 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.0282 ns | 0.0259 ns | 0.0040 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 2.3342 ns | 0.3051 ns | 0.0792 ns | 83.89 | 10.09 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0422 ns | 0.0224 ns | 0.0058 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 4.5787 ns | 0.4360 ns | 0.1132 ns | 110.08 | 13.59 | - | NA |
|
|
|
|
// * Warnings *
|
|
ZeroMeasurement
|
|
Mod7UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod7UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.56 ns)
|
|
Mod7UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (2.52 ns)
|
|
Mod7UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.53 ns)
|
|
Mod7UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (5.68 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod7ULongBenchmarks.ExtensionMethod: Job-HROZQV(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551552]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.684 ns, StdErr = 0.002 ns (0.29%), N = 5, StdDev = 0.004 ns
|
|
Min = 0.676 ns, Q1 = 0.684 ns, Median = 0.686 ns, Q3 = 0.686 ns, Max = 0.687 ns
|
|
IQR = 0.002 ns, LowerFence = 0.681 ns, UpperFence = 0.690 ns
|
|
ConfidenceInterval = [0.667 ns; 0.701 ns] (CI 99.9%), Margin = 0.017 ns (2.53% of Mean)
|
|
Skewness = -0.94, Kurtosis = 1.9, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.673 ns ; 0.690 ns) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-HROZQV : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 7 | 0.2739 ns | 0.0040 ns | 0.0006 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 7 | 0.4329 ns | 0.0044 ns | 0.0007 ns | 1.58 | 0.00 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 8191 | 0.2699 ns | 0.0152 ns | 0.0039 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.4434 ns | 0.0189 ns | 0.0049 ns | 1.64 | 0.02 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 131071 | 0.2676 ns | 0.0209 ns | 0.0032 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.4356 ns | 0.0184 ns | 0.0029 ns | 1.63 | 0.03 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.2697 ns | 0.0351 ns | 0.0091 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.4380 ns | 0.0087 ns | 0.0023 ns | 1.63 | 0.06 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 18446744073709551552 | 0.2746 ns | 0.0094 ns | 0.0024 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 18446744073709551552 | 0.6840 ns | 0.0173 ns | 0.0045 ns | 2.49 | 0.03 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod7ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.57 ns, 1.58 ns)
|
|
Mod7ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.72 ns)
|
|
Mod7ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.76 ns)
|
|
Mod7ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.71 ns, 1.74 ns)
|
|
Mod7ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.55 ns)
|
|
Mod7ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.95 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod8UInt128Benchmarks.ExtensionMethod: Job-TVOQGP(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551360]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.020 ns, StdErr = 0.000 ns (1.86%), N = 4, StdDev = 0.001 ns
|
|
Min = 0.020 ns, Q1 = 0.020 ns, Median = 0.020 ns, Q3 = 0.021 ns, Max = 0.021 ns
|
|
IQR = 0.001 ns, LowerFence = 0.019 ns, UpperFence = 0.021 ns
|
|
ConfidenceInterval = [0.015 ns; 0.025 ns] (CI 99.9%), Margin = 0.005 ns (23.99% of Mean)
|
|
Skewness = 0.64, Kurtosis = 1.22, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.019 ns ; 0.021 ns) | @@@
|
|
[0.021 ns ; 0.022 ns) | @
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-TVOQGP : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|----------:|------------:|
|
|
| ModuloOperator | 8 | 2.8637 ns | 0.0567 ns | 0.0088 ns | 1.000 | - | NA |
|
|
| ExtensionMethod | 8 | 0.0170 ns | 0.0082 ns | 0.0021 ns | 0.006 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 8191 | 2.8776 ns | 0.0649 ns | 0.0100 ns | 1.000 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.0144 ns | 0.0225 ns | 0.0035 ns | 0.005 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 131071 | 2.8954 ns | 0.1186 ns | 0.0308 ns | 1.000 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.0134 ns | 0.0138 ns | 0.0036 ns | 0.005 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 2.8903 ns | 0.0272 ns | 0.0071 ns | 1.000 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.0105 ns | 0.0125 ns | 0.0033 ns | 0.004 | - | NA |
|
|
| | | | | | | | |
|
|
| ModuloOperator | 18446744073709551360 | 2.8936 ns | 0.0265 ns | 0.0069 ns | 1.000 | - | NA |
|
|
| ExtensionMethod | 18446744073709551360 | 0.0203 ns | 0.0049 ns | 0.0008 ns | 0.007 | - | NA |
|
|
|
|
// * Warnings *
|
|
ZeroMeasurement
|
|
Mod8UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod8UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (4.20 ns)
|
|
Mod8UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.29 ns)
|
|
Mod8UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (4.14 ns, 4.19 ns)
|
|
Mod8UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.31 ns)
|
|
Mod8UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.30 ns)
|
|
Mod8UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (4.17 ns)
|
|
Mod8UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.32 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod8UIntBenchmarks.ExtensionMethod: Job-HSXEMD(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=2147483647]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.015 ns, StdErr = 0.001 ns (9.47%), N = 5, StdDev = 0.003 ns
|
|
Min = 0.012 ns, Q1 = 0.014 ns, Median = 0.014 ns, Q3 = 0.017 ns, Max = 0.020 ns
|
|
IQR = 0.003 ns, LowerFence = 0.009 ns, UpperFence = 0.022 ns
|
|
ConfidenceInterval = [0.003 ns; 0.027 ns] (CI 99.9%), Margin = 0.012 ns (81.51% of Mean)
|
|
Skewness = 0.33, Kurtosis = 1.17, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.010 ns ; 0.015 ns) | @@@
|
|
[0.015 ns ; 0.021 ns) | @@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-HSXEMD : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |----------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 8 | 0.0109 ns | 0.0232 ns | 0.0060 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8 | 0.0032 ns | 0.0095 ns | 0.0025 ns | 0.29 | 0.26 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2047 | 0.0151 ns | 0.0083 ns | 0.0022 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2047 | 0.0113 ns | 0.0101 ns | 0.0016 ns | 0.72 | 0.16 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 65535 | 0.0123 ns | 0.0052 ns | 0.0008 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 65535 | 0.0191 ns | 0.0281 ns | 0.0043 ns | 1.56 | 0.41 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.0122 ns | 0.0061 ns | 0.0016 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.0150 ns | 0.0122 ns | 0.0032 ns | 1.25 | 0.31 | - | NA |
|
|
|
|
// * Warnings *
|
|
ZeroMeasurement
|
|
Mod8UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod8UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod8UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.31 ns)
|
|
Mod8UIntBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.29 ns)
|
|
Mod8UIntBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.46 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod11ULongBenchmarks.ExtensionMethod: Job-SXCLPE(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551488]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 1.152 ns, StdErr = 0.003 ns (0.26%), N = 5, StdDev = 0.007 ns
|
|
Min = 1.146 ns, Q1 = 1.148 ns, Median = 1.149 ns, Q3 = 1.154 ns, Max = 1.163 ns
|
|
IQR = 0.006 ns, LowerFence = 1.139 ns, UpperFence = 1.163 ns
|
|
ConfidenceInterval = [1.126 ns; 1.178 ns] (CI 99.9%), Margin = 0.026 ns (2.23% of Mean)
|
|
Skewness = 0.61, Kurtosis = 1.49, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[1.141 ns ; 1.168 ns) | @@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-SXCLPE : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|------:|--------:|----------:|------------:|
|
|
| ModuloOperator | 11 | 0.2713 ns | 0.0197 ns | 0.0051 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 11 | 0.6777 ns | 0.0261 ns | 0.0068 ns | 2.50 | 0.04 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 8191 | 0.2335 ns | 0.0190 ns | 0.0049 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.7509 ns | 0.0363 ns | 0.0056 ns | 3.20 | 0.06 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 131071 | 0.2636 ns | 0.0153 ns | 0.0024 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.7538 ns | 0.0415 ns | 0.0108 ns | 2.86 | 0.07 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 0.2647 ns | 0.0061 ns | 0.0009 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.6572 ns | 0.0155 ns | 0.0040 ns | 2.49 | 0.01 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 18446744073709551488 | 0.2709 ns | 0.0072 ns | 0.0011 ns | 1.00 | 0.00 | - | NA |
|
|
| ExtensionMethod | 18446744073709551488 | 1.1519 ns | 0.0257 ns | 0.0067 ns | 4.26 | 0.01 | - | NA |
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod11ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.59 ns)
|
|
Mod11ULongBenchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (2.08 ns)
|
|
Mod11ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed, 2 outliers were detected (1.56 ns, 1.56 ns)
|
|
Mod11ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.56 ns)
|
|
Mod11ULongBenchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.57 ns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mod128UInt128Benchmarks.ExtensionMethod: Job-YHIMPB(Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1) [Value=18446744073709551104]
|
|
Runtime = .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2; GC = Concurrent Workstation
|
|
Mean = 0.014 ns, StdErr = 0.003 ns (18.86%), N = 5, StdDev = 0.006 ns
|
|
Min = 0.007 ns, Q1 = 0.009 ns, Median = 0.017 ns, Q3 = 0.019 ns, Max = 0.019 ns
|
|
IQR = 0.011 ns, LowerFence = -0.007 ns, UpperFence = 0.035 ns
|
|
ConfidenceInterval = [-0.009 ns; 0.038 ns] (CI 99.9%), Margin = 0.023 ns (162.42% of Mean)
|
|
Skewness = -0.29, Kurtosis = 0.81, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[0.003 ns ; 0.014 ns) | @@
|
|
[0.014 ns ; 0.024 ns) | @@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.5909/23H2/2023Update/SunValley3)
|
|
AMD Ryzen 5 5625U with Radeon Graphics, 1 CPU, 12 logical and 6 physical cores
|
|
.NET SDK 10.0.100-preview.7.25380.108
|
|
[Host] : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
Job-YHIMPB : .NET 8.0.20 (8.0.2025.41914), X64 RyuJIT AVX2
|
|
|
|
Runtime=.NET 8.0 IterationCount=5 LaunchCount=1
|
|
WarmupCount=1
|
|
|
|
| Method | Value | Mean | Error | StdDev | Median | Ratio | Allocated | Alloc Ratio |
|
|
|---------------- |--------------------- |----------:|----------:|----------:|----------:|------:|----------:|------------:|
|
|
| ModuloOperator | 128 | 3.4231 ns | 1.2618 ns | 0.3277 ns | 3.3547 ns | 1.000 | - | NA |
|
|
| ExtensionMethod | 128 | 0.0246 ns | 0.0585 ns | 0.0152 ns | 0.0294 ns | 0.007 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 8191 | 3.0253 ns | 0.1308 ns | 0.0340 ns | 3.0379 ns | 1.000 | - | NA |
|
|
| ExtensionMethod | 8191 | 0.0061 ns | 0.0075 ns | 0.0019 ns | 0.0055 ns | 0.002 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 131071 | 2.9497 ns | 0.0139 ns | 0.0036 ns | 2.9504 ns | 1.000 | - | NA |
|
|
| ExtensionMethod | 131071 | 0.0043 ns | 0.0205 ns | 0.0053 ns | 0.0009 ns | 0.001 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 2147483647 | 2.9480 ns | 0.0357 ns | 0.0093 ns | 2.9447 ns | 1.000 | - | NA |
|
|
| ExtensionMethod | 2147483647 | 0.0189 ns | 0.0131 ns | 0.0020 ns | 0.0185 ns | 0.006 | - | NA |
|
|
| | | | | | | | | |
|
|
| ModuloOperator | 18446744073709551104 | 2.9670 ns | 0.1010 ns | 0.0262 ns | 2.9526 ns | 1.000 | - | NA |
|
|
| ExtensionMethod | 18446744073709551104 | 0.0143 ns | 0.0233 ns | 0.0060 ns | 0.0174 ns | 0.005 | - | NA |
|
|
|
|
// * Warnings *
|
|
ZeroMeasurement
|
|
Mod128UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
Mod128UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration
|
|
|
|
// * Hints *
|
|
Outliers
|
|
Mod128UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (1.41 ns)
|
|
Mod128UInt128Benchmarks.ModuloOperator: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was detected (4.44 ns)
|
|
Mod128UInt128Benchmarks.ExtensionMethod: Runtime=.NET 8.0, IterationCount=5, LaunchCount=1, WarmupCount=1 -> 1 outlier was removed (1.37 ns)
|