-
Notifications
You must be signed in to change notification settings - Fork 0
TrustMiniJIT_MyEmitDelegate
8bc5644787af489fccd4603c7dc4f0e5cdf80daf
a variant of TrustJIT_MyEmitDelegate. all methods only have 1 parameter, but is still complicated.
BenchmarkDotNet v0.14.0, Ubuntu 24.04.2 LTS (Noble Numbat)
AMD EPYC 7763, 1 CPU, 4 logical and 2 physical cores
.NET SDK 9.0.202
[Host] : .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2
DefaultJob : .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2
| Method | Mean | Error | StdDev | Median |
|---|---|---|---|---|
| Padding | 0.0011 ns | 0.0016 ns | 0.0015 ns | 0.0003 ns |
| Standard | 32.6461 ns | 0.1102 ns | 0.1031 ns | 32.6463 ns |
| StandardStatic | 17.0890 ns | 0.0579 ns | 0.0542 ns | 17.0754 ns |
| StandardStaticAnd | 27.6779 ns | 0.0385 ns | 0.0300 ns | 27.6863 ns |
| Standard2 | 27.5672 ns | 0.0245 ns | 0.0217 ns | 27.5721 ns |
| Official | 30.1294 ns | 0.0860 ns | 0.0805 ns | 30.1479 ns |
| Mine | 29.4805 ns | 0.0702 ns | 0.0657 ns | 29.4967 ns |
| MineStatic | 19.0096 ns | 0.0212 ns | 0.0188 ns | 19.0040 ns |
// * Detailed results *
TrustMiniJIT_MyEmitDelegate.Padding: DefaultJob
Runtime = .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 0.001 ns, StdErr = 0.000 ns (36.57%), N = 15, StdDev = 0.002 ns
Min = 0.000 ns, Q1 = 0.000 ns, Median = 0.000 ns, Q3 = 0.002 ns, Max = 0.004 ns
IQR = 0.002 ns, LowerFence = -0.003 ns, UpperFence = 0.005 ns
ConfidenceInterval = [-0.001 ns; 0.003 ns] (CI 99.9%), Margin = 0.002 ns (151.41% of Mean)
Skewness = 0.99, Kurtosis = 2.28, MValue = 2.55
-------------------- Histogram --------------------
[-0.000 ns ; 0.001 ns) | @@@@@@@@@@@
[ 0.001 ns ; 0.002 ns) |
[ 0.002 ns ; 0.004 ns) | @@@
[ 0.004 ns ; 0.005 ns) | @
TrustMiniJIT_MyEmitDelegate.Standard: DefaultJob
Runtime = .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 32.646 ns, StdErr = 0.027 ns (0.08%), N = 15, StdDev = 0.103 ns
Min = 32.486 ns, Q1 = 32.588 ns, Median = 32.646 ns, Q3 = 32.732 ns, Max = 32.775 ns
IQR = 0.145 ns, LowerFence = 32.371 ns, UpperFence = 32.949 ns
ConfidenceInterval = [32.536 ns; 32.756 ns] (CI 99.9%), Margin = 0.110 ns (0.34% of Mean)
Skewness = -0.33, Kurtosis = 1.6, MValue = 2
-------------------- Histogram --------------------
[32.431 ns ; 32.830 ns) | @@@@@@@@@@@@@@@
TrustMiniJIT_MyEmitDelegate.StandardStatic: DefaultJob
Runtime = .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 17.089 ns, StdErr = 0.014 ns (0.08%), N = 15, StdDev = 0.054 ns
Min = 17.024 ns, Q1 = 17.044 ns, Median = 17.075 ns, Q3 = 17.140 ns, Max = 17.196 ns
IQR = 0.096 ns, LowerFence = 16.899 ns, UpperFence = 17.285 ns
ConfidenceInterval = [17.031 ns; 17.147 ns] (CI 99.9%), Margin = 0.058 ns (0.34% of Mean)
Skewness = 0.48, Kurtosis = 1.7, MValue = 2
-------------------- Histogram --------------------
[16.995 ns ; 17.225 ns) | @@@@@@@@@@@@@@@
TrustMiniJIT_MyEmitDelegate.StandardStaticAnd: DefaultJob
Runtime = .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 27.678 ns, StdErr = 0.009 ns (0.03%), N = 12, StdDev = 0.030 ns
Min = 27.599 ns, Q1 = 27.672 ns, Median = 27.686 ns, Q3 = 27.695 ns, Max = 27.711 ns
IQR = 0.023 ns, LowerFence = 27.637 ns, UpperFence = 27.730 ns
ConfidenceInterval = [27.639 ns; 27.716 ns] (CI 99.9%), Margin = 0.038 ns (0.14% of Mean)
Skewness = -1.33, Kurtosis = 4.13, MValue = 2
-------------------- Histogram --------------------
[27.582 ns ; 27.728 ns) | @@@@@@@@@@@@
TrustMiniJIT_MyEmitDelegate.Standard2: DefaultJob
Runtime = .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 27.567 ns, StdErr = 0.006 ns (0.02%), N = 14, StdDev = 0.022 ns
Min = 27.536 ns, Q1 = 27.551 ns, Median = 27.572 ns, Q3 = 27.578 ns, Max = 27.615 ns
IQR = 0.026 ns, LowerFence = 27.512 ns, UpperFence = 27.617 ns
ConfidenceInterval = [27.543 ns; 27.592 ns] (CI 99.9%), Margin = 0.025 ns (0.09% of Mean)
Skewness = 0.36, Kurtosis = 2.35, MValue = 2
-------------------- Histogram --------------------
[27.524 ns ; 27.626 ns) | @@@@@@@@@@@@@@
TrustMiniJIT_MyEmitDelegate.Official: DefaultJob
Runtime = .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 30.129 ns, StdErr = 0.021 ns (0.07%), N = 15, StdDev = 0.080 ns
Min = 30.015 ns, Q1 = 30.066 ns, Median = 30.148 ns, Q3 = 30.195 ns, Max = 30.267 ns
IQR = 0.129 ns, LowerFence = 29.873 ns, UpperFence = 30.389 ns
ConfidenceInterval = [30.043 ns; 30.215 ns] (CI 99.9%), Margin = 0.086 ns (0.29% of Mean)
Skewness = 0.03, Kurtosis = 1.51, MValue = 2
-------------------- Histogram --------------------
[29.972 ns ; 30.309 ns) | @@@@@@@@@@@@@@@
TrustMiniJIT_MyEmitDelegate.Mine: DefaultJob
Runtime = .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 29.481 ns, StdErr = 0.017 ns (0.06%), N = 15, StdDev = 0.066 ns
Min = 29.341 ns, Q1 = 29.430 ns, Median = 29.497 ns, Q3 = 29.509 ns, Max = 29.612 ns
IQR = 0.079 ns, LowerFence = 29.311 ns, UpperFence = 29.628 ns
ConfidenceInterval = [29.410 ns; 29.551 ns] (CI 99.9%), Margin = 0.070 ns (0.24% of Mean)
Skewness = -0.1, Kurtosis = 2.75, MValue = 2
-------------------- Histogram --------------------
[29.306 ns ; 29.647 ns) | @@@@@@@@@@@@@@@
TrustMiniJIT_MyEmitDelegate.MineStatic: DefaultJob
Runtime = .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 19.010 ns, StdErr = 0.005 ns (0.03%), N = 14, StdDev = 0.019 ns
Min = 18.978 ns, Q1 = 18.997 ns, Median = 19.004 ns, Q3 = 19.023 ns, Max = 19.048 ns
IQR = 0.026 ns, LowerFence = 18.957 ns, UpperFence = 19.063 ns
ConfidenceInterval = [18.988 ns; 19.031 ns] (CI 99.9%), Margin = 0.021 ns (0.11% of Mean)
Skewness = 0.3, Kurtosis = 2.11, MValue = 2
-------------------- Histogram --------------------
[18.968 ns ; 19.058 ns) | @@@@@@@@@@@@@@
// * Summary *
BenchmarkDotNet v0.14.0, Ubuntu 24.04.2 LTS (Noble Numbat)
AMD EPYC 7763, 1 CPU, 4 logical and 2 physical cores
.NET SDK 9.0.202
[Host] : .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2
DefaultJob : .NET 9.0.3 (9.0.325.11113), X64 RyuJIT AVX2
| Method | Mean | Error | StdDev | Median |
|------------------ |-----------:|----------:|----------:|-----------:|
| Padding | 0.0011 ns | 0.0016 ns | 0.0015 ns | 0.0003 ns |
| Standard | 32.6461 ns | 0.1102 ns | 0.1031 ns | 32.6463 ns |
| StandardStatic | 17.0890 ns | 0.0579 ns | 0.0542 ns | 17.0754 ns |
| StandardStaticAnd | 27.6779 ns | 0.0385 ns | 0.0300 ns | 27.6863 ns |
| Standard2 | 27.5672 ns | 0.0245 ns | 0.0217 ns | 27.5721 ns |
| Official | 30.1294 ns | 0.0860 ns | 0.0805 ns | 30.1479 ns |
| Mine | 29.4805 ns | 0.0702 ns | 0.0657 ns | 29.4967 ns |
| MineStatic | 19.0096 ns | 0.0212 ns | 0.0188 ns | 19.0040 ns |
// * Warnings *
ZeroMeasurement
TrustMiniJIT_MyEmitDelegate.Padding: Default -> The method duration is indistinguishable from the empty method duration
// * Hints *
Outliers
TrustMiniJIT_MyEmitDelegate.StandardStaticAnd: Default -> 3 outliers were removed, 4 outliers were detected (29.27 ns, 29.44 ns..29.48 ns)
TrustMiniJIT_MyEmitDelegate.Standard2: Default -> 1 outlier was removed (29.30 ns)
TrustMiniJIT_MyEmitDelegate.MineStatic: Default -> 1 outlier was removed (20.89 ns)
// * Legends *
Mean : Arithmetic mean of all measurements
Error : Half of 99.9% confidence interval
StdDev : Standard deviation of all measurements
Median : Value separating the higher half of all measurements (50th percentile)
1 ns : 1 Nanosecond (0.000000001 sec)