-
Notifications
You must be signed in to change notification settings - Fork 4
Closed
Description
Run Information
Architecture | arm64 |
---|---|
OS | Windows 10.0.19041 |
Baseline | 174c23e300fc87ee163cf62bb37c7e3a415139af |
Compare | 2c110b6229e928c3f38062e9d8bc875804efc539 |
Diff | Diff |
Improvements in System.IO.Tests.StreamReaderReadLineTests
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
---|---|---|---|---|---|---|---|---|---|---|
ReadLineAsync - Duration of single invocation | 39.42 μs | 34.16 μs | 0.87 | 0.01 | False | |||||
ReadLineAsync - Duration of single invocation | 39.70 μs | 34.38 μs | 0.87 | 0.01 | False | |||||
ReadLineAsync - Duration of single invocation | 48.11 μs | 42.92 μs | 0.89 | 0.07 | False |
Repro
git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.IO.Tests.StreamReaderReadLineTests*'
Payloads
Histogram
System.IO.Tests.StreamReaderReadLineTests.ReadLineAsync(LineLengthRange: [ 0, 1024])
Description of detection logic
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 34.156796477850406 < 37.508457086399254.
IsChangePoint: Marked as a change because one of 4/16/2022 8:46:33 PM, 6/7/2022 11:31:29 PM, 6/9/2022 4:58:43 AM falls between 5/31/2022 10:47:41 AM and 6/9/2022 4:58:43 AM.
IsImprovementStdDev: Marked as improvement because 24.851475593639737 (T) = (0 -34239.93381103113) / Math.Sqrt((5161837.465897629 / (299)) + (6105.6079675498 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.09159365670536812 = (37692.31034522375 - 34239.93381103113) / 37692.31034522375 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```#### System.IO.Tests.StreamReaderReadLineTests.ReadLineAsync(LineLengthRange: [ 129, 1024])
```log
Description of detection logic
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 34.37585971615721 < 37.84972998952701.
IsChangePoint: Marked as a change because one of 4/16/2022 8:46:33 PM, 6/7/2022 11:31:29 PM, 6/9/2022 4:58:43 AM falls between 5/31/2022 10:47:41 AM and 6/9/2022 4:58:43 AM.
IsImprovementStdDev: Marked as improvement because 23.638634412887082 (T) = (0 -34431.52522602547) / Math.Sqrt((5734302.622495811 / (299)) + (4318.9411782896095 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.08973396373074717 = (37825.78263289258 - 34431.52522602547) / 37825.78263289258 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```#### System.IO.Tests.StreamReaderReadLineTests.ReadLineAsync(LineLengthRange: [ 33, 128])
```log
Description of detection logic
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 42.917095890410955 < 45.58336168019933.
IsChangePoint: Marked as a change because one of 2/23/2022 8:21:20 AM, 4/16/2022 8:46:33 PM, 5/24/2022 3:42:52 PM, 6/7/2022 11:31:29 PM, 6/9/2022 4:58:43 AM falls between 5/31/2022 10:47:41 AM and 6/9/2022 4:58:43 AM.
IsImprovementStdDev: Marked as improvement because 56.6644112476918 (T) = (0 -42944.80389844951) / Math.Sqrt((1276632.650655247 / (299)) + (16200.64472023528 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.11484915325982709 = (48516.93251676403 - 42944.80389844951) / 48516.93251676403 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