forked from MihaZupan/runtime-utils
-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Job completed in 44 minutes 19 seconds (remote runner delay: 1 minute 38 seconds).
dotnet/runtime#117788
Using arguments: benchmark System.Threading
System.Threading.Tests.Perf_Volatile
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-LIYULD : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-BIOQYX : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms MaxIterationCount=20
MinIterationCount=15 WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| Write_double | Main | 0.0011 ns | 0.0004 ns | 1.14 | - | NA |
| Write_double | PR | 0.0170 ns | 0.0002 ns | 17.78 | - | NA |
| Read_double | Main | 0.0000 ns | 0.0000 ns | ? | - | ? |
| Read_double | PR | 0.0000 ns | 0.0000 ns | ? | - | ? |
System.Threading.Tests.Perf_Timer
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-LIYULD : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-BIOQYX : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms MaxIterationCount=20
MinIterationCount=15 WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| ShortScheduleAndDispose | Main | 81.69 ns | 1.196 ns | 1.00 | 120 B | 1.00 |
| ShortScheduleAndDispose | PR | 79.88 ns | 1.156 ns | 0.98 | 120 B | 1.00 |
| LongScheduleAndDispose | Main | 82.33 ns | 0.966 ns | 1.00 | 120 B | 1.00 |
| LongScheduleAndDispose | PR | 77.80 ns | 0.852 ns | 0.95 | 120 B | 1.00 |
| ScheduleManyThenDisposeMany | Main | 251,127,725.50 ns | 4,960,544.997 ns | 1.00 | 144000792 B | 1.00 |
| ScheduleManyThenDisposeMany | PR | 250,680,018.25 ns | 4,756,751.471 ns | 1.00 | 144001080 B | 1.00 |
| ShortScheduleAndDisposeWithFiringTimers | Main | 92.33 ns | 3.218 ns | 1.00 | 144 B | 1.00 |
| ShortScheduleAndDisposeWithFiringTimers | PR | 91.46 ns | 3.550 ns | 0.99 | 144 B | 1.00 |
| SynchronousContention | Main | 1,207,031,754.20 ns | 9,747,908.067 ns | 1.00 | 1152000840 B | 1.00 |
| SynchronousContention | PR | 1,199,816,590.07 ns | 13,010,584.181 ns | 0.99 | 1152001464 B | 1.00 |
| AsynchronousContention | Main | 1,274,214,338.07 ns | 10,389,910.435 ns | 1.00 | 1152002936 B | 1.00 |
| AsynchronousContention | PR | 1,269,298,031.00 ns | 3,989,103.185 ns | 1.00 | 1152035336 B | 1.00 |
System.Threading.Tests.Perf_ThreadStatic
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| GetThreadStatic | Main | 1.380 ns | 0.0007 ns | 1.00 | - | NA |
| GetThreadStatic | PR | 1.309 ns | 0.0818 ns | 0.95 | - | NA |
| SetThreadStatic | Main | 3.022 ns | 0.0023 ns | 1.00 | - | NA |
| SetThreadStatic | PR | 3.010 ns | 0.0116 ns | 1.00 | - | NA |
System.Threading.Tests.Perf_ThreadPool
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1 RatioSD=0.02 Gen0=38000.0000
| Method | Toolchain | WorkItemsPerCore | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|---|
| QueueUserWorkItem_WaitCallback_Throughput | Main | 20000000 | 2.072 s | 0.0270 s | 1.00 | 614.35 MB | 1.00 |
| QueueUserWorkItem_WaitCallback_Throughput | PR | 20000000 | 2.067 s | 0.0413 s | 1.00 | 610.35 MB | 0.99 |
System.Threading.Tests.Perf_Thread
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-LIYULD : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-BIOQYX : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms MaxIterationCount=20
MinIterationCount=15 WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| CurrentThread | Main | 1.624 ns | 0.0821 ns | 1.00 | - | NA |
| CurrentThread | PR | 1.925 ns | 0.1394 ns | 1.19 | - | NA |
| GetCurrentProcessorId | Main | 1.910 ns | 0.0023 ns | 1.00 | - | NA |
| GetCurrentProcessorId | PR | 1.908 ns | 0.0005 ns | 1.00 | - | NA |
System.Threading.Tests.Perf_SpinLock
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| EnterExit | Main | 2.988 ns | 0.0020 ns | 1.00 | - | NA |
| EnterExit | PR | 2.991 ns | 0.0034 ns | 1.00 | - | NA |
| TryEnterExit | Main | 2.987 ns | 0.0030 ns | 1.00 | - | NA |
| TryEnterExit | PR | 2.993 ns | 0.0049 ns | 1.00 | - | NA |
| TryEnter_Fail | Main | 1.008 ns | 0.0006 ns | 1.00 | - | NA |
| TryEnter_Fail | PR | 1.012 ns | 0.0029 ns | 1.00 | - | NA |
System.Threading.Tests.Perf_SemaphoreSlim
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| ReleaseWait | Main | 22.59 ns | 0.063 ns | 1.00 | - | NA |
| ReleaseWait | PR | 26.95 ns | 0.073 ns | 1.19 | - | NA |
| ReleaseWaitAsync | Main | 21.71 ns | 0.065 ns | 1.00 | - | NA |
| ReleaseWaitAsync | PR | 23.09 ns | 0.024 ns | 1.06 | - | NA |
| ReleaseWaitAsync_WithCancellationToken | Main | 885.80 ns | 17.162 ns | 1.00 | 376 B | 1.00 |
| ReleaseWaitAsync_WithCancellationToken | PR | 841.77 ns | 16.039 ns | 0.95 | 376 B | 1.00 |
| ReleaseWaitAsync_WithTimeout | Main | 894.43 ns | 19.792 ns | 1.00 | 472 B | 1.00 |
| ReleaseWaitAsync_WithTimeout | PR | 865.09 ns | 10.040 ns | 0.97 | 472 B | 1.00 |
| ReleaseWaitAsync_WithCancellationTokenAndTimeout | Main | 928.95 ns | 18.425 ns | 1.00 | 472 B | 1.00 |
| ReleaseWaitAsync_WithCancellationTokenAndTimeout | PR | 926.33 ns | 15.993 ns | 1.00 | 472 B | 1.00 |
System.Threading.Tests.Perf_Monitor
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| EnterExit | Main | 6.637 ns | 0.0100 ns | 1.00 | - | NA |
| EnterExit | PR | 6.664 ns | 0.0174 ns | 1.00 | - | NA |
| TryEnterExit | Main | 6.684 ns | 0.0197 ns | 1.00 | - | NA |
| TryEnterExit | PR | 6.830 ns | 0.0209 ns | 1.02 | - | NA |
System.Threading.Tests.Perf_Lock
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| ReaderWriterLockSlimPerf | Main | 10.83 ns | 0.025 ns | 1.00 | - | NA |
| ReaderWriterLockSlimPerf | PR | 10.58 ns | 0.033 ns | 0.98 | - | NA |
System.Threading.Tests.Perf_Interlocked
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| Increment_int | Main | 0.6309 ns | 0.0022 ns | 1.00 | - | NA |
| Increment_int | PR | 0.6316 ns | 0.0018 ns | 1.00 | - | NA |
| Decrement_int | Main | 0.6326 ns | 0.0030 ns | 1.00 | - | NA |
| Decrement_int | PR | 0.6318 ns | 0.0013 ns | 1.00 | - | NA |
| Increment_long | Main | 0.6371 ns | 0.0012 ns | 1.00 | - | NA |
| Increment_long | PR | 0.6361 ns | 0.0011 ns | 1.00 | - | NA |
| Decrement_long | Main | 0.6318 ns | 0.0017 ns | 1.00 | - | NA |
| Decrement_long | PR | 0.6312 ns | 0.0019 ns | 1.00 | - | NA |
| Add_int | Main | 0.6332 ns | 0.0012 ns | 1.00 | - | NA |
| Add_int | PR | 0.6337 ns | 0.0019 ns | 1.00 | - | NA |
| Add_long | Main | 0.6316 ns | 0.0016 ns | 1.00 | - | NA |
| Add_long | PR | 0.6337 ns | 0.0023 ns | 1.00 | - | NA |
| Exchange_int | Main | 0.7084 ns | 0.0005 ns | 1.00 | - | NA |
| Exchange_int | PR | 0.7069 ns | 0.0011 ns | 1.00 | - | NA |
| Exchange_long | Main | 0.7117 ns | 0.0027 ns | 1.00 | - | NA |
| Exchange_long | PR | 0.7127 ns | 0.0033 ns | 1.00 | - | NA |
| CompareExchange_int | Main | 0.9242 ns | 0.0009 ns | 1.00 | - | NA |
| CompareExchange_int | PR | 0.9242 ns | 0.0006 ns | 1.00 | - | NA |
| CompareExchange_long | Main | 0.9246 ns | 0.0007 ns | 1.00 | - | NA |
| CompareExchange_long | PR | 0.9259 ns | 0.0006 ns | 1.00 | - | NA |
| CompareExchange_object_Match | Main | 0.8082 ns | 0.0159 ns | 1.00 | - | NA |
| CompareExchange_object_Match | PR | 0.5963 ns | 0.0213 ns | 0.74 | - | NA |
| CompareExchange_object_NoMatch | Main | 0.6798 ns | 0.1542 ns | 1.06 | - | NA |
| CompareExchange_object_NoMatch | PR | 0.6951 ns | 0.1080 ns | 1.08 | - | NA |
System.Threading.Tests.Perf_EventWaitHandle
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| Set_Reset | Main | 150.90 ns | 0.419 ns | 1.00 | - | NA |
| Set_Reset | PR | 18.53 ns | 0.028 ns | 0.12 | - | NA |
System.Threading.Tests.Perf_CancellationToken
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-LIYULD : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-BIOQYX : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms MaxIterationCount=20
MinIterationCount=15 WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| RegisterAndUnregister_Serial | Main | 21.938 ns | 0.5815 ns | 1.00 | - | NA |
| RegisterAndUnregister_Serial | PR | 22.223 ns | 0.4732 ns | 1.01 | - | NA |
| Cancel | Main | 43.773 ns | 0.1376 ns | 1.00 | 192 B | 1.00 |
| Cancel | PR | 43.745 ns | 0.2647 ns | 1.00 | 192 B | 1.00 |
| CreateLinkedTokenSource1 | Main | 25.538 ns | 0.5531 ns | 1.00 | 64 B | 1.00 |
| CreateLinkedTokenSource1 | PR | 26.917 ns | 0.6143 ns | 1.05 | 64 B | 1.00 |
| CreateLinkedTokenSource2 | Main | 43.592 ns | 0.9936 ns | 1.00 | 80 B | 1.00 |
| CreateLinkedTokenSource2 | PR | 43.460 ns | 0.1365 ns | 1.00 | 80 B | 1.00 |
| CreateLinkedTokenSource3 | Main | 68.244 ns | 0.5427 ns | 1.00 | 128 B | 1.00 |
| CreateLinkedTokenSource3 | PR | 73.360 ns | 0.9278 ns | 1.08 | 128 B | 1.00 |
| CreateTokenDispose | Main | 6.482 ns | 0.1010 ns | 1.00 | 48 B | 1.00 |
| CreateTokenDispose | PR | 6.064 ns | 0.1107 ns | 0.94 | 48 B | 1.00 |
| CreateRegisterDispose | Main | 38.460 ns | 0.3876 ns | 1.00 | 192 B | 1.00 |
| CreateRegisterDispose | PR | 38.213 ns | 0.3140 ns | 0.99 | 192 B | 1.00 |
| CreateManyRegisterDispose | Main | 13.181 ns | 0.2233 ns | 1.00 | - | NA |
| CreateManyRegisterDispose | PR | 12.777 ns | 0.2279 ns | 0.97 | - | NA |
| CreateManyRegisterMultipleDispose | Main | 94.063 ns | 3.3137 ns | 1.00 | - | NA |
| CreateManyRegisterMultipleDispose | PR | 95.822 ns | 5.9894 ns | 1.02 | - | NA |
| CancelAfter | Main | 56.551 ns | 0.7401 ns | 1.00 | 144 B | 1.00 |
| CancelAfter | PR | 58.721 ns | 1.1196 ns | 1.04 | 144 B | 1.00 |
System.Threading.Tasks.Tests.Perf_AsyncMethods
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| EmptyAsyncMethodInvocation | Main | 5.176 ns | 0.0156 ns | 1.00 | - | NA |
| EmptyAsyncMethodInvocation | PR | 5.064 ns | 0.0046 ns | 0.98 | - | NA |
| SingleYieldMethodInvocation | Main | 427.007 ns | 0.9847 ns | 1.00 | 96 B | 1.00 |
| SingleYieldMethodInvocation | PR | 442.520 ns | 8.5759 ns | 1.04 | 96 B | 1.00 |
| Yield | Main | 229.001 ns | 13.2847 ns | 1.00 | - | NA |
| Yield | PR | 250.996 ns | 11.8351 ns | 1.10 | - | NA |
System.Threading.Tasks.ValueTaskPerfTest
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-GWZVEA : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-JUROJA : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-IBSGRJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-EDFFRX : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms MaxIterationCount=20
MaxWarmupIterationCount=10 MinIterationCount=15 MinWarmupIterationCount=2
WarmupCount=-1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| Await_FromResult | Main | 5.403 ns | 0.0128 ns | 1.00 | - | NA |
| Await_FromResult | PR | 5.345 ns | 0.0171 ns | 0.99 | - | NA |
| Await_FromCompletedTask | Main | 11.896 ns | 0.2817 ns | 1.00 | 72 B | 1.00 |
| Await_FromCompletedTask | PR | 11.020 ns | 0.0829 ns | 0.93 | 72 B | 1.00 |
| Await_FromCompletedValueTaskSource | Main | 17.035 ns | 0.0827 ns | 1.00 | 72 B | 1.00 |
| Await_FromCompletedValueTaskSource | PR | 16.764 ns | 0.1131 ns | 0.98 | 72 B | 1.00 |
| CreateAndAwait_FromResult | Main | 5.390 ns | 0.0084 ns | 1.00 | - | NA |
| CreateAndAwait_FromResult | PR | 5.325 ns | 0.0084 ns | 0.99 | - | NA |
| CreateAndAwait_FromResult_ConfigureAwait | Main | 5.441 ns | 0.0046 ns | 1.00 | - | NA |
| CreateAndAwait_FromResult_ConfigureAwait | PR | 5.341 ns | 0.0051 ns | 0.98 | - | NA |
| CreateAndAwait_FromCompletedTask | Main | 6.995 ns | 0.0141 ns | 1.00 | - | NA |
| CreateAndAwait_FromCompletedTask | PR | 6.972 ns | 0.0153 ns | 1.00 | - | NA |
| CreateAndAwait_FromCompletedTask_ConfigureAwait | Main | 7.013 ns | 0.0122 ns | 1.00 | - | NA |
| CreateAndAwait_FromCompletedTask_ConfigureAwait | PR | 7.014 ns | 0.0142 ns | 1.00 | - | NA |
| CreateAndAwait_FromCompletedValueTaskSource | Main | 8.360 ns | 0.0079 ns | 1.00 | - | NA |
| CreateAndAwait_FromCompletedValueTaskSource | PR | 8.461 ns | 0.0142 ns | 1.01 | - | NA |
| CreateAndAwait_FromYieldingAsyncMethod | Main | 686.236 ns | 2.6644 ns | 1.00 | 205 B | 1.00 |
| CreateAndAwait_FromYieldingAsyncMethod | PR | 701.221 ns | 5.4459 ns | 1.02 | 204 B | 1.00 |
| CreateAndAwait_FromDelayedTCS | Main | 88.674 ns | 0.5013 ns | 1.00 | 216 B | 1.00 |
| CreateAndAwait_FromDelayedTCS | PR | 85.375 ns | 0.4450 ns | 0.96 | 216 B | 1.00 |
| Copy_PassAsArgumentAndReturn_FromResult | Main | 1.771 ns | 0.0023 ns | 1.00 | - | NA |
| Copy_PassAsArgumentAndReturn_FromResult | PR | 1.774 ns | 0.0034 ns | 1.00 | - | NA |
| Copy_PassAsArgumentAndReturn_FromTask | Main | 2.621 ns | 0.0113 ns | 1.00 | - | NA |
| Copy_PassAsArgumentAndReturn_FromTask | PR | 2.617 ns | 0.0040 ns | 1.00 | - | NA |
| Copy_PassAsArgumentAndReturn_FromValueTaskSource | Main | 3.816 ns | 0.0050 ns | 1.00 | - | NA |
| Copy_PassAsArgumentAndReturn_FromValueTaskSource | PR | 3.807 ns | 0.0064 ns | 1.00 | - | NA |
| CreateAndAwait_FromCompletedValueTaskSource_ConfigureAwait | Main | 8.407 ns | 0.0109 ns | 1.00 | - | NA |
| CreateAndAwait_FromCompletedValueTaskSource_ConfigureAwait | PR | 8.339 ns | 0.0581 ns | 0.99 | - | NA |
System.Threading.Channels.Tests.UnboundedChannelPerfTests
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| TryWriteThenTryRead | Main | 20.20 ns | 0.032 ns | 1.00 | - | NA |
| TryWriteThenTryRead | PR | 20.37 ns | 0.040 ns | 1.01 | - | NA |
| WriteAsyncThenReadAsync | Main | 24.98 ns | 0.080 ns | 1.00 | - | NA |
| WriteAsyncThenReadAsync | PR | 25.16 ns | 0.041 ns | 1.01 | - | NA |
| ReadAsyncThenWriteAsync | Main | 44.69 ns | 0.110 ns | 1.00 | - | NA |
| ReadAsyncThenWriteAsync | PR | 45.06 ns | 0.031 ns | 1.01 | - | NA |
| PingPong | Main | 10,937,232.08 ns | 341,728.096 ns | 1.00 | 1124 B | 1.00 |
| PingPong | PR | 10,928,424.51 ns | 210,097.492 ns | 1.00 | 1111 B | 0.99 |
System.Threading.Channels.Tests.SpscUnboundedChannelPerfTests
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| TryWriteThenTryRead | Main | 21.20 ns | 0.027 ns | 1.00 | - | NA |
| TryWriteThenTryRead | PR | 20.68 ns | 0.049 ns | 0.98 | - | NA |
| WriteAsyncThenReadAsync | Main | 33.72 ns | 0.030 ns | 1.00 | - | NA |
| WriteAsyncThenReadAsync | PR | 31.13 ns | 0.204 ns | 0.92 | - | NA |
| ReadAsyncThenWriteAsync | Main | 41.79 ns | 0.066 ns | 1.00 | - | NA |
| ReadAsyncThenWriteAsync | PR | 41.96 ns | 0.231 ns | 1.00 | - | NA |
| PingPong | Main | 10,424,822.56 ns | 310,016.007 ns | 1.00 | 1131 B | 1.00 |
| PingPong | PR | 10,890,043.09 ns | 498,719.080 ns | 1.05 | 1199 B | 1.06 |
System.Threading.Channels.Tests.BoundedChannelPerfTests
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
Job-IXTPWL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job-XGVMLJ : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms
MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15
WarmupCount=1
| Method | Toolchain | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|
| TryWriteThenTryRead | Main | 29.56 ns | 0.301 ns | 1.00 | - | NA |
| TryWriteThenTryRead | PR | 29.31 ns | 0.079 ns | 0.99 | - | NA |
| WriteAsyncThenReadAsync | Main | 35.78 ns | 0.085 ns | 1.00 | - | NA |
| WriteAsyncThenReadAsync | PR | 35.67 ns | 0.395 ns | 1.00 | - | NA |
| ReadAsyncThenWriteAsync | Main | 40.58 ns | 0.101 ns | 1.00 | - | NA |
| ReadAsyncThenWriteAsync | PR | 40.19 ns | 0.061 ns | 0.99 | - | NA |
| PingPong | Main | 10,719,802.47 ns | 336,447.929 ns | 1.00 | 1108 B | 1.00 |
| PingPong | PR | 10,755,276.44 ns | 90,025.478 ns | 1.00 | 1108 B | 1.00 |
Artifacts:
- BDN_Artifacts.zip (502 KB)
- results.md (37 KB)
Metadata
Metadata
Assignees
Labels
No labels