-
Notifications
You must be signed in to change notification settings - Fork 4
Closed
Description
Run Information
Name | Value |
---|---|
Architecture | x64 |
OS | ubuntu 18.04 |
Queue | TigerUbuntu |
Baseline | cb5fe56312c40244524f2bd5d89006279e52d1da |
Compare | f924d6b5f69792f33a507b47a1fc870a185ad638 |
Diff | Diff |
Configs | CompilationMode:tiered, RunKind:micro |
Improvements in System.Buffers.Binary.Tests.BinaryReadAndWriteTests
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
---|---|---|---|---|---|---|---|---|---|---|
ReadStructAndReverseLE - Duration of single invocation | 4.90 ns | 0.55 ns | 0.11 | 0.50 | 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
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Buffers.Binary.Tests.BinaryReadAndWriteTests*'
Payloads
Histogram
System.Buffers.Binary.Tests.BinaryReadAndWriteTests.ReadStructAndReverseLE
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 0.5498380373555566 < 4.7190242888064615.
IsChangePoint: Marked as a change because one of 3/17/2023 10:06:19 AM, 5/4/2023 10:11:14 AM, 5/8/2023 3:52:55 PM falls between 4/29/2023 8:32:21 PM and 5/8/2023 3:52:55 PM.
IsImprovementStdDev: Marked as improvement because 33.185030530172675 (T) = (0 -0.6230342228981975) / Math.Sqrt((2.9532490868845924 / (299)) + (0.014934387756007571 / (13))) is greater than 1.9676459287777595 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (13) - 2, .975) and 0.8483216851084645 = (4.107602483214072 - 0.6230342228981975) / 4.107602483214072 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 | x64 |
OS | ubuntu 18.04 |
Queue | TigerUbuntu |
Baseline | cb5fe56312c40244524f2bd5d89006279e52d1da |
Compare | f924d6b5f69792f33a507b47a1fc870a185ad638 |
Diff | Diff |
Configs | CompilationMode:tiered, RunKind:micro |
Improvements in System.Collections.ContainsKeyTrue<String, String>
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
---|---|---|---|---|---|---|---|---|---|---|
ConcurrentDictionary - Duration of single invocation | 9.24 μs | 8.46 μs | 0.92 | 0.04 | 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
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsKeyTrue<String, String>*'
Payloads
Histogram
System.Collections.ContainsKeyTrue<String, String>.ConcurrentDictionary(Size: 512)
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 8.462546024487033 < 8.772875492107945.
IsChangePoint: Marked as a change because one of 2/20/2023 10:31:48 AM, 4/25/2023 9:59:52 PM, 5/4/2023 10:11:14 AM, 5/8/2023 3:52:55 PM falls between 4/29/2023 8:32:21 PM and 5/8/2023 3:52:55 PM.
IsImprovementStdDev: Marked as improvement because 28.941069704936762 (T) = (0 -8519.077755054705) / Math.Sqrt((39774.219111417726 / (299)) + (13566.694431408041 / (13))) is greater than 1.9676459287777595 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (13) - 2, .975) and 0.10436834808452584 = (9511.809611501647 - 8519.077755054705) / 9511.809611501647 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