-
Notifications
You must be signed in to change notification settings - Fork 4
Closed
Labels
PGOApplied if there were any profile guided optimization updates in the observed interval.Applied if there were any profile guided optimization updates in the observed interval.amperearch-arm64branch-refs/heads/mainkind-microos-windowsperf-improvementruntime-coreclruntriaged
Description
Run Information
Name | Value |
---|---|
Architecture | arm64 |
OS | Windows 10.0.25094 |
Queue | AmpereWindows |
Baseline | 3eb4407e441b539c81c6ea8cc797f97536abd01f |
Compare | 2855dd2d29c64df89498fbcb984653f596c1b976 |
Diff | Diff |
Configs | CompilationMode:tiered, RunKind:micro |
Improvements in System.Threading.Tasks.ValueTaskPerfTest
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
---|---|---|---|---|---|---|---|---|---|---|
CreateAndAwait_FromCompletedValueTaskSource_ConfigureAwait - Duration of single invocation | 39.37 ns | 32.52 ns | 0.83 | 0.68 | 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.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Threading.Tasks.ValueTaskPerfTest*'
Payloads
Histogram
System.Threading.Tasks.ValueTaskPerfTest.CreateAndAwait_FromCompletedValueTaskSource_ConfigureAwait
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 5/18/2023 11:09:10 AM, 6/1/2023 4:59:33 PM, 6/7/2023 7:43:49 PM falls between 5/29/2023 11:58:32 PM and 6/7/2023 7:43:49 PM.
IsImprovementStdDev: Marked as improvement because 17.975321222443775 (T) = (0 -30.221134191128076) / Math.Sqrt((17.5141124711646 / (299)) + (4.592192864528767 / (11))) is greater than 1.9676960046166507 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (11) - 2, .975) and 0.2909735799213317 = (42.62342465006447 - 30.221134191128076) / 42.62342465006447 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
Name | Value |
---|---|
Architecture | arm64 |
OS | Windows 10.0.25094 |
Queue | AmpereWindows |
Baseline | 3eb4407e441b539c81c6ea8cc797f97536abd01f |
Compare | 2855dd2d29c64df89498fbcb984653f596c1b976 |
Diff | Diff |
Configs | CompilationMode:tiered, RunKind:micro |
Improvements in System.Threading.Tests.Perf_ThreadPool
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
---|---|---|---|---|---|---|---|---|---|---|
QueueUserWorkItem_WaitCallback_Throughput - Duration of single invocation | 3.40 secs | 3.21 secs | 0.94 | 0.02 | 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.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Threading.Tests.Perf_ThreadPool*'
Payloads
Histogram
System.Threading.Tests.Perf_ThreadPool.QueueUserWorkItem_WaitCallback_Throughput(WorkItemsPerCore: 20000000)
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 4/11/2023 2:19:19 PM, 6/1/2023 4:59:33 PM, 6/7/2023 7:43:49 PM falls between 5/29/2023 11:58:32 PM and 6/7/2023 7:43:49 PM.
IsImprovementStdDev: Marked as improvement because 17.698392209531963 (T) = (0 -3140788212.9502163) / Math.Sqrt((3498417860875228 / (299)) + (2212993875449540.8 / (11))) is greater than 1.9676960046166507 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (11) - 2, .975) and 0.07597132986620476 = (3399015976.956044 - 3140788212.9502163) / 3399015976.956044 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Metadata
Metadata
Assignees
Labels
PGOApplied if there were any profile guided optimization updates in the observed interval.Applied if there were any profile guided optimization updates in the observed interval.amperearch-arm64branch-refs/heads/mainkind-microos-windowsperf-improvementruntime-coreclruntriaged