Skip to content

[Benchmark X64] [VSadov] Make Condition to not use ConditionalWeakTable #1961

@MihuBot

Description

@MihuBot

Job completed in 43 minutes 24 seconds (remote runner delay: 1 minute 18 seconds).
dotnet/runtime#129083
Using arguments: benchmark System.Threading
Main commit: dotnet/runtime@65937ca
PR commit: VSadov/runtime@0c0f58a

System.Threading.Tests.Perf_Volatile
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-NRQIIJ : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-NGSIDY : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  PowerPlanMode=  IterationTime=250ms
MaxIterationCount=20  MinIterationCount=15  WarmupCount=1
Min=1.124 ns
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
Write_double Main 1.124 ns 0.0003 ns 1.00 - NA
Write_double PR 1.124 ns 0.0002 ns 1.00 - NA
Read_double Main 1.126 ns 0.0039 ns 1.00 - NA
Read_double PR 1.125 ns 0.0003 ns 1.00 - NA
System.Threading.Tests.Perf_Timer
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-NRQIIJ : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-NGSIDY : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  PowerPlanMode=  IterationTime=250ms
MaxIterationCount=20  MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
ShortScheduleAndDispose Main 91.70 ns 0.977 ns 1.00 120 B 1.00
ShortScheduleAndDispose PR 82.42 ns 0.308 ns 0.90 120 B 1.00
LongScheduleAndDispose Main 82.53 ns 0.976 ns 1.00 120 B 1.00
LongScheduleAndDispose PR 83.98 ns 0.829 ns 1.02 120 B 1.00
ScheduleManyThenDisposeMany Main 243,251,019.53 ns 2,833,356.669 ns 1.00 144001288 B 1.00
ScheduleManyThenDisposeMany PR 242,188,481.40 ns 2,484,566.988 ns 1.00 144001288 B 1.00
ShortScheduleAndDisposeWithFiringTimers Main 97.65 ns 3.355 ns 1.00 144 B 1.00
ShortScheduleAndDisposeWithFiringTimers PR 92.94 ns 2.533 ns 0.95 144 B 1.00
SynchronousContention Main 1,531,794,458.79 ns 31,596,773.598 ns 1.00 1152000776 B 1.00
SynchronousContention PR 1,323,815,852.74 ns 48,389,218.139 ns 0.86 1152000760 B 1.00
AsynchronousContention Main 1,143,753,328.80 ns 13,338,983.380 ns 1.00 1344002248 B 1.00
AsynchronousContention PR 1,375,212,284.55 ns 33,176,643.831 ns 1.20 1344002232 B 1.00
System.Threading.Tests.Perf_ThreadStatic
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
GetThreadStatic Main 2.489 ns 0.0008 ns 1.00 - NA
GetThreadStatic PR 2.490 ns 0.0019 ns 1.00 - NA
SetThreadStatic Main 4.397 ns 0.0026 ns 1.00 - NA
SetThreadStatic PR 4.400 ns 0.0019 ns 1.00 - NA
System.Threading.Tests.Perf_ThreadPool
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1  StdDev=0.0297 s
Gen0=38000.0000
Method Toolchain WorkItemsPerCore Mean Error Ratio Allocated Alloc Ratio
QueueUserWorkItem_WaitCallback_Throughput Main 20000000 2.119 s 0.0318 s 1.00 610.35 MB 1.00
QueueUserWorkItem_WaitCallback_Throughput PR 20000000 2.115 s 0.0317 s 1.00 610.35 MB 1.00
System.Threading.Tests.Perf_Thread
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-NRQIIJ : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-NGSIDY : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  PowerPlanMode=  IterationTime=250ms
MaxIterationCount=20  MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
CurrentThread Main 2.760 ns 0.0010 ns 1.00 - NA
CurrentThread PR 2.761 ns 0.0011 ns 1.00 - NA
GetCurrentProcessorId Main 3.036 ns 0.0029 ns 1.00 - NA
GetCurrentProcessorId PR 3.060 ns 0.0297 ns 1.01 - NA
System.Threading.Tests.Perf_SpinLock
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
EnterExit Main 4.409 ns 0.0026 ns 1.00 - NA
EnterExit PR 4.413 ns 0.0044 ns 1.00 - NA
TryEnterExit Main 4.411 ns 0.0045 ns 1.00 - NA
TryEnterExit PR 4.409 ns 0.0017 ns 1.00 - NA
TryEnter_Fail Main 1.910 ns 0.0011 ns 1.00 - NA
TryEnter_Fail PR 1.913 ns 0.0042 ns 1.00 - NA
System.Threading.Tests.Perf_SemaphoreSlim
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
ReleaseWait Main 21.51 ns 0.036 ns 1.00 - NA
ReleaseWait PR 21.54 ns 0.157 ns 1.00 - NA
ReleaseWaitAsync Main 21.04 ns 0.027 ns 1.00 - NA
ReleaseWaitAsync PR 20.85 ns 0.055 ns 0.99 - NA
ReleaseWaitAsync_WithCancellationToken Main 18,771.65 ns 1,508.351 ns 1.00 584 B 1.00
ReleaseWaitAsync_WithCancellationToken PR 19,041.39 ns 1,888.110 ns 1.02 584 B 1.00
ReleaseWaitAsync_WithTimeout Main 18,714.22 ns 1,490.603 ns 1.00 680 B 1.00
ReleaseWaitAsync_WithTimeout PR 17,459.44 ns 874.799 ns 0.94 680 B 1.00
ReleaseWaitAsync_WithCancellationTokenAndTimeout Main 19,060.74 ns 911.619 ns 1.00 680 B 1.00
ReleaseWaitAsync_WithCancellationTokenAndTimeout PR 18,601.40 ns 1,528.630 ns 0.98 680 B 1.00
System.Threading.Tests.Perf_Monitor
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
EnterExit Main 8.628 ns 0.1177 ns 1.00 - NA
EnterExit PR 10.146 ns 0.0306 ns 1.18 - NA
TryEnterExit Main 8.699 ns 0.1159 ns 1.00 - NA
TryEnterExit PR 8.762 ns 0.0342 ns 1.01 - NA
System.Threading.Tests.Perf_Lock
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1  StdDev=0.012 ns
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
ReaderWriterLockSlimPerf Main 12.20 ns 0.013 ns 1.00 - NA
ReaderWriterLockSlimPerf PR 12.17 ns 0.014 ns 1.00 - NA
System.Threading.Tests.Perf_Interlocked
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
Increment_int Main 2.108 ns 0.0009 ns 1.00 - NA
Increment_int PR 2.107 ns 0.0009 ns 1.00 - NA
Decrement_int Main 2.109 ns 0.0009 ns 1.00 - NA
Decrement_int PR 2.106 ns 0.0010 ns 1.00 - NA
Increment_long Main 2.108 ns 0.0013 ns 1.00 - NA
Increment_long PR 2.107 ns 0.0006 ns 1.00 - NA
Decrement_long Main 2.108 ns 0.0012 ns 1.00 - NA
Decrement_long PR 2.108 ns 0.0012 ns 1.00 - NA
Add_int Main 2.108 ns 0.0010 ns 1.00 - NA
Add_int PR 2.108 ns 0.0008 ns 1.00 - NA
Add_long Main 2.108 ns 0.0011 ns 1.00 - NA
Add_long PR 2.107 ns 0.0011 ns 1.00 - NA
Exchange_int Main 2.185 ns 0.0006 ns 1.00 - NA
Exchange_int PR 2.185 ns 0.0006 ns 1.00 - NA
Exchange_long Main 2.185 ns 0.0007 ns 1.00 - NA
Exchange_long PR 2.186 ns 0.0008 ns 1.00 - NA
CompareExchange_int Main 2.394 ns 0.0007 ns 1.00 - NA
CompareExchange_int PR 2.394 ns 0.0006 ns 1.00 - NA
CompareExchange_long Main 2.394 ns 0.0007 ns 1.00 - NA
CompareExchange_long PR 2.395 ns 0.0011 ns 1.00 - NA
CompareExchange_object_Match Main 2.489 ns 0.0014 ns 1.00 - NA
CompareExchange_object_Match PR 2.395 ns 0.0015 ns 0.96 - NA
CompareExchange_object_NoMatch Main 2.489 ns 0.0008 ns 1.00 - NA
CompareExchange_object_NoMatch PR 2.398 ns 0.0012 ns 0.96 - NA
System.Threading.Tests.Perf_EventWaitHandle
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1  Min=19.45 ns
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
Set_Reset Main 19.48 ns 0.025 ns 1.00 - NA
Set_Reset PR 19.49 ns 0.021 ns 1.00 - NA
System.Threading.Tests.Perf_CancellationToken
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-NRQIIJ : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-NGSIDY : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  PowerPlanMode=  IterationTime=250ms
MaxIterationCount=20  MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
RegisterAndUnregister_Serial Main 24.138 ns 0.1453 ns 1.00 - NA
RegisterAndUnregister_Serial PR 23.736 ns 0.3858 ns 0.98 - NA
Cancel Main 48.256 ns 0.4052 ns 1.00 192 B 1.00
Cancel PR 48.049 ns 0.3128 ns 1.00 192 B 1.00
CreateLinkedTokenSource1 Main 27.951 ns 0.3240 ns 1.00 64 B 1.00
CreateLinkedTokenSource1 PR 28.637 ns 0.5653 ns 1.02 64 B 1.00
CreateLinkedTokenSource2 Main 46.560 ns 0.7770 ns 1.00 80 B 1.00
CreateLinkedTokenSource2 PR 44.870 ns 0.4932 ns 0.96 80 B 1.00
CreateLinkedTokenSource3 Main 73.413 ns 1.4567 ns 1.00 128 B 1.00
CreateLinkedTokenSource3 PR 72.403 ns 1.4278 ns 0.99 128 B 1.00
CreateTokenDispose Main 7.761 ns 0.0516 ns 1.00 48 B 1.00
CreateTokenDispose PR 7.763 ns 0.0186 ns 1.00 48 B 1.00
CreateRegisterDispose Main 43.158 ns 0.4251 ns 1.00 192 B 1.00
CreateRegisterDispose PR 41.951 ns 0.4338 ns 0.97 192 B 1.00
CreateManyRegisterDispose Main 13.192 ns 0.2554 ns 1.00 - NA
CreateManyRegisterDispose PR 13.135 ns 0.2028 ns 1.00 - NA
CreateManyRegisterMultipleDispose Main 91.201 ns 0.2628 ns 1.00 - NA
CreateManyRegisterMultipleDispose PR 91.477 ns 0.1414 ns 1.00 - NA
CancelAfter Main 57.793 ns 0.4665 ns 1.00 144 B 1.00
CancelAfter PR 58.719 ns 0.6143 ns 1.02 144 B 1.00
System.Threading.Tasks.Tests.Perf_AsyncMethods
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
EmptyAsyncMethodInvocation Main 5.038 ns 0.0074 ns 1.00 - NA
EmptyAsyncMethodInvocation PR 5.028 ns 0.0066 ns 1.00 - NA
SingleYieldMethodInvocation Main 143.936 ns 0.9650 ns 1.00 168 B 1.00
SingleYieldMethodInvocation PR 137.935 ns 0.6620 ns 0.96 168 B 1.00
Yield Main 76.086 ns 0.7959 ns 1.00 24 B 1.00
Yield PR 72.520 ns 0.6098 ns 0.95 24 B 1.00
System.Threading.Tasks.ValueTaskPerfTest
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-UXTJFQ : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-WCARJH : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-XVCCJK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HMQJNI : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  PowerPlanMode=  IterationTime=250ms
MaxIterationCount=20  MaxWarmupIterationCount=10  MinIterationCount=15
MinWarmupIterationCount=2  WarmupCount=-1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
Await_FromResult Main 7.622 ns 0.0291 ns 1.00 - NA
Await_FromResult PR 7.767 ns 0.0137 ns 1.02 - NA
Await_FromCompletedTask Main 13.296 ns 0.0772 ns 1.00 72 B 1.00
Await_FromCompletedTask PR 13.303 ns 0.1925 ns 1.00 72 B 1.00
Await_FromCompletedValueTaskSource Main 19.073 ns 0.2003 ns 1.00 72 B 1.00
Await_FromCompletedValueTaskSource PR 18.853 ns 0.1334 ns 0.99 72 B 1.00
CreateAndAwait_FromResult Main 7.686 ns 0.0070 ns 1.00 - NA
CreateAndAwait_FromResult PR 7.599 ns 0.0045 ns 0.99 - NA
CreateAndAwait_FromResult_ConfigureAwait Main 7.586 ns 0.0059 ns 1.00 - NA
CreateAndAwait_FromResult_ConfigureAwait PR 7.605 ns 0.0115 ns 1.00 - NA
CreateAndAwait_FromCompletedTask Main 9.341 ns 0.0358 ns 1.00 - NA
CreateAndAwait_FromCompletedTask PR 9.352 ns 0.0707 ns 1.00 - NA
CreateAndAwait_FromCompletedTask_ConfigureAwait Main 10.649 ns 0.1858 ns 1.00 - NA
CreateAndAwait_FromCompletedTask_ConfigureAwait PR 9.387 ns 0.1298 ns 0.88 - NA
CreateAndAwait_FromCompletedValueTaskSource Main 10.947 ns 0.0313 ns 1.00 - NA
CreateAndAwait_FromCompletedValueTaskSource PR 10.938 ns 0.0396 ns 1.00 - NA
CreateAndAwait_FromYieldingAsyncMethod Main 246.732 ns 1.8634 ns 1.00 392 B 1.00
CreateAndAwait_FromYieldingAsyncMethod PR 246.383 ns 3.4310 ns 1.00 392 B 1.00
CreateAndAwait_FromDelayedTCS Main 18,061.220 ns 1,681.9837 ns 1.00 519 B 1.00
CreateAndAwait_FromDelayedTCS PR 17,440.193 ns 1,339.9493 ns 0.98 518 B 1.00
Copy_PassAsArgumentAndReturn_FromResult Main 4.364 ns 0.0019 ns 1.00 - NA
Copy_PassAsArgumentAndReturn_FromResult PR 4.642 ns 0.0061 ns 1.06 - NA
Copy_PassAsArgumentAndReturn_FromTask Main 8.424 ns 0.1486 ns 1.00 - NA
Copy_PassAsArgumentAndReturn_FromTask PR 8.728 ns 0.0030 ns 1.04 - NA
Copy_PassAsArgumentAndReturn_FromValueTaskSource Main 11.727 ns 0.0076 ns 1.00 - NA
Copy_PassAsArgumentAndReturn_FromValueTaskSource PR 11.910 ns 0.2263 ns 1.02 - NA
CreateAndAwait_FromCompletedValueTaskSource_ConfigureAwait Main 10.839 ns 0.0543 ns 1.00 - NA
CreateAndAwait_FromCompletedValueTaskSource_ConfigureAwait PR 10.933 ns 0.0833 ns 1.01 - NA
System.Threading.Channels.Tests.UnboundedChannelPerfTests
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
TryWriteThenTryRead Main 21.26 ns 0.011 ns 1.00 - NA
TryWriteThenTryRead PR 21.27 ns 0.034 ns 1.00 - NA
WriteAsyncThenReadAsync Main 29.23 ns 0.076 ns 1.00 - NA
WriteAsyncThenReadAsync PR 28.29 ns 0.025 ns 0.97 - NA
ReadAsyncThenWriteAsync Main 51.77 ns 4.620 ns 1.00 - NA
ReadAsyncThenWriteAsync PR 45.70 ns 0.020 ns 0.89 - NA
PingPong Main 3,017,820.16 ns 268,337.188 ns 1.00 1079 B 1.00
PingPong PR 2,995,050.16 ns 170,307.137 ns 1.00 1081 B 1.00
System.Threading.Channels.Tests.SpscUnboundedChannelPerfTests
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
TryWriteThenTryRead Main 21.90 ns 0.085 ns 1.00 - NA
TryWriteThenTryRead PR 21.29 ns 0.056 ns 0.97 - NA
WriteAsyncThenReadAsync Main 34.87 ns 0.050 ns 1.00 - NA
WriteAsyncThenReadAsync PR 34.69 ns 0.038 ns 0.99 - NA
ReadAsyncThenWriteAsync Main 43.22 ns 0.027 ns 1.00 - NA
ReadAsyncThenWriteAsync PR 42.72 ns 0.059 ns 0.99 - NA
PingPong Main 2,880,382.89 ns 183,139.833 ns 1.00 1079 B 1.00
PingPong PR 2,926,050.04 ns 229,088.081 ns 1.02 1079 B 1.00
System.Threading.Channels.Tests.BoundedChannelPerfTests
BenchmarkDotNet v0.16.0-nightly.20260518.1249, Linux Ubuntu 24.04.4 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 8 logical and 4 physical cores
Memory: 31.34 GB Total, 1.89 GB Available
  Job-TPEJOW : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
  Job-HKHXHK : .NET 11.0.0 (11.0.0-dev, 42.42.42.42424), X64 RyuJIT x86-64-v4
EvaluateOverhead=False  OutlierMode=Default  PowerPlanMode=
IterationTime=250ms  MaxIterationCount=20  MemoryRandomization=Default
MinIterationCount=15  WarmupCount=1
Method Toolchain Mean Error Ratio Allocated Alloc Ratio
TryWriteThenTryRead Main 30.64 ns 0.055 ns 1.00 - NA
TryWriteThenTryRead PR 30.86 ns 0.015 ns 1.01 - NA
WriteAsyncThenReadAsync Main 37.06 ns 0.040 ns 1.00 - NA
WriteAsyncThenReadAsync PR 39.90 ns 0.070 ns 1.08 - NA
ReadAsyncThenWriteAsync Main 42.11 ns 0.274 ns 1.00 - NA
ReadAsyncThenWriteAsync PR 42.30 ns 0.050 ns 1.00 - NA
PingPong Main 3,260,739.75 ns 236,075.870 ns 1.00 1081 B 1.00
PingPong PR 3,259,202.12 ns 244,386.437 ns 1.01 1081 B 1.00

Artifacts:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions