282 lines
15 KiB
Plaintext
282 lines
15 KiB
Plaintext
// Validating benchmarks:
|
|
// ***** BenchmarkRunner: Start *****
|
|
// ***** Found 2 benchmark(s) in total *****
|
|
// ***** Building 1 exe(s) in Parallel: Start *****
|
|
// ***** Done, took 00:00:00 (0.03 sec) *****
|
|
// Found 2 benchmarks:
|
|
// HlsfAllocatorBench.Hlsf: Job-VLPMSV(Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1)
|
|
// HlsfAllocatorBench.Libc: Job-VLPMSV(Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1)
|
|
|
|
Setup power plan (GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c FriendlyName: 高性能)
|
|
// **************************
|
|
// Benchmark: HlsfAllocatorBench.Hlsf: Job-VLPMSV(Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1)
|
|
// *** Execute ***
|
|
// Launch: 1 / 1
|
|
|
|
// Benchmark Process Environment Information:
|
|
// BenchmarkDotNet v0.15.8
|
|
// Runtime=.NET 8.0.26 (8.0.26, 8.0.2626.16921), X64 RyuJIT x86-64-v3
|
|
// GC=Concurrent Workstation
|
|
// HardwareIntrinsics=AVX2+BMI1+BMI2+F16C+FMA+LZCNT+MOVBE,AVX,SSE3+SSSE3+SSE4.1+SSE4.2+POPCNT,X86Base+SSE+SSE2,AES+PCLMUL VectorSize=256
|
|
// Job: Job-VLPMSV(Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1)
|
|
|
|
OverheadJitting 1: 524288 op, 118100.00 ns, 0.2253 ns/op
|
|
WorkloadJitting 1: 524288 op, 362247300.00 ns, 690.9319 ns/op
|
|
|
|
OverheadWarmup 1: 524288 op, 1800.00 ns, 0.0034 ns/op
|
|
OverheadWarmup 2: 524288 op, 800.00 ns, 0.0015 ns/op
|
|
OverheadWarmup 3: 524288 op, 500.00 ns, 0.0010 ns/op
|
|
OverheadWarmup 4: 524288 op, 300.00 ns, 0.0006 ns/op
|
|
OverheadWarmup 5: 524288 op, 700.00 ns, 0.0013 ns/op
|
|
OverheadWarmup 6: 524288 op, 100.00 ns, 0.0002 ns/op
|
|
OverheadWarmup 7: 524288 op, 300.00 ns, 0.0006 ns/op
|
|
OverheadWarmup 8: 524288 op, 100.00 ns, 0.0002 ns/op
|
|
|
|
OverheadActual 1: 524288 op, 700.00 ns, 0.0013 ns/op
|
|
OverheadActual 2: 524288 op, 600.00 ns, 0.0011 ns/op
|
|
OverheadActual 3: 524288 op, 800.00 ns, 0.0015 ns/op
|
|
OverheadActual 4: 524288 op, 300.00 ns, 0.0006 ns/op
|
|
OverheadActual 5: 524288 op, 300.00 ns, 0.0006 ns/op
|
|
OverheadActual 6: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 7: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 8: 524288 op, 400.00 ns, 0.0008 ns/op
|
|
OverheadActual 9: 524288 op, 500.00 ns, 0.0010 ns/op
|
|
OverheadActual 10: 524288 op, 300.00 ns, 0.0006 ns/op
|
|
OverheadActual 11: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 12: 524288 op, 300.00 ns, 0.0006 ns/op
|
|
OverheadActual 13: 524288 op, 300.00 ns, 0.0006 ns/op
|
|
OverheadActual 14: 524288 op, 400.00 ns, 0.0008 ns/op
|
|
OverheadActual 15: 524288 op, 500.00 ns, 0.0010 ns/op
|
|
OverheadActual 16: 524288 op, 500.00 ns, 0.0010 ns/op
|
|
OverheadActual 17: 524288 op, 500.00 ns, 0.0010 ns/op
|
|
OverheadActual 18: 524288 op, 400.00 ns, 0.0008 ns/op
|
|
OverheadActual 19: 524288 op, 400.00 ns, 0.0008 ns/op
|
|
OverheadActual 20: 524288 op, 300.00 ns, 0.0006 ns/op
|
|
|
|
WorkloadWarmup 1: 524288 op, 261282000.00 ns, 498.3559 ns/op
|
|
WorkloadWarmup 2: 524288 op, 222119300.00 ns, 423.6589 ns/op
|
|
WorkloadWarmup 3: 524288 op, 224656200.00 ns, 428.4977 ns/op
|
|
WorkloadWarmup 4: 524288 op, 219228000.00 ns, 418.1442 ns/op
|
|
WorkloadWarmup 5: 524288 op, 230952400.00 ns, 440.5067 ns/op
|
|
WorkloadWarmup 6: 524288 op, 209467600.00 ns, 399.5277 ns/op
|
|
|
|
WorkloadActual 1: 524288 op, 230079600.00 ns, 438.8420 ns/op
|
|
WorkloadActual 2: 524288 op, 219833700.00 ns, 419.2995 ns/op
|
|
WorkloadActual 3: 524288 op, 191251500.00 ns, 364.7833 ns/op
|
|
WorkloadActual 4: 524288 op, 190933200.00 ns, 364.1762 ns/op
|
|
WorkloadActual 5: 524288 op, 187688700.00 ns, 357.9878 ns/op
|
|
WorkloadActual 6: 524288 op, 195972400.00 ns, 373.7877 ns/op
|
|
WorkloadActual 7: 524288 op, 187445100.00 ns, 357.5232 ns/op
|
|
WorkloadActual 8: 524288 op, 190997400.00 ns, 364.2986 ns/op
|
|
WorkloadActual 9: 524288 op, 191719100.00 ns, 365.6752 ns/op
|
|
WorkloadActual 10: 524288 op, 192303300.00 ns, 366.7894 ns/op
|
|
WorkloadActual 11: 524288 op, 186038000.00 ns, 354.8393 ns/op
|
|
WorkloadActual 12: 524288 op, 184847100.00 ns, 352.5679 ns/op
|
|
WorkloadActual 13: 524288 op, 192115100.00 ns, 366.4305 ns/op
|
|
WorkloadActual 14: 524288 op, 190557100.00 ns, 363.4588 ns/op
|
|
WorkloadActual 15: 524288 op, 189907400.00 ns, 362.2196 ns/op
|
|
|
|
WorkloadResult 1: 524288 op, 191251100.00 ns, 364.7825 ns/op
|
|
WorkloadResult 2: 524288 op, 190932800.00 ns, 364.1754 ns/op
|
|
WorkloadResult 3: 524288 op, 187688300.00 ns, 357.9870 ns/op
|
|
WorkloadResult 4: 524288 op, 195972000.00 ns, 373.7869 ns/op
|
|
WorkloadResult 5: 524288 op, 187444700.00 ns, 357.5224 ns/op
|
|
WorkloadResult 6: 524288 op, 190997000.00 ns, 364.2979 ns/op
|
|
WorkloadResult 7: 524288 op, 191718700.00 ns, 365.6744 ns/op
|
|
WorkloadResult 8: 524288 op, 192302900.00 ns, 366.7887 ns/op
|
|
WorkloadResult 9: 524288 op, 186037600.00 ns, 354.8386 ns/op
|
|
WorkloadResult 10: 524288 op, 184846700.00 ns, 352.5671 ns/op
|
|
WorkloadResult 11: 524288 op, 192114700.00 ns, 366.4297 ns/op
|
|
WorkloadResult 12: 524288 op, 190556700.00 ns, 363.4581 ns/op
|
|
WorkloadResult 13: 524288 op, 189907000.00 ns, 362.2189 ns/op
|
|
// GC: 0 0 0 0 524288
|
|
// Threading: 0 0 524288
|
|
|
|
|
|
Mean = 362.656 ns, StdErr = 1.572 ns (0.43%), N = 13, StdDev = 5.670 ns
|
|
Min = 352.567 ns, Q1 = 357.987 ns, Median = 364.175 ns, Q3 = 365.674 ns, Max = 373.787 ns
|
|
IQR = 7.687 ns, LowerFence = 346.456 ns, UpperFence = 377.205 ns
|
|
ConfidenceInterval = [355.866 ns; 369.446 ns] (CI 99.9%), Margin = 6.790 ns (1.87% of Mean)
|
|
Skewness = -0.08, Kurtosis = 2.32, MValue = 2
|
|
|
|
// ** Remained 1 (50.0%) benchmark(s) to run. Estimated finish 2026-05-08 16:30 (0h 0m from now) **
|
|
Setup power plan (GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c FriendlyName: 高性能)
|
|
// **************************
|
|
// Benchmark: HlsfAllocatorBench.Libc: Job-VLPMSV(Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1)
|
|
// *** Execute ***
|
|
// Launch: 1 / 1
|
|
|
|
// Benchmark Process Environment Information:
|
|
// BenchmarkDotNet v0.15.8
|
|
// Runtime=.NET 8.0.26 (8.0.26, 8.0.2626.16921), X64 RyuJIT x86-64-v3
|
|
// GC=Concurrent Workstation
|
|
// HardwareIntrinsics=AVX2+BMI1+BMI2+F16C+FMA+LZCNT+MOVBE,AVX,SSE3+SSSE3+SSE4.1+SSE4.2+POPCNT,X86Base+SSE+SSE2,AES+PCLMUL VectorSize=256
|
|
// Job: Job-VLPMSV(Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1)
|
|
|
|
OverheadJitting 1: 524288 op, 113200.00 ns, 0.2159 ns/op
|
|
WorkloadJitting 1: 524288 op, 193998300.00 ns, 370.0224 ns/op
|
|
|
|
OverheadWarmup 1: 524288 op, 1000.00 ns, 0.0019 ns/op
|
|
OverheadWarmup 2: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadWarmup 3: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadWarmup 4: 524288 op, 300.00 ns, 0.0006 ns/op
|
|
OverheadWarmup 5: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadWarmup 6: 524288 op, 100.00 ns, 0.0002 ns/op
|
|
OverheadWarmup 7: 524288 op, 300.00 ns, 0.0006 ns/op
|
|
|
|
OverheadActual 1: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 2: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 3: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 4: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 5: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 6: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 7: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 8: 524288 op, 100.00 ns, 0.0002 ns/op
|
|
OverheadActual 9: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 10: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 11: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 12: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 13: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 14: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 15: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 16: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 17: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 18: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 19: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
OverheadActual 20: 524288 op, 200.00 ns, 0.0004 ns/op
|
|
|
|
WorkloadWarmup 1: 524288 op, 136176100.00 ns, 259.7353 ns/op
|
|
WorkloadWarmup 2: 524288 op, 62339100.00 ns, 118.9024 ns/op
|
|
WorkloadWarmup 3: 524288 op, 47576100.00 ns, 90.7442 ns/op
|
|
WorkloadWarmup 4: 524288 op, 47170000.00 ns, 89.9696 ns/op
|
|
WorkloadWarmup 5: 524288 op, 42901900.00 ns, 81.8289 ns/op
|
|
WorkloadWarmup 6: 524288 op, 46176000.00 ns, 88.0737 ns/op
|
|
WorkloadWarmup 7: 524288 op, 44997000.00 ns, 85.8250 ns/op
|
|
WorkloadWarmup 8: 524288 op, 41723200.00 ns, 79.5807 ns/op
|
|
WorkloadWarmup 9: 524288 op, 42964100.00 ns, 81.9475 ns/op
|
|
WorkloadWarmup 10: 524288 op, 44117900.00 ns, 84.1482 ns/op
|
|
WorkloadWarmup 11: 524288 op, 42704200.00 ns, 81.4518 ns/op
|
|
|
|
WorkloadActual 1: 524288 op, 42949100.00 ns, 81.9189 ns/op
|
|
WorkloadActual 2: 524288 op, 42231100.00 ns, 80.5494 ns/op
|
|
WorkloadActual 3: 524288 op, 44446600.00 ns, 84.7752 ns/op
|
|
WorkloadActual 4: 524288 op, 44677800.00 ns, 85.2161 ns/op
|
|
WorkloadActual 5: 524288 op, 43298000.00 ns, 82.5844 ns/op
|
|
WorkloadActual 6: 524288 op, 44244300.00 ns, 84.3893 ns/op
|
|
WorkloadActual 7: 524288 op, 44176500.00 ns, 84.2600 ns/op
|
|
WorkloadActual 8: 524288 op, 60064400.00 ns, 114.5638 ns/op
|
|
WorkloadActual 9: 524288 op, 65755600.00 ns, 125.4189 ns/op
|
|
WorkloadActual 10: 524288 op, 42845400.00 ns, 81.7211 ns/op
|
|
WorkloadActual 11: 524288 op, 47539500.00 ns, 90.6744 ns/op
|
|
WorkloadActual 12: 524288 op, 44916900.00 ns, 85.6722 ns/op
|
|
WorkloadActual 13: 524288 op, 44199900.00 ns, 84.3046 ns/op
|
|
WorkloadActual 14: 524288 op, 43254600.00 ns, 82.5016 ns/op
|
|
WorkloadActual 15: 524288 op, 43000000.00 ns, 82.0160 ns/op
|
|
WorkloadActual 16: 524288 op, 44285900.00 ns, 84.4687 ns/op
|
|
WorkloadActual 17: 524288 op, 44213600.00 ns, 84.3307 ns/op
|
|
WorkloadActual 18: 524288 op, 42392500.00 ns, 80.8573 ns/op
|
|
WorkloadActual 19: 524288 op, 44178700.00 ns, 84.2642 ns/op
|
|
|
|
WorkloadResult 1: 524288 op, 42948900.00 ns, 81.9185 ns/op
|
|
WorkloadResult 2: 524288 op, 42230900.00 ns, 80.5490 ns/op
|
|
WorkloadResult 3: 524288 op, 44446400.00 ns, 84.7748 ns/op
|
|
WorkloadResult 4: 524288 op, 44677600.00 ns, 85.2158 ns/op
|
|
WorkloadResult 5: 524288 op, 43297800.00 ns, 82.5840 ns/op
|
|
WorkloadResult 6: 524288 op, 44244100.00 ns, 84.3889 ns/op
|
|
WorkloadResult 7: 524288 op, 44176300.00 ns, 84.2596 ns/op
|
|
WorkloadResult 8: 524288 op, 42845200.00 ns, 81.7207 ns/op
|
|
WorkloadResult 9: 524288 op, 44916700.00 ns, 85.6718 ns/op
|
|
WorkloadResult 10: 524288 op, 44199700.00 ns, 84.3042 ns/op
|
|
WorkloadResult 11: 524288 op, 43254400.00 ns, 82.5012 ns/op
|
|
WorkloadResult 12: 524288 op, 42999800.00 ns, 82.0156 ns/op
|
|
WorkloadResult 13: 524288 op, 44285700.00 ns, 84.4683 ns/op
|
|
WorkloadResult 14: 524288 op, 44213400.00 ns, 84.3304 ns/op
|
|
WorkloadResult 15: 524288 op, 42392300.00 ns, 80.8569 ns/op
|
|
WorkloadResult 16: 524288 op, 44178500.00 ns, 84.2638 ns/op
|
|
// GC: 0 0 0 624 524288
|
|
// Threading: 0 0 524288
|
|
|
|
|
|
Mean = 83.364 ns, StdErr = 0.401 ns (0.48%), N = 16, StdDev = 1.604 ns
|
|
Min = 80.549 ns, Q1 = 81.991 ns, Median = 84.262 ns, Q3 = 84.409 ns, Max = 85.672 ns
|
|
IQR = 2.417 ns, LowerFence = 78.365 ns, UpperFence = 88.035 ns
|
|
ConfidenceInterval = [81.730 ns; 84.998 ns] (CI 99.9%), Margin = 1.634 ns (1.96% of Mean)
|
|
Skewness = -0.33, Kurtosis = 1.58, MValue = 2
|
|
|
|
// ** Remained 0 (0.0%) benchmark(s) to run. Estimated finish 2026-05-08 16:30 (0h 0m from now) **
|
|
Successfully reverted power plan (GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c FriendlyName: 高性能)
|
|
// ***** BenchmarkRunner: Finish *****
|
|
|
|
// * Export *
|
|
BenchmarkDotNet.Artifacts\results\StgSharp.Benchmark.HlsfAllocatorBench-report.csv
|
|
BenchmarkDotNet.Artifacts\results\StgSharp.Benchmark.HlsfAllocatorBench-report-github.md
|
|
BenchmarkDotNet.Artifacts\results\StgSharp.Benchmark.HlsfAllocatorBench-report.html
|
|
|
|
// * Detailed results *
|
|
HlsfAllocatorBench.Hlsf: Job-VLPMSV(Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1)
|
|
Runtime = ; GC =
|
|
Mean = 362.656 ns, StdErr = 1.572 ns (0.43%), N = 13, StdDev = 5.670 ns
|
|
Min = 352.567 ns, Q1 = 357.987 ns, Median = 364.175 ns, Q3 = 365.674 ns, Max = 373.787 ns
|
|
IQR = 7.687 ns, LowerFence = 346.456 ns, UpperFence = 377.205 ns
|
|
ConfidenceInterval = [355.866 ns; 369.446 ns] (CI 99.9%), Margin = 6.790 ns (1.87% of Mean)
|
|
Skewness = -0.08, Kurtosis = 2.32, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[351.724 ns ; 360.859 ns) | @@@@
|
|
[360.859 ns ; 376.952 ns) | @@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
HlsfAllocatorBench.Libc: Job-VLPMSV(Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1)
|
|
Runtime = ; GC =
|
|
Mean = 83.364 ns, StdErr = 0.401 ns (0.48%), N = 16, StdDev = 1.604 ns
|
|
Min = 80.549 ns, Q1 = 81.991 ns, Median = 84.262 ns, Q3 = 84.409 ns, Max = 85.672 ns
|
|
IQR = 2.417 ns, LowerFence = 78.365 ns, UpperFence = 88.035 ns
|
|
ConfidenceInterval = [81.730 ns; 84.998 ns] (CI 99.9%), Margin = 1.634 ns (1.96% of Mean)
|
|
Skewness = -0.33, Kurtosis = 1.58, MValue = 2
|
|
-------------------- Histogram --------------------
|
|
[79.713 ns ; 82.988 ns) | @@@@@@@
|
|
[82.988 ns ; 85.815 ns) | @@@@@@@@@
|
|
---------------------------------------------------
|
|
|
|
// * Summary *
|
|
|
|
BenchmarkDotNet v0.15.8, Windows 11 (10.0.26200.8246/25H2/2025Update/HudsonValley2)
|
|
AMD Ryzen 7 6800H with Radeon Graphics 3.20GHz, 1 CPU, 16 logical and 8 physical cores
|
|
.NET SDK 10.0.203
|
|
[Host] : .NET 8.0.26 (8.0.26, 8.0.2626.16921), X64 RyuJIT x86-64-v3
|
|
|
|
Toolchain=InProcessEmitToolchain InvocationCount=1 UnrollFactor=1
|
|
|
|
| Method | Mean | Error | StdDev | Ratio | RatioSD | Allocated | Alloc Ratio |
|
|
|------- |----------:|---------:|---------:|------:|--------:|----------:|------------:|
|
|
| Hlsf | 362.66 ns | 6.790 ns | 5.670 ns | 4.35 | 0.10 | - | NA |
|
|
| Libc | 83.36 ns | 1.634 ns | 1.604 ns | 1.00 | 0.03 | - | NA |
|
|
|
|
// * Warnings *
|
|
MinIterationTime
|
|
HlsfAllocatorBench.Libc: Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1 -> The minimum observed iteration time is 42.231ms which is very small. It's recommended to increase it to at least 100ms using more operations.
|
|
|
|
// * Hints *
|
|
Outliers
|
|
HlsfAllocatorBench.Hlsf: Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1 -> 2 outliers were removed (419.30 ns, 438.84 ns)
|
|
HlsfAllocatorBench.Libc: Toolchain=InProcessEmitToolchain, InvocationCount=1, UnrollFactor=1 -> 3 outliers were removed (90.67 ns..125.42 ns)
|
|
|
|
// * Legends *
|
|
Mean : Arithmetic mean of all measurements
|
|
Error : Half of 99.9% confidence interval
|
|
StdDev : Standard deviation of all measurements
|
|
Ratio : Mean of the ratio distribution ([Current]/[Baseline])
|
|
RatioSD : Standard deviation of the ratio distribution ([Current]/[Baseline])
|
|
Allocated : Allocated memory per single operation (managed only, inclusive, 1KB = 1024B)
|
|
Alloc Ratio : Allocated memory ratio distribution ([Current]/[Baseline])
|
|
1 ns : 1 Nanosecond (0.000000001 sec)
|
|
|
|
// * Diagnostic Output - MemoryDiagnoser *
|
|
|
|
|
|
// ***** BenchmarkRunner: End *****
|
|
Run time: 00:00:08 (8.94 sec), executed benchmarks: 2
|
|
|
|
Global total time: 00:00:09 (9.83 sec), executed benchmarks: 2
|
|
// * Artifacts cleanup *
|
|
Artifacts cleanup is finished
|