-
Notifications
You must be signed in to change notification settings - Fork 3
Closed
Description
Run Information
| Architecture | arm64 |
|---|---|
| OS | ubuntu 20.04 |
| Baseline | a8ea8e67dc20689aa2e4c738a2f84ea3483ec872 |
| Compare | e6bac1e15f3ea795c84cbd009eb8b77da460c9e1 |
| Diff | Diff |
Improvements in System.Memory.Span<Byte>
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| IndexOfAnyFourValues - Duration of single invocation | 862.98 ns | 34.32 ns | 0.04 | 0.01 | False | |||||
| IndexOfAnyFiveValues - Duration of single invocation | 1.03 μs | 38.10 ns | 0.04 | 0.01 | False |
Repro
git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Memory.Span<Byte>*'Related Issues
Regressions
Improvements
Details
Payloads
Histogram
Edge Detector Info
System.Memory.Span<Byte>.IndexOfAnyFourValues(Size: 512)
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.32433696207252 < 819.5485334301787.
IsChangePoint: Marked as a change because one of 10/26/2022 7:25:48 AM, 10/27/2022 12:34:03 AM falls between 10/18/2022 9:26:37 AM and 10/27/2022 12:34:03 AM.
IsImprovementStdDev: Marked as improvement because 8027.577047050084 (T) = (0 -34.22345444703366) / Math.Sqrt((0.14110664092619232 / (299)) + (0.020354563681132313 / (2))) is greater than 1.9679296690655894 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (2) - 2, .975) and 0.9603265828665788 = (862.629360408775 - 34.22345444703366) / 862.629360408775 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```#### System.Memory.Span<Byte>.IndexOfAnyFiveValues(Size: 512)
```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 38.099132993738486 < 0.9813574906516845.
IsChangePoint: Marked as a change because one of 10/26/2022 7:25:48 AM, 10/27/2022 12:34:03 AM falls between 10/18/2022 9:26:37 AM and 10/27/2022 12:34:03 AM.
IsImprovementStdDev: Marked as improvement because 979.1147801260217 (T) = (0 -39.114038100911095) / Math.Sqrt((0.08397118191907374 / (299)) + (2.060064753130091 / (2))) is greater than 1.9679296690655894 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (2) - 2, .975) and 0.962133954359438 = (1032.9580878921336 - 39.114038100911095) / 1032.9580878921336 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
_1.png)
_2.png)