- Notifications
You must be signed in to change notification settings - Fork4
Closed
Description
Run Information
| Name | Value |
|---|---|
| Architecture | arm64 |
| OS | Windows 10.0.19041 |
| Queue | SurfaceWindows |
| Baseline | c6cc201665cb3c4d61851392bd8f8d8093688500 |
| Compare | 5d88ff404de77d78e07ad3de7fa2af270332da22 |
| Diff | Diff |
| Configs | CompilationMode:tiered, RunKind:micro |
Improvements in System.Linq.Tests.Perf_Enumerable
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| SingleWithPredicate_FirstElementMatches - Duration of single invocation | 867.02 ns | 806.79 ns | 0.93 | 0.08 | False |
Repro
General Docs link:https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Payloads
git clone https://github.com/dotnet/performance.gitpy .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Linq.Tests.Perf_Enumerable*'
Payloads
Histogram
System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_FirstElementMatches(input: IEnumerable)
Description of detection logic
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.IsImprovementWindowed: Marked as improvement because 806.7942160550695 < 817.4232270636106.IsChangePoint: Marked as a change because one of 3/25/2023 3:46:49 AM, 3/30/2023 4:24:24 AM falls between 3/21/2023 2:53:21 PM and 3/30/2023 4:24:24 AM.IsImprovementStdDev: Marked as improvement because 14.784147424499686 (T) = (0 -794.2446975792925) / Math.Sqrt((424.1680827366323 / (299)) + (369.95184071489354 / (16))) is greater than 1.9675720194858106 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (16) - 2, .975) and 0.08442633752801115 = (867.4831202930018 - 794.2446975792925) / 867.4831202930018 is greater than 0.05.IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
| Name | Value |
|---|---|
| Architecture | arm64 |
| OS | Windows 10.0.19041 |
| Queue | SurfaceWindows |
| Baseline | c6cc201665cb3c4d61851392bd8f8d8093688500 |
| Compare | 5d88ff404de77d78e07ad3de7fa2af270332da22 |
| Diff | Diff |
| Configs | CompilationMode:tiered, RunKind:micro |
Improvements in Microsoft.Extensions.Primitives.StringSegmentBenchmark
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| SubString - Duration of single invocation | 10.19 ns | 7.87 ns | 0.77 | 0.35 | False |
Repro
General Docs link:https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Payloads
git clone https://github.com/dotnet/performance.gitpy .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Primitives.StringSegmentBenchmark*'
Payloads
Histogram
Microsoft.Extensions.Primitives.StringSegmentBenchmark.SubString
Description of detection logic
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.IsImprovementWindowed: Marked as improvement because 7.870030516714338 < 9.72453803947602.IsChangePoint: Marked as a change because one of 1/21/2023 9:40:41 PM, 3/25/2023 3:46:49 AM, 3/30/2023 4:24:24 AM falls between 3/21/2023 2:53:21 PM and 3/30/2023 4:24:24 AM.IsImprovementStdDev: Marked as improvement because 25.731386188922492 (T) = (0 -7.194751769784882) / Math.Sqrt((0.2418274259857481 / (299)) + (0.1943215977784564 / (16))) is greater than 1.9675720194858106 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (16) - 2, .975) and 0.28929304364612834 = (10.123373220794123 - 7.194751769784882) / 10.123373220794123 is greater than 0.05.IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

