<!-- DATA: {"RunType":{"Repo":"dotnetruntime","Branch":"refs/heads/main","Arch":"x64","Os":"Ubuntu2204","Queue":"TigerUbuntu","Frequency":"Weekly","CoreClr":true,"Mono":false,"Wasm":false,"Maui":false,"Configs":["CompilationMode:tiered","RunKind:micro"]},"RegressionDate":"2024-06-23T00:52:08","IsRegression":false} --> ### Run Information Name | Value -- | -- Architecture | x64 OS | ubuntu 22.04 Queue | TigerUbuntu Baseline | [0262a63be0f560fa902b1e31e9a10760e466352d](https://github.com/dotnet/runtime/commit/0262a63be0f560fa902b1e31e9a10760e466352d) Compare | [d8f796bb1e7e9ea0fce75d39a3f740d8d25681b4](https://github.com/dotnet/runtime/commit/d8f796bb1e7e9ea0fce75d39a3f740d8d25681b4) Diff | [Diff](https://github.com/dotnet/runtime/compare/0262a63be0f560fa902b1e31e9a10760e466352d...d8f796bb1e7e9ea0fce75d39a3f740d8d25681b4) Configs | CompilationMode:tiered, RunKind:micro ### Improvements in System.Text.Json.Tests.Perf_Reader Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio -- | -- | -- | -- | -- | -- | -- | -- | -- |<ul><li>[ReadMultiSpanSequenceEmptyLoop - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_ubuntu 22.04/System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20Json400B).html>)</li><li>📝 - [Benchmark Source](<https://github.com/dotnet/performance/blob/main/src/benchmarks/micro/libraries/System.Text.Json/Utf8JsonReader/Perf.Reader.cs#L88-#L93>)</li><li>[ADX - Test Multi Config Graph](<https://dataexplorer.azure.com/clusters/dotnetperf.westus/databases/PerformanceData?query=H4sIAAAAAAAACo1U0W7aMBR9n7R/8FuSjUKgrGNImQaMbXRlYpC3aapMciGeYju9vmlJNe3bZwfECpWmvCT29TnnHls+ngM3JYIERebFb/aQAQIblyJPl1BoFkXMSzUpoA6WioQE7xQ1Rq6SrMYhbEwnA56ajuRCnQFHmGSCICHbjQnFfG931fdazOMo7SA4omMw9I1LcJofvFVlCGQ7hh21r41WdmTItBeAm9ul7QXYdr95mZNYFVyt4K4ElcBUFlTdaF34M/ORE59oWfCEhizGElp1kwk3MGROtB+G4+Cf32WpJlptxLZETkIr88NzdJHXs7lOwfvJoj/MI2Hhqffyf0xb+ipUemBIkaB+QhAGnFH/GXGkKWgAm2lzk9/L+oSb4K/NVG2FgiZYJ9wEN9dKN7TroDNFgAWC/TahLLY6ropGhhdZZUTC8wVqqV2lKfFLtUaRfs71mufisa41oS17y6YdprsC0KZH1Vf79LJPtE0WYKyLw+g0OLGlrYjLgr1nKSdwIfR7Ya9/EfYvem/icDDshsPu23Z3cHk1eNd7HYbDMHQtTCklR/EIjOP2VvKdXws6By32KmDr6qzDPhf7dbuF7yWUYHUK1L9scJ+Bl2Bs7CK0rlP/yU729dE9IN9apcugxWopJxx9QgEqzatjxR1WPXGW0a4BMrfHJONI7EFQxnxjDw9MdOS02C7ReSlVdO6p2tdNtDdhgSQoh8izjwDY56Y6TB2F+coErmaKXFDEd2CCv9ematMQBQAA>)</li></ul> | 525.07 ns | 473.34 ns | 0.90 | 0.08 | False | | | |<ul><li>[ReadReturnBytes - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_ubuntu 22.04/System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact%3a%20False%2c%20TestCase%3a%20LotsOfStrings).html>)</li><li>📝 - [Benchmark Source](<https://github.com/dotnet/performance/blob/main/src/benchmarks/micro/libraries/System.Text.Json/Utf8JsonReader/Perf.Reader.cs#L95-#L147>)</li><li>[ADX - Test Multi Config Graph](<https://dataexplorer.azure.com/clusters/dotnetperf.westus/databases/PerformanceData?query=H4sIAAAAAAAACo1U0W7TMBR9R+If/JYUui7tCkOVgljLBh0rlLRvCE1uctsYxXZ0783WTIhvx06nsnYSyktiX59z7rHl4xlIqhA0GKYXv8V9DghiXKkiS6C0Io5FkFk2wKdYGVYagkPUGKVJ8waHsKbTHGRGp1oqcwS8wDRXDCm7bkIZEQbbt8OgKwKJ2g06e/QSiL9KDV7zQ7CoiUH3lrDl3jVZ40bE1JsDrm8T1wuw538JOF0zrhkonNJHyXJidSlTHokrWRB0G9mJJBiJG8v0bb1gVGZDnX82k8pMrFmrTYWSlTX0I/AiqmhmM5tB8FPEf0TAysGz4OX/mK70RZnskaFVivYJQRHokuvwGfHCcqcFbGrpprjTzcG2wV/TpdkoA22wXrgNbmaNbWnXQ6eGAUsE921DmW/ssi5bGZ7nNalUFnO02vpKW+LneoUq+1TYlSzUQ1NrQ0sGSdsOl9sS0IXGNDf68I5PrAsU4NKWj6PDvCwdbcFSl+K9yCSDz144iAbDk2h4MnizjN6N+tGof947Gw4H/eH56ygaRZFvQZXWEtUDCImbWy23YSPoHXTFq45Y1UcdduHYrbstfK+gAqdTov3l8voMnABVBcfoXGfhk53s6hd3gHLjlM46XdFIeeH4ChWYrKj3FX9YzcRbRrcGKPwe01wii3vFuQjJHR5QvOd0xTa1RaVNfOyp3tUp3plwQFZcQBy4pwDcK1M/Tj1FhMbF3tWoLBTHcgvU+QuiwYgsBwUAAA==>)</li></ul> | 1.66 μs | 1.37 μs | 0.83 | 0.10 | False | | | |<ul><li>[ReadSingleSpanSequenceEmptyLoop - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_ubuntu 22.04/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20False%2c%20TestCase%3a%20LotsOfStrings).html>)</li><li>📝 - [Benchmark Source](<https://github.com/dotnet/performance/blob/main/src/benchmarks/micro/libraries/System.Text.Json/Utf8JsonReader/Perf.Reader.cs#L81-#L86>)</li><li>[ADX - Test Multi Config Graph](<https://dataexplorer.azure.com/clusters/dotnetperf.westus/databases/PerformanceData?query=H4sIAAAAAAAACo1UXW/TMBR9R+I/+C0pdG3alQ1VCmIrG3RsUNq+ITS5yW1j5I9w783WTIjfjp1OZR8SyktiX59z7rHl4yuQVCEYsEwvfovbAhDEaaV0PofSiTQVUe7YAvexsqwMRI9RpyhtVjQ4hDX1C5A59Y1U9gnwBLNCMWTsuwllRRxtj0ZRV0QSjR909uglEH+RBoLm+2hRE4PpLWHLvQty1o+IqTcDXF/PfS/AXvgtlN1oWJTSLuBXBTaDM1NyfelcGU/pg2Q5caaUGY/FudQE3abNRBKMxaVj+rpeMHoN6vyzPa/sxNm12lQoWTlL36MgonQzu3I5RD9E+kdErDw8j17+j+lLn5XN7xlGZegeEBRBsBs/I5447rSATR1d6hvTHHQb/AWd2Y2y0AYbhNvgrpx1Le0G6NQyYIngv20os41b1mUrw7OiJpVJPUNnXKi0JX6qV6jyj9qtpFZ3Ta0NbT6ct+1wti0BfYhsc8Mf3/mJ8wEDXLryfvQ4P0tPW7A0pXgncskQshgPk+HoIBkdDN8sk7fjQTIeHPdGx4Pjw6PB6yQZJ0loQZUxEtUdCImbayO3cSMYHHTFq45Y1U867MKxW/db+FZBBV6nRPfT5/cZeA5UaU7Ru87jBzvZ1U9uAOXGKx12uqKRCsLpOSqwua73lXBYzSRYRr8GKMIes0Iii1vFhYjJHx5Quud0xTZzujI2feqp3tUp3ZnwQFasIY38UwD+1anvp4EiYutj72tUasWp3AJ1/gJx/UexFwUAAA==>)</li></ul> | 1.41 μs | 1.20 μs | 0.85 | 0.09 | False | | | |<ul><li>[ReadReturnBytes - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_ubuntu 22.04/System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact%3a%20False%2c%20TestCase%3a%20DeepTree).html>)</li><li>📝 - [Benchmark Source](<https://github.com/dotnet/performance/blob/main/src/benchmarks/micro/libraries/System.Text.Json/Utf8JsonReader/Perf.Reader.cs#L95-#L147>)</li><li>[ADX - Test Multi Config Graph](<https://dataexplorer.azure.com/clusters/dotnetperf.westus/databases/PerformanceData?query=H4sIAAAAAAAACo1UXW/TMBR9R+I/+C0JdG0WyoYqBdF1H2wwVLK8ITS5yW1jFNvRvTdbMyF+O3Y6jX1IKC+JfXzOuceWry9BUougwTC9+i1uK0AQR62qywwaK9JUBKVlAzzB1rDSEDxlHaE0RdXzENY0qUCWNNFSmWfEORaVYijYVRPKiDDYHkyDkQgkajeIHtg5EH+TGrznp+CqIwY9zmHL4wuyxo2IabwEXF9nrhbg2P8ycL7mqGOg8JyOJcuF1Y0seCZOZU0w6m0XkmAmjgGaHAGifwmz1iysWatNi5KVNfQj8HpV97NLW0LwU6R/RMDK0cvg9f+UDvqiTHmv0KpA+0igCHTDXfhCOLccDaCdW/pa3+j+TIfwL+jEbJSBIVxvPIR3aY0dGNdTzw0DNgjuO0Sy3Ni8awYFXlYdqULWS7TaemSo8HO3QlWe1XYla3XXY0NkWZINrXCybQBdv5j+Mj+93gvregkwt8396Gmr5E52xVI34qMoJYNvuzCJk+lePN1L3ufxh9l+PNs/HB8kSXKYTN/G8SyOfQlqtZao7kBI3FxruQ17Q59gJN5EYtU9q7Dri92628L3FlpwPg3aX65VX5AzoLbmFF3qMny0kx0+vwGUG+f0LhqJ3sobp6eowJR194D4w+onPjK6NUDh91hUElncKq5ESO7wgNIHzUhsC1u32qTPM3U7nNJdCEdkxTWkgXsFwD0w3f3US0RoKPIYNbXiVG6Bor/ttNWjAgUAAA==>)</li></ul> | 8.08 μs | 6.60 μs | 0.82 | 0.02 | False | | | |<ul><li>[ReadSingleSpanSequenceEmptyLoop - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_ubuntu 22.04/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20DeepTree).html>)</li><li>📝 - [Benchmark Source](<https://github.com/dotnet/performance/blob/main/src/benchmarks/micro/libraries/System.Text.Json/Utf8JsonReader/Perf.Reader.cs#L81-#L86>)</li><li>[ADX - Test Multi Config Graph](<https://dataexplorer.azure.com/clusters/dotnetperf.westus/databases/PerformanceData?query=H4sIAAAAAAAACo1UXW/TMBR9R+I/+C0JdG1aCpsqBdF1AzpWVNq8ITS5yW1jFH9wfbM1E+K3Y6dVWTsJ5SWxj88599jy9Qy4rRAkKLIvfrOHAhDYZSXKfAFGsyRhQa5JAfWwUiQkBMesS+QqKxoewtr2CuC57Uku1AlxjFkhCDJy1ZhQLAy274ZBhwUcpRtEB3YKlr5yCd7zQ7CsLYHsprCl7o3Vyo0s2e4ccH23cLUAu/63FGpTwtJwtYRfFagMrqWh+lZrE07tFSc+0dLwjEYsxQo6TZUJtzBiVwAmRYDoX+BFpSZarcWmQk5CK/s98HJRNrOZziH4wZI/LCDh6Hnw8n9KB30RKt8rpMhQPxEICz5o+Ew41hS1oE21vS3vZXPEbfg39lpthII2XG/chjfTSreM66lTRYAGwX3bSOYbndamVeB5UVuR8XKOWmqPtBV+rlco8k+lXvFSPDZYG9lisGhb4XprAF37qOZuH9/2iXatBZhqsx8dd07qZEvi0rD3LOcEvgvDQTwYnsXDs8HbNL4Y9eNR/7x7fjHs94eD13E8imNfwlZSchSPwDhu7iTfho2hT9BhryK2qk8q7Ppit+628K2CCpyPQf3Tde4z8gJsVVKCLnUePtnJDh/fA/KNc3oTdVhj5Y2TjyhA5WV9QPxhNRMfGd0aIPN7zAqOxB4EFSy07vDAJgdNh20zXVZSJaeZ6h1uk10IRyRBJSSBewTAvTf1fuolLFQ28pg1paCEb8FGfwFqzdmzEQUAAA==>)</li></ul> | 2.19 μs | 2.01 μs | 0.92 | 0.01 | False | | | |<ul><li>[ReadMultiSpanSequenceEmptyLoop - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_ubuntu 22.04/System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact%3a%20False%2c%20TestCase%3a%20LotsOfStrings).html>)</li><li>📝 - [Benchmark Source](<https://github.com/dotnet/performance/blob/main/src/benchmarks/micro/libraries/System.Text.Json/Utf8JsonReader/Perf.Reader.cs#L88-#L93>)</li><li>[ADX - Test Multi Config Graph](<https://dataexplorer.azure.com/clusters/dotnetperf.westus/databases/PerformanceData?query=H4sIAAAAAAAACo1U0W7TMBR9R+If/JYUui7rSoFKQWxlg44WSts3hCY3uW2MYjvce7M1E+LbsdOqrJ2E8pLY1+ece2z5eAKSSgQNhunZb3GfAYK4LFWezqCwIo5FkFo2wKdYGlYagkPUJUqTZDUOYUWnGciUTrVU5gh4gUmmGBJ23YQyIgw2/V7QFoFE7QatPXoBxF+kBq/5PphXxKA7C9hw54ascSNi6kwBV7cz1wuw43+TMmc1L6SZw68STAJXuuBqbG0RjuiDZDm0upAJD8S1zAnadZehJBiIsWX6upozKrOm1j/Xs9IMrVmpdYmSlTX0PfAiKq9nE5tC8EPEf0TAysHT4Pn/mK70WZl0x9AqQfuIoAi83fAJ8cJyqwFsZGmc3+n6nJvgb+jKrJWBJlgv3AQ3scY2tOuhI8OABYL7NqFM13ZRFY0MT7OKVCLzKVptfaUp8VO1RJV+zO1S5uqhrjWhzbqzph2uNgWgy5CpL/jhlR9aly/AhS12o8P4LBxtzlIX4p1IJYOPYtiNur2TqHfSfbWI3gzOosHZ687b81633+u/jKJBFPkWVGotUT2AkLi+1XIT1oLeQVu8aIllddRhG47tutvCtxJKcDoF2p8uvk/AMyAXvhid6zR8tJNt/eIOUK6d0nmrLWopLxxfowKT5tW+4g+rnnjL6NYAhd9jkklkca84EyG5wwOK95y22CQ2L7WJjz1V2zrFWxMOyIpziAP3FIB7dKrd1FNEaFzsXY2KXHEsN0Ctv378y/MWBQAA>)</li></ul> | 1.46 μs | 1.38 μs | 0.94 | 0.14 | False | | |       [Test Report](<https://pvscmdupload.z22.web.core.windows.net/autofilereport/autofilereports/06_25_2024/refs/heads/main_x64_ubuntu%2022.04_Improvement/System.Text.Json.Tests.Perf_Reader.html>) ### Repro General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_Reader*' ``` <details> ### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json400B) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: DeepTree) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: DeepTree) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md) </details>
Run Information
Improvements in System.Text.Json.Tests.Perf_Reader
Test Report
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Details
System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json400B)
ETL Files
Histogram
JIT Disasms
System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: LotsOfStrings)
ETL Files
Histogram
JIT Disasms
System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: LotsOfStrings)
ETL Files
Histogram
JIT Disasms
System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: DeepTree)
ETL Files
Histogram
JIT Disasms
System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: DeepTree)
ETL Files
Histogram
JIT Disasms
System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: LotsOfStrings)
ETL Files
Histogram
JIT Disasms
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository