-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
.NET 7.0 Preview 3 Microbenchmarks Performance Study Report #67976
Comments
Tagging subscribers to this area: @dotnet/area-meta Issue DetailsDataThis time we have covered following configs:
Most of the benchmarks were run on bare-metal machines, some were executed via WSL. This would not be possible without the help from: @AndyAyersMS @carlossanlop @danmoseley @dakersnar @janvorli @jeffhandley @kunalspathak and @sblom who contributed their results and time. The full report generated by the tool is available here. The full report contains also improvements, so if you read it from the end you can see the biggest perf improvements. There are plenty of them! Again, the full historical data turned out to be extremely useful. For details about methodology please read #41871. Preview2 report can be found here. RegressionsBy design
Investigation in progress
Already solved
Noise, flaky or multimodalThe following benchmarks showed up in the report generated by the tool, but were not actual regressions:
Statistics
Total: 105070 Statistics per Architecture
Statistics per Operating System
Statistics per Namespace
Big thanks to everyone involved!
|
Data
This time we have covered following configs:
Most of the benchmarks were run on bare-metal machines, some were executed via WSL.
This would not be possible without the help from: @AndyAyersMS @carlossanlop @danmoseley @dakersnar @janvorli @jeffhandley @kunalspathak and @sblom who contributed their results and time.
The full report generated by the tool is available here. The full report contains also improvements, so if you read it from the end you can see the biggest perf improvements. There are plenty of them!
Again, the full historical data turned out to be extremely useful. For details about methodology please read #41871. Preview2 report can be found here.
Stress bugs
Regressions
By design
System.Diagnostics.Perf_Process.GetProcessById
System.Text.Json.Serialization.Tests.ReadJson<ArrayList>*
Investigation in progress
BenchmarksGame.RegexRedux_1.RunBench
,System.Text.RegularExpressions.Tests.Perf_Regex_Industry_Leipzig.Count(Pattern: ".{0,2}(Tom|Sawyer|Huckleberry|Finn)", Options: Compiled)
BenchmarksGame.BinaryTrees*
,ByteMark.BenchBitOps
,System.Tests.Perf_GC<Byte>.NewOperator_Array(length: 1000)
System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity(length: 100000)
System.IO.Tests.Perf_RandomAccess.ReadScatterAsync
and other async file IO benchmarks have regressed on WindowsSystem.Tests.Perf_Enum.EnumToString(value: Yellow)
System.Tests.Perf_DateTime.GetNow
PerfLabTests.LowLevelPerf.StaticDelegate
LinqBenchmarks.Where00ForX
PerfLabTests.StackWalk.Walk
System.Threading.Tests.Perf_Timer.ScheduleManyThenDisposeMany
System.Tests.Perf_Int32.Parse
,System.Tests.Perf_Int16.TryParse
,System.Tests.Perf_SByte.TryParse
Already solved
System.Tests.Perf_GC<Char>.AllocateUninitializedArray(length: 10000, pinned: True)
CrossLoaderAllocatorHash
to not use the GC #67160 (comment)System.Buffers.Tests.ReadOnlySequenceTests<Byte>.IterateGetPositionTenSegments
System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get_EnumerateHeaders_Validated*
,System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get*
Noise, flaky or multimodal
The following benchmarks showed up in the report generated by the tool, but were not actual regressions:
System.Collections.Concurrent.Count<String>.Dictionary(Size: 512)
System.Numerics.Tests.Perf_VectorOf<*>.*
System.Collections.TryAddDefaultSize<String>.ConcurrentDictionary(Count: 512)
PerfLabTests.CastingPerf.CheckArrayIsInterfaceNo
Statistics
Total: 105070
Same: 74.24 %
Slower: 4.64 %
Faster: 10.13 %
Noise: 10.95 %
Unknown: 0.04 %
Statistics per Architecture
Statistics per Operating System
Statistics per Namespace
Big thanks to everyone involved!
The text was updated successfully, but these errors were encountered: