DrewScoggins / performance-2

This repo contains benchmarks used for testing the performance of all .NET Runtimes
MIT License
0 stars 0 forks source link

[Perf] Changes at 1/8/2021 11:55:18 AM #3757

Open performanceautofiler[bot] opened 3 years ago

performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[DeserializeFromUtf8Bytes](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Serialization.Tests.ReadJson(IndexViewModel).DeserializeFromUtf8Bytes.html>) 1.16 ms 832.01 μs 0.72
[DeserializeFromStream](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Serialization.Tests.ReadJson(IndexViewModel).DeserializeFromStream.html>) 1.24 ms 903.32 μs 0.73
[DeserializeFromString](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Serialization.Tests.ReadJson(IndexViewModel).DeserializeFromString.html>) 1.32 ms 962.14 μs 0.73

graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;IndexViewModel&gt;*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromUtf8Bytes ```log [ 809989.761 ; 849161.500) | @@@@@@@@@@@@@@@@@ [ 849161.500 ; 888211.794) | @ [ 888211.794 ; 912559.617) | [ 912559.617 ; 936907.440) | [ 936907.440 ; 961255.263) | [ 961255.263 ; 985603.086) | [ 985603.086 ; 1009950.909) | [1009950.909 ; 1034298.732) | [1034298.732 ; 1058646.555) | [1058646.555 ; 1082994.378) | [1082994.378 ; 1107342.201) | [1107342.201 ; 1137443.837) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1137443.837 ; 1161791.660) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1161791.660 ; 1204899.493) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromStream ```log [ 896201.568 ; 921596.207) | @@@@@@@@@@@@@@@ [ 921596.207 ; 945889.162) | @@ [ 945889.162 ; 971283.802) | [ 971283.802 ; 996678.441) | [ 996678.441 ; 1022073.081) | [1022073.081 ; 1047467.720) | [1047467.720 ; 1072862.359) | [1072862.359 ; 1098256.999) | [1098256.999 ; 1123651.638) | [1123651.638 ; 1149046.278) | [1149046.278 ; 1174440.917) | [1174440.917 ; 1199835.556) | [1199835.556 ; 1231458.659) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1231458.659 ; 1256853.299) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1256853.299 ; 1304855.191) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromString ```log [ 950319.862 ; 977086.585) | @@@@@@@@@@@@@@@@ [ 977086.585 ; 996844.028) | @@ [ 996844.028 ; 1023610.752) | [1023610.752 ; 1050377.475) | [1050377.475 ; 1077144.198) | [1077144.198 ; 1103910.922) | [1103910.922 ; 1130677.645) | [1130677.645 ; 1157444.369) | [1157444.369 ; 1184211.092) | [1184211.092 ; 1210977.815) | [1210977.815 ; 1237744.539) | [1237744.539 ; 1264511.262) | [1264511.262 ; 1299042.928) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1299042.928 ; 1349882.867) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Hashing Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetStringHashCode]() | 33.96 μs | 23.06 μs | 0.68 | | | [GetStringHashCode]() | 415.11 ns | 297.38 ns | 0.72 | | | [GetStringHashCode]() | 100.31 ns | 85.00 ns | 0.85 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Hashing*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Hashing.GetStringHashCode(BytesCount: 10000) ```log [22583.906 ; 23528.533) | @@@@@@@@@@@@@@@@ [23528.533 ; 24360.816) | @ [24360.816 ; 24867.698) | [24867.698 ; 25812.325) | @ [25812.325 ; 26756.952) | [26756.952 ; 27701.578) | [27701.578 ; 28646.205) | [28646.205 ; 29590.832) | [29590.832 ; 30535.458) | [30535.458 ; 31480.085) | [31480.085 ; 32424.712) | [32424.712 ; 33369.338) | [33369.338 ; 34690.566) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [34690.566 ; 35635.193) | [35635.193 ; 36579.820) | [36579.820 ; 38038.816) | [38038.816 ; 38983.443) | @ [38983.443 ; 39928.070) | [39928.070 ; 40872.697) | [40872.697 ; 41817.323) | [41817.323 ; 42761.950) | [42761.950 ; 43706.577) | [43706.577 ; 44651.203) | [44651.203 ; 45988.555) | [45988.555 ; 47071.409) | @@ ``` #### System.Hashing.GetStringHashCode(BytesCount: 100) ```log [294.220 ; 302.803) | @@@@@@@@@@@@@@@ [302.803 ; 313.559) | @@@ [313.559 ; 322.143) | [322.143 ; 330.727) | [330.727 ; 339.311) | [339.311 ; 347.894) | [347.894 ; 356.478) | [356.478 ; 365.062) | [365.062 ; 373.646) | [373.646 ; 382.230) | [382.230 ; 390.813) | [390.813 ; 402.523) | @@@@ [402.523 ; 411.106) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [411.106 ; 419.779) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [419.779 ; 435.863) | @@@@ [435.863 ; 447.365) | @@ [447.365 ; 464.370) | @ [464.370 ; 481.538) | [481.538 ; 498.705) | [498.705 ; 512.217) | @ ``` #### System.Hashing.GetStringHashCode(BytesCount: 10) ```log [ 81.294 ; 83.152) | @@@ [ 83.152 ; 85.619) | @@@@@@@@@@ [ 85.619 ; 89.056) | @@@@@ [ 89.056 ; 91.682) | [ 91.682 ; 94.861) | @@@@@@@@@@ [ 94.861 ; 98.618) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 98.618 ; 100.788) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [100.788 ; 102.849) | @@@@@@@@@@@@@@ [102.849 ; 105.256) | @@@@@@@@@@@ [105.256 ; 109.566) | @@@@@@@@@@@@@@@@ [109.566 ; 112.980) | @@@ [112.980 ; 116.395) | [116.395 ; 119.810) | [119.810 ; 122.842) | [122.842 ; 127.031) | @ [127.031 ; 131.029) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Document.Tests.Perf_DocumentParse Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Parse]() | 45.95 μs | 37.64 μs | 0.82 | | | [Parse]() | 85.08 μs | 68.77 μs | 0.81 | | | [Parse]() | 39.48 μs | 31.87 μs | 0.81 | | | [Parse]() | 91.92 μs | 75.43 μs | 0.82 | | | [Parse]() | 46.01 μs | 38.34 μs | 0.83 | | | [Parse]() | 19.55 μs | 15.32 μs | 0.78 | | | [Parse]() | 142.68 μs | 114.88 μs | 0.81 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Document.Tests.Perf_DocumentParse*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: False, TestRandomAccess: False, TestCase: Json400B) ```log [36323.684 ; 37605.372) | @@@@@@@@@@@@ [37605.372 ; 39079.909) | @@@@@@ [39079.909 ; 40342.022) | [40342.022 ; 41604.136) | [41604.136 ; 42866.249) | [42866.249 ; 43815.849) | [43815.849 ; 45426.333) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [45426.333 ; 47005.254) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: False, TestRandomAccess: True, TestCase: BasicJson) ```log [66973.843 ; 69333.467) | @@@@@@@@@@@@@@@@@@ [69333.467 ; 71919.682) | [71919.682 ; 74505.896) | [74505.896 ; 77092.111) | [77092.111 ; 79678.325) | [79678.325 ; 82502.397) | [82502.397 ; 87029.125) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: False, TestRandomAccess: False, TestCase: BasicJson) ```log [30910.731 ; 32166.141) | @@@@@@@@@@@@@@ [32166.141 ; 32916.486) | @@@ [32916.486 ; 34046.847) | [34046.847 ; 35177.209) | [35177.209 ; 36307.570) | [36307.570 ; 37437.931) | [37437.931 ; 38361.452) | @@@@@@@@@@@@@@@@@@ [38361.452 ; 40261.879) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: True, TestRandomAccess: True, TestCase: BasicJson) ```log [73408.865 ; 76200.904) | @@@@@@@@@@@@@@@@@@ [76200.904 ; 78841.384) | [78841.384 ; 81481.864) | [81481.864 ; 84122.344) | [84122.344 ; 86762.824) | [86762.824 ; 88851.183) | [88851.183 ; 93243.096) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: True, TestRandomAccess: False, TestCase: BasicJson) ```log [37198.969 ; 38655.461) | @@@@@@@@@@@@@@@@@@ [38655.461 ; 39825.886) | [39825.886 ; 40996.310) | [40996.310 ; 42166.735) | [42166.735 ; 43337.159) | [43337.159 ; 44831.783) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [44831.783 ; 46992.377) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: True, TestRandomAccess: True, TestCase: HelloWorld) ```log [14870.121 ; 15429.088) | @@@@@@@@@@@@@@@@ [15429.088 ; 15946.909) | @ [15946.909 ; 16259.509) | [16259.509 ; 16572.109) | [16572.109 ; 16884.710) | [16884.710 ; 17197.310) | [17197.310 ; 17509.911) | [17509.911 ; 17822.511) | [17822.511 ; 18135.111) | [18135.111 ; 18447.712) | [18447.712 ; 18760.312) | [18760.312 ; 19209.137) | @@@@@@@@@@@ [19209.137 ; 19931.249) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: True, TestRandomAccess: True, TestCase: Json400B) ```log [111644.063 ; 115411.307) | @@@@@@@@@@@@@@ [115411.307 ; 119504.275) | @@@@ [119504.275 ; 123834.304) | [123834.304 ; 128164.333) | [128164.333 ; 132494.362) | [132494.362 ; 136824.392) | [136824.392 ; 140208.294) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [140208.294 ; 146790.871) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Tests.Perf_StringBuilder Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Insert_Strings]() | 11.03 μs | 9.33 μs | 0.85 | | | [Append_ValueTypes]() | 163.92 μs | 124.84 μs | 0.76 | | | [Append_Char_Capacity]() | 2.88 ms | 2.17 ms | 0.75 | | | [ToString_MultipleSegments]() | 689.15 ns | 571.77 ns | 0.83 | | | [ToString_SingleSegment]() | 370.45 ns | 293.77 ns | 0.79 | | | [AppendLine_Strings]() | 3.82 μs | 3.21 μs | 0.84 | | | [Append_Strings]() | 3.25 μs | 2.69 μs | 0.83 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Tests.Perf_StringBuilder*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Tests.Perf_StringBuilder.Insert_Strings ```log [ 8118.698 ; 8364.886) | @@@@@@@@@@@@@@@@@@@@@ [ 8364.886 ; 8551.884) | @@@ [ 8551.884 ; 8845.326) | [ 8845.326 ; 9091.514) | @@@@@@@@@@@@@ [ 9091.514 ; 9356.597) | @@@@@ [ 9356.597 ; 9602.785) | [ 9602.785 ; 9848.973) | [ 9848.973 ; 10095.161) | [10095.161 ; 10345.979) | [10345.979 ; 10774.559) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [10774.559 ; 11019.416) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11019.416 ; 11278.891) | @@@@@ ``` #### System.Text.Tests.Perf_StringBuilder.Append_ValueTypes ```log [123485.877 ; 126364.144) | @@@@@@@@@@@@@@@@ [126364.144 ; 131100.776) | @@ [131100.776 ; 133979.043) | [133979.043 ; 136857.309) | [136857.309 ; 139735.576) | [139735.576 ; 142613.843) | [142613.843 ; 145492.110) | [145492.110 ; 148370.377) | [148370.377 ; 151248.643) | [151248.643 ; 154126.910) | [154126.910 ; 157005.177) | [157005.177 ; 160498.157) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [160498.157 ; 166500.719) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity(length: 100000) ```log [2126587.116 ; 2185051.477) | @@@@@@@@@@@@@ [2185051.477 ; 2246987.490) | @@@@ [2246987.490 ; 2305451.851) | @ [2305451.851 ; 2363916.212) | [2363916.212 ; 2422380.574) | [2422380.574 ; 2480844.935) | [2480844.935 ; 2539309.296) | [2539309.296 ; 2597773.657) | [2597773.657 ; 2656238.018) | [2656238.018 ; 2714702.379) | [2714702.379 ; 2796164.538) | @@@ [2796164.538 ; 2854628.899) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2854628.899 ; 2913845.897) | @@@@@@@@@@@@@@@@@@@ [2913845.897 ; 2977239.146) | @@@@@@@@@@@ [2977239.146 ; 3075969.853) | @@ [3075969.853 ; 3196575.019) | @@ [3196575.019 ; 3313503.741) | [3313503.741 ; 3430432.463) | [3430432.463 ; 3547361.185) | [3547361.185 ; 3664289.907) | [3664289.907 ; 3781218.630) | [3781218.630 ; 3898147.352) | [3898147.352 ; 4015076.074) | [4015076.074 ; 4188578.715) | @ ``` #### System.Text.Tests.Perf_StringBuilder.ToString_MultipleSegments(length: 100) ```log [561.512 ; 576.721) | @@@@@@@@ [576.721 ; 595.311) | @@@@@@@@@ [595.311 ; 615.991) | @ [615.991 ; 636.002) | [636.002 ; 656.012) | [656.012 ; 674.577) | [674.577 ; 697.759) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [697.759 ; 722.281) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [722.281 ; 748.278) | @@@@@@@ ``` #### System.Text.Tests.Perf_StringBuilder.ToString_SingleSegment(length: 100) ```log [286.041 ; 296.366) | @@@@@@@@@@@@ [296.366 ; 302.489) | @@@ [302.489 ; 311.932) | @ [311.932 ; 322.831) | @@ [322.831 ; 333.367) | [333.367 ; 346.075) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [346.075 ; 357.956) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [357.956 ; 372.288) | @@@@@@@@@@@@@@@@ ``` #### System.Text.Tests.Perf_StringBuilder.AppendLine_Strings ```log [3103.403 ; 3227.487) | @@@@@@@@@@@@@ [3227.487 ; 3305.550) | @@@@@ [3305.550 ; 3409.171) | [3409.171 ; 3487.192) | @@@ [3487.192 ; 3576.040) | @@@@@@@@@@@@@@@@@@ [3576.040 ; 3688.469) | @@@ [3688.469 ; 3815.707) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3815.707 ; 3951.693) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Tests.Perf_StringBuilder.Append_Strings(repeat: 1) ```log [2642.423 ; 2732.359) | @@@@@@@@@@@@@@@ [2732.359 ; 2823.593) | @@@ [2823.593 ; 2891.490) | [2891.490 ; 3002.811) | @@@@@@@@@@@@@@@@@@@ [3002.811 ; 3107.400) | @@@@@ [3107.400 ; 3229.452) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3229.452 ; 3400.999) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Memory.Slice<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ReadOnlyMemoryStart]() | 42.91 ns | 37.60 ns | 0.88 | | | [ReadOnlyMemoryStartSpan]() | 107.22 ns | 79.88 ns | 0.74 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Memory.Slice<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.Slice.ReadOnlyMemoryStart ```log [36.691 ; 38.222) | @@@@@@@@@@@@@@@ [38.222 ; 39.297) | @@@ [39.297 ; 40.341) | [40.341 ; 41.514) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [41.514 ; 43.006) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [43.006 ; 44.380) | @@@@@@@@@@@@@@@@@@@@@@@@@ [44.380 ; 45.934) | @@@@@@@ [45.934 ; 46.979) | [46.979 ; 48.446) | @@@ [48.446 ; 49.491) | [49.491 ; 50.535) | [50.535 ; 51.580) | [51.580 ; 52.624) | [52.624 ; 54.747) | @ ``` #### System.Memory.Slice.ReadOnlyMemoryStartSpan ```log [ 76.827 ; 78.598) | @@@@@@@@@@ [ 78.598 ; 81.594) | @@@@@@ [ 81.594 ; 83.526) | @ [ 83.526 ; 86.693) | [ 86.693 ; 89.639) | @ [ 89.639 ; 92.796) | [ 92.796 ; 95.842) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 95.842 ; 99.213) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 99.213 ; 102.704) | @@@@@@@@@@ [102.704 ; 105.222) | @@@@@@@@ [105.222 ; 109.311) | @@@@@@@@ [109.311 ; 111.532) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Span.IndexerBench Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SameIndex1]() | 18.01 μs | 14.23 μs | 0.79 | | | [WriteViaIndexer2]() | 18.08 μs | 13.05 μs | 0.72 | | | [CoveredIndex1]() | 20.47 μs | 17.38 μs | 0.85 | | | [Fixed2]() | 10.85 μs | 8.39 μs | 0.77 | | | [Indexer1]() | 11.13 μs | 8.91 μs | 0.80 | | | [Fixed1]() | 10.81 μs | 8.36 μs | 0.77 | | | [Indexer4]() | 110.53 μs | 88.14 μs | 0.80 | | | [ReadOnlyIndexer1]() | 11.15 μs | 8.90 μs | 0.80 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Span.IndexerBench*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Span.IndexerBench.SameIndex1(length: 1024) ```log [14091.962 ; 14398.989) | @@@@@@ [14398.989 ; 14949.596) | @@@@@@@@@@ [14949.596 ; 15469.033) | [15469.033 ; 15988.470) | [15988.470 ; 16381.328) | [16381.328 ; 16971.982) | @@ [16971.982 ; 17491.420) | [17491.420 ; 17838.379) | [17838.379 ; 18458.469) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18458.469 ; 18917.134) | [18917.134 ; 19519.341) | @@@ ``` #### Span.IndexerBench.WriteViaIndexer2(length: 1024) ```log [12850.983 ; 13210.311) | @@@@@@@@@@@@@@@@@@ [13210.311 ; 13569.639) | [13569.639 ; 13928.967) | [13928.967 ; 14288.294) | [14288.294 ; 14647.622) | [14647.622 ; 15006.950) | [15006.950 ; 15366.278) | [15366.278 ; 15725.606) | [15725.606 ; 16084.933) | [16084.933 ; 16444.261) | [16444.261 ; 16803.589) | [16803.589 ; 17124.984) | [17124.984 ; 17484.312) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17484.312 ; 17919.406) | @ [17919.406 ; 18696.069) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### Span.IndexerBench.CoveredIndex1(length: 1024) ```log [17215.521 ; 17833.791) | @@@@@@@@@@@@@@@@@ [17833.791 ; 18322.969) | [18322.969 ; 18812.147) | [18812.147 ; 19301.325) | [19301.325 ; 19790.503) | [19790.503 ; 20339.035) | [20339.035 ; 21126.356) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [21126.356 ; 21911.787) | @@@@@@@@ [21911.787 ; 22400.965) | [22400.965 ; 23247.086) | @ ``` #### Span.IndexerBench.Fixed2(length: 1024) ```log [ 8297.137 ; 8496.186) | @@@@@@@@@@@@@@@@@@ [ 8496.186 ; 8695.235) | [ 8695.235 ; 8894.284) | [ 8894.284 ; 9093.333) | [ 9093.333 ; 9292.382) | [ 9292.382 ; 9491.431) | [ 9491.431 ; 9690.480) | [ 9690.480 ; 9889.529) | [ 9889.529 ; 10088.578) | [10088.578 ; 10287.627) | [10287.627 ; 10486.676) | [10486.676 ; 10729.366) | [10729.366 ; 11135.843) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11135.843 ; 11533.941) | [11533.941 ; 11849.020) | @ [11849.020 ; 12113.151) | @ [12113.151 ; 12448.750) | @ ``` #### Span.IndexerBench.Indexer1(length: 1024) ```log [ 8821.481 ; 9177.086) | @@@@@@@@@@@@@@@@@@ [ 9177.086 ; 9531.872) | [ 9531.872 ; 9886.659) | [ 9886.659 ; 10241.446) | [10241.446 ; 10596.232) | [10596.232 ; 10963.888) | [10963.888 ; 11355.264) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11355.264 ; 11676.428) | [11676.428 ; 12371.644) | @@@@ ``` #### Span.IndexerBench.Fixed1(length: 1024) ```log [ 8299.210 ; 8504.754) | @@@@@@@@@@@@@@@@@ [ 8504.754 ; 8710.299) | [ 8710.299 ; 8915.844) | [ 8915.844 ; 9121.389) | [ 9121.389 ; 9326.933) | [ 9326.933 ; 9532.478) | [ 9532.478 ; 9738.023) | [ 9738.023 ; 10021.241) | [10021.241 ; 10226.786) | @ [10226.786 ; 10432.331) | [10432.331 ; 10756.839) | [10756.839 ; 11119.929) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11119.929 ; 11531.019) | [11531.019 ; 11817.372) | @@ [11817.372 ; 12154.899) | @@@@ [12154.899 ; 12496.996) | @ [12496.996 ; 13119.452) | @ ``` #### Span.IndexerBench.Indexer4(length: 1024) ```log [ 87604.124 ; 91104.446) | @@@@@@@@@@@@@@@@@@ [ 91104.446 ; 94565.528) | [ 94565.528 ; 98026.611) | [ 98026.611 ; 101487.693) | [101487.693 ; 104948.775) | [104948.775 ; 108409.858) | [108409.858 ; 112771.695) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### Span.IndexerBench.ReadOnlyIndexer1(length: 1024) ```log [ 8800.688 ; 8987.292) | @@@@@@@@@@@@@@@@@@ [ 8987.292 ; 9173.895) | [ 9173.895 ; 9360.498) | [ 9360.498 ; 9547.101) | [ 9547.101 ; 9733.704) | [ 9733.704 ; 9920.307) | [ 9920.307 ; 10106.910) | [10106.910 ; 10293.513) | [10293.513 ; 10480.116) | [10480.116 ; 10666.719) | [10666.719 ; 10955.807) | [10955.807 ; 11296.447) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11296.447 ; 11676.276) | [11676.276 ; 12373.086) | @@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Tests.Perf_Double

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[Parse](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Double.Parse(value%3a%20%221.7976931348623157e%2b308%22).html>) 17.16 μs 13.06 μs 0.76
[ToStringWithFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Double.ToStringWithFormat(value%3a%201.7976931348623157E%2b308%2c%20format%3a%20%22G%22).html>) 8.78 μs 5.94 μs 0.68
[ToStringWithFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Double.ToStringWithFormat(value%3a%201.7976931348623157E%2b308%2c%20format%3a%20%22G17%22).html>) 6.63 μs 4.42 μs 0.67
[ToStringWithFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Double.ToStringWithFormat(value%3a%2012345%2c%20format%3a%20%22F50%22).html>) 12.07 μs 8.57 μs 0.71
[ToStringWithFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Double.ToStringWithFormat(value%3a%2012345%2c%20format%3a%20%22G17%22).html>) 9.08 μs 6.29 μs 0.69
[ToString](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Double.ToString(value%3a%20-1.7976931348623157E%2b308).html>) 8.61 μs 5.84 μs 0.68

graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Double*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Double.Parse(value: "1.7976931348623157e+308") ```log [12842.403 ; 13134.791) | @@@@@@@@@@@@@@@ [13134.791 ; 13431.562) | @ [13431.562 ; 13723.950) | [13723.950 ; 14202.163) | @ [14202.163 ; 14494.550) | [14494.550 ; 14786.937) | [14786.937 ; 15079.324) | [15079.324 ; 15371.711) | [15371.711 ; 15664.098) | [15664.098 ; 15956.485) | [15956.485 ; 16248.872) | [16248.872 ; 16697.018) | @@@@@@@@@@@@@@@@ [16697.018 ; 17350.972) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17350.972 ; 17950.390) | @@@@@@@@@@ ``` #### System.Tests.Perf_Double.ToStringWithFormat(value: 1.7976931348623157E+308, format: "G") ```log [5691.896 ; 5822.971) | @ [5822.971 ; 6039.613) | @@@@@@@@@@@@@@@ [6039.613 ; 6190.245) | @@ [6190.245 ; 6406.887) | [6406.887 ; 6623.528) | [6623.528 ; 6840.170) | [6840.170 ; 7056.812) | [7056.812 ; 7273.454) | [7273.454 ; 7490.096) | [7490.096 ; 7706.737) | [7706.737 ; 7923.379) | [7923.379 ; 8140.021) | [8140.021 ; 8393.528) | @@@@@@@@@@@@@ [8393.528 ; 8610.170) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8610.170 ; 9007.303) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Double.ToStringWithFormat(value: 1.7976931348623157E+308, format: "G17") ```log [4207.321 ; 4309.705) | @ [4309.705 ; 4469.973) | @@@@@@@@@@@@@@@ [4469.973 ; 4640.796) | @ [4640.796 ; 4801.064) | [4801.064 ; 4961.333) | [4961.333 ; 5121.601) | [5121.601 ; 5281.869) | [5281.869 ; 5442.138) | [5442.138 ; 5602.406) | [5602.406 ; 5762.675) | [5762.675 ; 5922.943) | [5922.943 ; 6083.211) | [6083.211 ; 6280.979) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [6280.979 ; 6441.247) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6441.247 ; 6647.300) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6647.300 ; 6822.346) | @@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Double.ToStringWithFormat(value: 12345, format: "F50") ```log [ 8317.031 ; 8520.378) | @ [ 8520.378 ; 8775.133) | @@@@@@@@@@@@@@@@@ [ 8775.133 ; 9029.888) | [ 9029.888 ; 9284.643) | [ 9284.643 ; 9539.398) | [ 9539.398 ; 9794.153) | [ 9794.153 ; 10048.908) | [10048.908 ; 10303.663) | [10303.663 ; 10558.417) | [10558.417 ; 10813.172) | [10813.172 ; 11067.927) | [11067.927 ; 11322.682) | [11322.682 ; 11600.992) | [11600.992 ; 12040.494) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12040.494 ; 12299.715) | @@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Double.ToStringWithFormat(value: 12345, format: "G17") ```log [6215.603 ; 6434.098) | @@@@@@@@@@@@@@@ [6434.098 ; 6671.952) | @@@ [6671.952 ; 6890.447) | [6890.447 ; 7108.943) | [7108.943 ; 7327.438) | [7327.438 ; 7545.933) | [7545.933 ; 7764.428) | [7764.428 ; 7982.924) | [7982.924 ; 8201.419) | [8201.419 ; 8419.914) | [8419.914 ; 8638.410) | [8638.410 ; 8954.055) | @@@@@@@@@@@@@@@@@ [8954.055 ; 9172.550) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9172.550 ; 9363.430) | @@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Double.ToString(value: -1.7976931348623157E+308) ```log [5690.042 ; 5904.897) | @@@@@@@@@@@@@@@ [5904.897 ; 6071.289) | @@@ [6071.289 ; 6286.144) | [6286.144 ; 6500.999) | [6500.999 ; 6715.854) | [6715.854 ; 6930.708) | [6930.708 ; 7145.563) | [7145.563 ; 7360.418) | [7360.418 ; 7575.273) | [7575.273 ; 7790.128) | [7790.128 ; 8004.983) | [8004.983 ; 8319.455) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8319.455 ; 8534.310) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8534.310 ; 8878.984) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.ComponentModel.Tests.Perf_TypeDescriptorTests Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetConverter]() | 4.09 μs | 3.63 μs | 0.89 | | | [GetConverter]() | 1.72 μs | 1.50 μs | 0.87 | | | [GetConverter]() | 2.08 μs | 1.87 μs | 0.90 | | | [GetConverter]() | 3.19 μs | 2.76 μs | 0.86 | | | [GetConverter]() | 2.11 μs | 1.91 μs | 0.91 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.ComponentModel.Tests.Perf_TypeDescriptorTests*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.ComponentModel.Tests.SomeEnum)) ```log [3507.750 ; 3625.116) | @@@@ [3625.116 ; 3702.035) | @@@@@@@@@ [3702.035 ; 3779.810) | @@@@@ [3779.810 ; 3891.698) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3891.698 ; 4033.301) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4033.301 ; 4198.562) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.ComponentModel.Tests.IDerived)) ```log [1466.455 ; 1512.955) | @@@@@@@ [1512.955 ; 1551.304) | @@@@@@ [1551.304 ; 1583.775) | @@@ [1583.775 ; 1627.094) | @@ [1627.094 ; 1677.262) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1677.262 ; 1736.593) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1736.593 ; 1815.494) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.ComponentModel.Tests.ClassIDerived)) ```log [1871.019 ; 1935.378) | @@@@@@@@@@@@@@@@ [1935.378 ; 1974.264) | [1974.264 ; 2025.971) | @@@@@@@@ [2025.971 ; 2097.438) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2097.438 ; 2168.262) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2168.262 ; 2221.625) | @@@@@@ [2221.625 ; 2317.999) | @ ``` #### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.Enum)) ```log [2744.826 ; 2838.660) | @@@@@@@@@@@@ [2838.660 ; 2919.225) | @@@@@@@@@@ [2919.225 ; 3021.520) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3021.520 ; 3124.079) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3124.079 ; 3215.802) | @@@@@@@@@@@@ [3215.802 ; 3333.859) | @@@@ ``` #### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(string)) ```log [1849.856 ; 1925.103) | @@@@@@@@@@@@@@@ [1925.103 ; 1970.307) | @@ [1970.307 ; 2043.596) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2043.596 ; 2119.408) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2119.408 ; 2168.313) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2168.313 ; 2232.217) | @@@@@@@@@@@@@@ [2232.217 ; 2297.944) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.IterateForEach<Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ConcurrentBag]() | 30.08 μs | 26.67 μs | 0.89 | | | [ImmutableDictionary]() | 322.07 μs | 279.38 μs | 0.87 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.IterateForEach<Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.IterateForEach.ConcurrentBag(Size: 512) ```log [25854.878 ; 26882.496) | @@@@@@@@@@@@@@@ [26882.496 ; 27738.099) | @@ [27738.099 ; 28416.623) | [28416.623 ; 29095.147) | [29095.147 ; 29934.951) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [29934.951 ; 30888.856) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [30888.856 ; 31760.830) | @@@@@@@@@@@@ [31760.830 ; 32492.178) | @ [32492.178 ; 33170.702) | [33170.702 ; 34447.641) | @@@ ``` #### System.Collections.IterateForEach.ImmutableDictionary(Size: 512) ```log [268665.661 ; 276954.334) | @@@@ [276954.334 ; 284633.812) | @@@@@@@@ [284633.812 ; 292394.594) | @@@ [292394.594 ; 301811.249) | @@ [301811.249 ; 312309.696) | @@@@@@@@@@@@@@@@@@@@@@ [312309.696 ; 323648.753) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [323648.753 ; 339107.183) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Memory.Span<Byte> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetPinnableReference]() | 21.94 ns | 19.82 ns | 0.90 | | | [IndexOfValue]() | 2.34 μs | 1.50 μs | 0.64 | | | [StartsWith]() | 552.49 ns | 374.45 ns | 0.68 | | | [IndexOfAnyThreeValues]() | 3.86 μs | 1.98 μs | 0.51 | | | [BinarySearch]() | 372.29 ns | 311.54 ns | 0.84 | | | [IndexOfAnyTwoValues]() | 3.26 μs | 1.73 μs | 0.53 | | | [SequenceCompareTo]() | 1.23 μs | 683.16 ns | 0.56 | | | [LastIndexOfAnyValues]() | 3.20 μs | 1.75 μs | 0.55 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Memory.Span<Byte>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.Span.GetPinnableReference(Size: 512) ```log [19.528 ; 20.019) | @@@@@@ [20.019 ; 20.660) | @@@@@@@@@@@ [20.660 ; 21.078) | [21.078 ; 21.744) | [21.744 ; 22.531) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.531 ; 23.237) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.237 ; 24.078) | @@@@ [24.078 ; 24.784) | @@@@ ``` #### System.Memory.Span.IndexOfValue(Size: 512) ```log [1429.239 ; 1480.864) | @@@@@@@@@@ [1480.864 ; 1532.640) | @@@@@@ [1532.640 ; 1587.392) | @ [1587.392 ; 1639.018) | [1639.018 ; 1690.643) | [1690.643 ; 1748.867) | [1748.867 ; 1800.492) | @ [1800.492 ; 1852.118) | [1852.118 ; 1903.743) | [1903.743 ; 1955.368) | [1955.368 ; 2047.196) | @@@@@ [2047.196 ; 2098.821) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2098.821 ; 2157.422) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2157.422 ; 2209.047) | @@@ [2209.047 ; 2283.663) | @@ [2283.663 ; 2346.121) | @@@@@@@@@ ``` #### System.Memory.Span.StartsWith(Size: 512) ```log [370.829 ; 386.328) | @@@@@@@@@@@@@ [386.328 ; 399.778) | @@@ [399.778 ; 411.251) | [411.251 ; 426.750) | @@ [426.750 ; 442.249) | [442.249 ; 457.748) | [457.748 ; 473.247) | [473.247 ; 488.746) | [488.746 ; 504.245) | [504.245 ; 519.744) | [519.744 ; 535.678) | [535.678 ; 560.812) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [560.812 ; 577.846) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [577.846 ; 593.345) | @@@@@@@ [593.345 ; 607.414) | @@ [607.414 ; 622.913) | [622.913 ; 638.412) | [638.412 ; 653.911) | [653.911 ; 669.410) | [669.410 ; 684.909) | [684.909 ; 700.408) | [700.408 ; 715.907) | [715.907 ; 731.473) | [731.473 ; 746.972) | @@ [746.972 ; 792.643) | @ ``` #### System.Memory.Span.IndexOfAnyThreeValues(Size: 512) ```log [1842.644 ; 1928.223) | @ [1928.223 ; 2077.668) | @@@@@@@@@@@@@@@@@ [2077.668 ; 2227.114) | [2227.114 ; 2376.559) | [2376.559 ; 2526.004) | [2526.004 ; 2675.449) | [2675.449 ; 2824.894) | [2824.894 ; 2974.340) | [2974.340 ; 3123.785) | [3123.785 ; 3273.230) | [3273.230 ; 3422.675) | [3422.675 ; 3554.587) | [3554.587 ; 3704.033) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3704.033 ; 3812.635) | @@@ [3812.635 ; 3990.026) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3990.026 ; 4139.472) | @@@@ [4139.472 ; 4225.429) | [4225.429 ; 4386.499) | @@@ ``` #### System.Memory.Span.BinarySearch(Size: 512) ```log [307.668 ; 319.570) | @@@@@@@@@@@@@@@@@ [319.570 ; 329.315) | @ [329.315 ; 341.058) | [341.058 ; 352.801) | [352.801 ; 362.440) | @@@@@ [362.440 ; 376.461) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [376.461 ; 390.573) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [390.573 ; 405.992) | @@@ [405.992 ; 414.673) | [414.673 ; 428.921) | @@ [428.921 ; 440.664) | [440.664 ; 452.406) | [452.406 ; 464.149) | [464.149 ; 481.258) | @@ ``` #### System.Memory.Span.IndexOfAnyTwoValues(Size: 512) ```log [1680.453 ; 1795.516) | @@@@@@@@@@@@@@@@@ [1795.516 ; 1896.724) | @ [1896.724 ; 2011.787) | [2011.787 ; 2126.850) | [2126.850 ; 2241.913) | [2241.913 ; 2356.976) | [2356.976 ; 2472.039) | [2472.039 ; 2587.102) | [2587.102 ; 2702.165) | [2702.165 ; 2817.228) | [2817.228 ; 2932.291) | [2932.291 ; 2998.470) | [2998.470 ; 3113.533) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3113.533 ; 3234.719) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3234.719 ; 3359.060) | @@@@@ [3359.060 ; 3502.963) | @ [3502.963 ; 3581.224) | [3581.224 ; 3696.287) | @@ ``` #### System.Memory.Span.SequenceCompareTo(Size: 512) ```log [ 677.620 ; 709.599) | @@@@@@@@@@@@@@@@@ [ 709.599 ; 741.578) | [ 741.578 ; 773.558) | [ 773.558 ; 805.537) | [ 805.537 ; 837.516) | [ 837.516 ; 869.495) | [ 869.495 ; 901.475) | [ 901.475 ; 933.454) | [ 933.454 ; 965.433) | [ 965.433 ; 997.412) | [ 997.412 ; 1029.392) | [1029.392 ; 1046.848) | [1046.848 ; 1078.827) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1078.827 ; 1113.757) | @@@@ [1113.757 ; 1149.923) | @@ [1149.923 ; 1181.902) | [1181.902 ; 1213.881) | [1213.881 ; 1245.861) | [1245.861 ; 1277.840) | [1277.840 ; 1309.819) | [1309.819 ; 1341.798) | [1341.798 ; 1373.777) | [1373.777 ; 1405.757) | [1405.757 ; 1437.736) | [1437.736 ; 1469.715) | [1469.715 ; 1513.058) | @ [1513.058 ; 1547.618) | [1547.618 ; 1579.597) | @ ``` #### System.Memory.Span.LastIndexOfAnyValues(Size: 512) ```log [1675.134 ; 1791.370) | @@@@@@@@@@@@@@@@@ [1791.370 ; 1896.165) | @ [1896.165 ; 2012.401) | [2012.401 ; 2128.637) | [2128.637 ; 2244.872) | [2244.872 ; 2361.108) | [2361.108 ; 2477.344) | [2477.344 ; 2593.580) | [2593.580 ; 2709.815) | [2709.815 ; 2826.051) | [2826.051 ; 2955.609) | [2955.609 ; 3071.845) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3071.845 ; 3239.931) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3239.931 ; 3355.667) | @@@@@@@@@ [3355.667 ; 3517.958) | @@@ [3517.958 ; 3634.193) | @ [3634.193 ; 3750.429) | [3750.429 ; 3933.790) | [3933.790 ; 4050.026) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Exceptions.Handling Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ThrowAndCatch_ManyCatchBlocks]() | 16.31 μs | 14.91 μs | 0.91 | | | [ThrowAndCatch]() | 15.60 μs | 14.13 μs | 0.91 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Exceptions.Handling*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Exceptions.Handling.ThrowAndCatch_ManyCatchBlocks(kind: ReflectionHardware) ```log [14639.876 ; 15019.609) | @@@@@@@@@ [15019.609 ; 15429.383) | @@@@@@@@ [15429.383 ; 15736.337) | [15736.337 ; 16126.780) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [16126.780 ; 16677.962) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [16677.962 ; 17086.746) | @@@@@@@@@ ``` #### Exceptions.Handling.ThrowAndCatch(kind: ReflectionHardware) ```log [13685.782 ; 14134.544) | @@@@@@@@@@@@@@@@@ [14134.544 ; 14473.628) | @ [14473.628 ; 14983.004) | @@@ [14983.004 ; 15508.676) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [15508.676 ; 16155.614) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Collections.ContainsTrueComparer<String>

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[HashSet](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.ContainsTrueComparer(String).HashSet(Size%3a%20512).html>) 227.95 μs 181.96 μs 0.80

graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.ContainsTrueComparer&lt;String&gt;*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.ContainsTrueComparer.HashSet(Size: 512) ```log [174584.691 ; 178500.363) | @@@@@@@ [178500.363 ; 185357.407) | @@@@@@@@@@@ [185357.407 ; 192445.289) | [192445.289 ; 199533.170) | [199533.170 ; 206621.051) | [206621.051 ; 214369.011) | [214369.011 ; 222547.014) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [222547.014 ; 227250.804) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [227250.804 ; 232708.059) | @@@@@@@@@@@@@@@@@@@@ [232708.059 ; 246249.976) | @@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Xml_FromStream<Location> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [XmlSerializer_]() | 159.16 μs | 129.83 μs | 0.82 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Xml_FromStream<Location>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Xml_FromStream.XmlSerializer_ ```log [124748.914 ; 133269.341) | @@@@@@@@@@@@@@@@@ [133269.341 ; 141789.769) | [141789.769 ; 150310.196) | [150310.196 ; 153743.067) | [153743.067 ; 162263.494) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [162263.494 ; 170783.922) | [170783.922 ; 179304.349) | [179304.349 ; 187824.777) | [187824.777 ; 196345.204) | [196345.204 ; 204823.923) | [204823.923 ; 213344.351) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [213344.351 ; 219965.001) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.MulMatrix Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 5.60 secs | 4.19 secs | 0.75 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.MulMatrix*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.MulMatrix.Test ```log [4137468975.957 ; 4240283564.957) | @@@@@@@@@@@@@ [4240283564.957 ; 4330384167.231) | @@@@ [4330384167.231 ; 4426664585.167) | @ [4426664585.167 ; 4529479174.166) | [4529479174.166 ; 4632293763.166) | [4632293763.166 ; 4735108352.166) | [4735108352.166 ; 4837922941.166) | [4837922941.166 ; 4940737530.165) | [4940737530.165 ; 5043552119.165) | [5043552119.165 ; 5146366708.165) | [5146366708.165 ; 5249181297.165) | [5249181297.165 ; 5351995886.164) | [5351995886.164 ; 5567737982.468) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5567737982.468 ; 5764689403.292) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5764689403.292 ; 6043590724.557) | @@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Globalization.Tests.StringSearch

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[IndexOf_Word_NotFound](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options%3a%20(%2c%20None%2c%20False)).html>) 14.25 μs 10.34 μs 0.73
[IsPrefix_FirstHalf](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options%3a%20(en-US%2c%20Ordinal%2c%20False)).html>) 538.42 ns 379.92 ns 0.71
[IsPrefix_FirstHalf](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options%3a%20(%2c%20None%2c%20False)).html>) 4.92 μs 3.69 μs 0.75
[IsSuffix_SecondHalf](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options%3a%20(%2c%20IgnoreCase%2c%20False)).html>) 5.41 μs 3.73 μs 0.69
[IsSuffix_DifferentLastChar](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options%3a%20(en-US%2c%20None%2c%20False)).html>) 264.23 ns 234.12 ns 0.89
[LastIndexOf_Word_NotFound](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options%3a%20(en-US%2c%20IgnoreCase%2c%20True)).html>) 27.91 μs 26.13 μs 0.94
[LastIndexOf_Word_NotFound](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options%3a%20(en-US%2c%20IgnoreCase%2c%20False)).html>) 16.93 μs 13.99 μs 0.83

graph graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Globalization.Tests.StringSearch*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (, None, False)) ```log [ 9759.763 ; 10159.545) | @@@@@@@@@@@@@@@ [10159.545 ; 10438.629) | @ [10438.629 ; 10766.959) | @ [10766.959 ; 11054.142) | [11054.142 ; 11341.325) | [11341.325 ; 11753.170) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11753.170 ; 12065.797) | @@@@@@@@@@@@@@@@@ [12065.797 ; 12479.009) | @@@@@@@@ [12479.009 ; 12874.702) | @@ [12874.702 ; 13151.631) | [13151.631 ; 13560.912) | @ [13560.912 ; 14062.887) | @ ``` #### System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (en-US, Ordinal, False)) ```log [379.151 ; 391.242) | @@@@@@@@@@ [391.242 ; 405.576) | @@@@@@@ [405.576 ; 417.667) | [417.667 ; 429.758) | [429.758 ; 441.849) | [441.849 ; 453.939) | [453.939 ; 466.030) | [466.030 ; 478.121) | [478.121 ; 490.212) | [490.212 ; 502.303) | [502.303 ; 514.393) | [514.393 ; 533.546) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [533.546 ; 545.637) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [545.637 ; 557.769) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [557.769 ; 581.095) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [581.095 ; 594.044) | @ [594.044 ; 606.491) | @ [606.491 ; 621.871) | @ ``` #### System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (, None, False)) ```log [3577.693 ; 3728.964) | @@@@@@@@@@@@@@@ [3728.964 ; 3814.949) | [3814.949 ; 3907.701) | @@ [3907.701 ; 4003.699) | [4003.699 ; 4096.451) | @ [4096.451 ; 4189.203) | [4189.203 ; 4281.955) | [4281.955 ; 4374.707) | [4374.707 ; 4467.458) | [4467.458 ; 4560.210) | [4560.210 ; 4652.962) | [4652.962 ; 4745.714) | [4745.714 ; 4860.921) | @ [4860.921 ; 5054.203) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5054.203 ; 5236.650) | @@ [5236.650 ; 5369.341) | @@ [5369.341 ; 5586.117) | @ ``` #### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (, IgnoreCase, False)) ```log [3591.688 ; 3678.467) | @@ [3678.467 ; 3824.954) | @@@@@@@@@@@@@@ [3824.954 ; 3919.689) | @@ [3919.689 ; 4014.423) | [4014.423 ; 4109.158) | [4109.158 ; 4203.892) | [4203.892 ; 4298.626) | [4298.626 ; 4393.361) | [4393.361 ; 4488.095) | [4488.095 ; 4582.830) | [4582.830 ; 4677.564) | [4677.564 ; 4772.298) | [4772.298 ; 4876.446) | @ [4876.446 ; 5064.189) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5064.189 ; 5212.202) | @@@ [5212.202 ; 5383.559) | [5383.559 ; 5559.572) | @@@ ``` #### System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (en-US, None, False)) ```log [212.127 ; 216.668) | @@ [216.668 ; 223.654) | @@@@@@@@ [223.654 ; 229.900) | @@@@@ [229.900 ; 235.651) | @@@ [235.651 ; 240.578) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [240.578 ; 249.703) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [249.703 ; 255.828) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [255.828 ; 266.104) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [266.104 ; 271.727) | @@@@@@@@@ [271.727 ; 277.812) | @@ [277.812 ; 284.951) | [284.951 ; 294.243) | @ ``` #### System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (en-US, IgnoreCase, True)) ```log [26009.050 ; 27065.139) | @@@@@@@@@@@@@@@@ [27065.139 ; 28042.532) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [28042.532 ; 29120.944) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [29120.944 ; 30212.010) | @@@@@@@ [30212.010 ; 31706.407) | @@@@ ``` #### System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (en-US, IgnoreCase, False)) ```log [13756.100 ; 14099.955) | @@@@@@@@@@@@@@ [14099.955 ; 14446.743) | @@ [14446.743 ; 14890.772) | @ [14890.772 ; 15188.472) | [15188.472 ; 15783.429) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [15783.429 ; 16379.765) | @@@@@@@@@@@@@@@@@@ [16379.765 ; 17048.738) | @@@@@ [17048.738 ; 17563.879) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Numerics.Tests.Perf_VectorConvert Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Narrow_double]() | 372.93 μs | 298.88 μs | 0.80 | | | [Narrow_short]() | 989.22 μs | 824.03 μs | 0.83 | | | [Convert_int_float]() | 309.08 μs | 249.46 μs | 0.81 | | | [Widen_float]() | 511.60 μs | 417.56 μs | 0.82 | | | [Narrow_long]() | 353.57 μs | 298.64 μs | 0.84 | | | [Widen_sbyte]() | 1.15 ms | 982.53 μs | 0.85 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Numerics.Tests.Perf_VectorConvert*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Perf_VectorConvert.Narrow_double ```log [293548.993 ; 303373.248) | @@@@@@@@@@@@@ [303373.248 ; 311698.434) | @@ [311698.434 ; 322777.208) | @@@ [322777.208 ; 334463.166) | [334463.166 ; 346467.370) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [346467.370 ; 360035.452) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [360035.452 ; 372700.671) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [372700.671 ; 384651.857) | @@@@@@@@@ [384651.857 ; 398931.793) | @ ``` #### System.Numerics.Tests.Perf_VectorConvert.Narrow_short ```log [ 802040.615 ; 820579.292) | @@@@@@@ [ 820579.292 ; 851710.049) | @@@@@@@@@@@ [ 851710.049 ; 871986.033) | [ 871986.033 ; 892577.004) | [ 892577.004 ; 926688.648) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 926688.648 ; 955846.262) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 955846.262 ; 978896.241) | @@@@@@@@@ [ 978896.241 ; 1002587.664) | @@@@@ [1002587.664 ; 1056001.217) | @@ ``` #### System.Numerics.Tests.Perf_VectorConvert.Convert_int_float ```log [248083.990 ; 257484.679) | @@@@@@@@@@@@@@@ [257484.679 ; 265859.811) | @@@ [265859.811 ; 274776.210) | [274776.210 ; 283692.609) | [283692.609 ; 291167.734) | [291167.734 ; 300379.650) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [300379.650 ; 311033.937) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [311033.937 ; 321213.818) | @@@@@@@@@@@@@@@@@@@@ [321213.818 ; 332650.723) | @@ [332650.723 ; 348454.308) | @@ ``` #### System.Numerics.Tests.Perf_VectorConvert.Widen_float ```log [399698.341 ; 415356.641) | @@@@@@@ [415356.641 ; 432509.427) | @@@@@@@@@@@ [432509.427 ; 447839.502) | [447839.502 ; 463169.577) | [463169.577 ; 478499.652) | [478499.652 ; 491571.576) | @@@@@ [491571.576 ; 509945.986) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [509945.986 ; 528849.585) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [528849.585 ; 545611.441) | @@@@@@@@ ``` #### System.Numerics.Tests.Perf_VectorConvert.Narrow_long ```log [290323.421 ; 297201.388) | @@@@@ [297201.388 ; 308156.287) | @@@@@@@@@@ [308156.287 ; 319795.393) | @@@ [319795.393 ; 329254.631) | [329254.631 ; 340063.707) | [340063.707 ; 351061.888) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [351061.888 ; 363989.261) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [363989.261 ; 372445.830) | @@@@@@@@@@@@@@@@@@@@@@@ [372445.830 ; 385022.589) | @@@@@@@ ``` #### System.Numerics.Tests.Perf_VectorConvert.Widen_sbyte ```log [ 928971.822 ; 961258.264) | @@@@@@@@ [ 961258.264 ; 992356.697) | @@@@@@@@@@ [ 992356.697 ; 1018863.753) | [1018863.753 ; 1045370.810) | [1045370.810 ; 1077309.150) | @ [1077309.150 ; 1114979.184) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1114979.184 ; 1150671.195) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1150671.195 ; 1195407.254) | @@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.IndexerSetReverse<Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Span]() | 6.40 μs | 3.97 μs | 0.62 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.IndexerSetReverse<Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.IndexerSetReverse.Span(Size: 512) ```log [3911.920 ; 4097.961) | @@@@@@@@@@@@@@@@@ [4097.961 ; 4284.002) | [4284.002 ; 4470.042) | [4470.042 ; 4656.083) | [4656.083 ; 4842.123) | [4842.123 ; 5028.164) | [5028.164 ; 5214.205) | [5214.205 ; 5400.245) | [5400.245 ; 5586.286) | [5586.286 ; 5772.327) | [5772.327 ; 5958.367) | [5958.367 ; 6144.408) | [6144.408 ; 6333.710) | [6333.710 ; 6519.751) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in GuardedDevirtualization.ThreeClassInterface Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Call]() | 24.09 ns | 18.53 ns | 0.77 | | | [Call]() | 21.92 ns | 18.35 ns | 0.84 | | | [Call]() | 22.32 ns | 18.61 ns | 0.83 | | | [Call]() | 22.34 ns | 18.57 ns | 0.83 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'GuardedDevirtualization.ThreeClassInterface*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.00 pD=0.67) ```log [18.268 ; 18.936) | @@@@ [18.936 ; 19.376) | @@@@@@@@@ [19.376 ; 20.088) | @@@@ [20.088 ; 20.784) | @ [20.784 ; 21.402) | [21.402 ; 22.218) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.218 ; 22.993) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.993 ; 23.625) | @@@@@@@@@@@@@@@@@@@@@@@@ [23.625 ; 24.573) | @@@@@@@@@@@ [24.573 ; 25.252) | @ ``` #### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.33 pD=0.00) ```log [18.262 ; 18.872) | @@@ [18.872 ; 19.355) | @@@@@@@@@@@ [19.355 ; 20.094) | @@@ [20.094 ; 20.790) | [20.790 ; 21.485) | [21.485 ; 22.199) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.199 ; 23.000) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.000 ; 23.667) | @@@@@@@@@@@@@@@@ [23.667 ; 24.553) | @@@@@@@@@@@@@@@@@ [24.553 ; 25.488) | @@@@@@@ [25.488 ; 26.183) | [26.183 ; 26.879) | [26.879 ; 27.572) | @ ``` #### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.00 pD=0.33) ```log [18.344 ; 18.854) | @@@@@ [18.854 ; 19.519) | @@@@@@@@@@ [19.519 ; 19.921) | [19.921 ; 20.464) | @ [20.464 ; 21.206) | @ [21.206 ; 21.757) | @ [21.757 ; 22.583) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.583 ; 23.373) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.373 ; 24.121) | @@@@@@@@@@@ [24.121 ; 25.485) | @@@@@@@@@@ ``` #### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=1.00 pD=0.00) ```log [18.415 ; 19.141) | @@@@@@@@@@@@@@@ [19.141 ; 19.626) | @ [19.626 ; 20.373) | @@ [20.373 ; 21.074) | [21.074 ; 21.697) | @ [21.697 ; 22.528) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.528 ; 23.365) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.365 ; 23.846) | @@@@@@@ [23.846 ; 24.394) | @@@@@@@@ [24.394 ; 25.238) | @@@@@ [25.238 ; 25.939) | [25.939 ; 26.640) | [26.640 ; 27.341) | [27.341 ; 28.042) | [28.042 ; 28.744) | [28.744 ; 29.445) | [29.445 ; 30.473) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<ArrayList> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromString]() | 605.32 μs | 403.49 μs | 0.67 | | | [DeserializeFromStream]() | 612.37 μs | 406.90 μs | 0.66 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<ArrayList>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromString ```log [396198.074 ; 404792.011) | @ [404792.011 ; 419382.056) | @@@@@@@@@@@@@@@ [419382.056 ; 430988.367) | @@ [430988.367 ; 445578.411) | [445578.411 ; 460168.455) | [460168.455 ; 474758.500) | [474758.500 ; 489348.544) | [489348.544 ; 503938.588) | [503938.588 ; 518528.633) | [518528.633 ; 533118.677) | [533118.677 ; 547708.721) | [547708.721 ; 562298.765) | [562298.765 ; 578060.796) | [578060.796 ; 591628.039) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [591628.039 ; 606218.083) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [606218.083 ; 620841.915) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [620841.915 ; 641720.798) | @@@@ [641720.798 ; 658374.107) | @@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromStream ```log [399479.923 ; 412006.661) | @@@@ [412006.661 ; 426837.624) | @@@@@@@@@@@@@@ [426837.624 ; 441668.586) | [441668.586 ; 456499.548) | [456499.548 ; 471330.510) | [471330.510 ; 486161.473) | [486161.473 ; 500992.435) | [500992.435 ; 515823.397) | [515823.397 ; 530654.360) | [530654.360 ; 545485.322) | [545485.322 ; 560316.284) | [560316.284 ; 575147.246) | [575147.246 ; 586076.269) | [586076.269 ; 599750.476) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [599750.476 ; 614581.439) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [614581.439 ; 633990.851) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [633990.851 ; 648821.814) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Microsoft.Extensions.Logging.ScopesOverheadBenchmark Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [FilteredByLevel]() | 85.09 ns | 74.14 ns | 0.87 | | | [FilteredByLevel_InsideScope]() | 149.54 ns | 123.29 ns | 0.82 | | | [NotFiltered_InsideScope]() | 316.00 ns | 285.00 ns | 0.90 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Microsoft.Extensions.Logging.ScopesOverheadBenchmark*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel(HasISupportLoggingScopeLogger: True, CaptureScopes: False) ```log [73.928 ; 76.590) | @@@@@@@@@ [76.590 ; 78.344) | @@@@@@ [78.344 ; 80.360) | @@@ [80.360 ; 83.200) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [83.200 ; 86.286) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [86.286 ; 89.738) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [89.738 ; 92.356) | @@@@ [92.356 ; 94.254) | @@@ [94.254 ; 97.266) | @@@@@@ [97.266 ; 103.036) | @@@@ ``` #### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel_InsideScope(HasISupportLoggingScopeLogger: True, CaptureScopes: False) ```log [120.153 ; 124.924) | @@@@@@@@@@@@ [124.924 ; 129.377) | @@@@@ [129.377 ; 132.408) | [132.408 ; 136.900) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [136.900 ; 141.846) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [141.846 ; 144.744) | @@@@@@@@@@@@@@@@@@@@@ [144.744 ; 148.747) | @@@@@@@@@@@@@ [148.747 ; 152.578) | @@@@@@@@@@@@@@ [152.578 ; 157.597) | @@@@ ``` #### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered_InsideScope(HasISupportLoggingScopeLogger: False, CaptureScopes: False) ```log [280.761 ; 289.483) | @@@@@@@@ [289.483 ; 300.626) | @@@@@@@@ [300.626 ; 307.430) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [307.430 ; 318.594) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [318.594 ; 330.586) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [330.586 ; 343.912) | @@@@@@@@@@@@@@@@@@@@@@@ [343.912 ; 359.244) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Binary_ToStream<CollectionsOfPrimitives> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [BinaryFormatter_]() | 32.74 ms | 27.41 ms | 0.84 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Binary_ToStream<CollectionsOfPrimitives>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Binary_ToStream.BinaryFormatter_ ```log [27082448.745 ; 28096617.182) | @@@@@@@@@@@@@@@@@@ [28096617.182 ; 28901174.407) | [28901174.407 ; 29705731.632) | [29705731.632 ; 30510288.856) | [30510288.856 ; 31403069.364) | [31403069.364 ; 32472972.487) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [32472972.487 ; 33300095.668) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.TryAddDefaultSize<Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Dictionary]() | 127.50 μs | 103.39 μs | 0.81 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.TryAddDefaultSize<Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.TryAddDefaultSize.Dictionary(Count: 512) ```log [100930.971 ; 104740.613) | @@@@@@@@@@@@@@@@ [104740.613 ; 108377.733) | @ [108377.733 ; 112100.082) | [112100.082 ; 115822.432) | [115822.432 ; 119544.781) | [119544.781 ; 121833.396) | [121833.396 ; 126459.545) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [126459.545 ; 130746.518) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [130746.518 ; 136326.748) | @@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Perf_Utf8Encoding Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetString]() | 2.43 ms | 2.04 ms | 0.84 | | | [GetString]() | 3.32 ms | 2.59 ms | 0.78 | | | [GetByteCount]() | 1.39 ms | 1.12 ms | 0.81 | | | [GetByteCount]() | 1.48 ms | 1.20 ms | 0.81 | | | [GetBytes]() | 3.41 ms | 2.74 ms | 0.80 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Perf_Utf8Encoding*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Perf_Utf8Encoding.GetString(Input: Cyrillic) ```log [2020133.308 ; 2090068.715) | @@@@@@@@@@@@@@@@@ [2090068.715 ; 2148317.983) | [2148317.983 ; 2206567.250) | [2206567.250 ; 2264816.518) | [2264816.518 ; 2323065.785) | [2323065.785 ; 2416849.007) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2416849.007 ; 2493892.860) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2493892.860 ; 2574609.966) | @@@@@@@@@@@ ``` #### System.Text.Perf_Utf8Encoding.GetString(Input: EnglishMostlyAscii) ```log [2468811.447 ; 2566108.668) | @@@@@@@@@@ [2566108.668 ; 2647474.187) | @@@@@@@ [2647474.187 ; 2704156.249) | [2704156.249 ; 2760838.311) | [2760838.311 ; 2817520.372) | [2817520.372 ; 2874202.434) | [2874202.434 ; 2930884.496) | [2930884.496 ; 2987566.557) | [2987566.557 ; 3044248.619) | [3044248.619 ; 3125940.923) | [3125940.923 ; 3247699.044) | @@@@@@ [3247699.044 ; 3373692.568) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3373692.568 ; 3445801.166) | @@@@@@@@@@@@@@@@ [3445801.166 ; 3525329.303) | @@@@ [3525329.303 ; 3695265.851) | @ ``` #### System.Text.Perf_Utf8Encoding.GetByteCount(Input: Chinese) ```log [1110071.567 ; 1148993.118) | @@@@@@@@@@@@@@@@ [1148993.118 ; 1184407.095) | @@ [1184407.095 ; 1225922.763) | [1225922.763 ; 1267438.431) | [1267438.431 ; 1308954.099) | [1308954.099 ; 1350469.767) | [1350469.767 ; 1378761.883) | [1378761.883 ; 1418952.501) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1418952.501 ; 1458705.657) | @@@@@@ [1458705.657 ; 1508932.292) | @@ [1508932.292 ; 1557116.197) | @ ``` #### System.Text.Perf_Utf8Encoding.GetByteCount(Input: Greek) ```log [1186932.106 ; 1213577.370) | @@@@@@@@@@@ [1213577.370 ; 1260336.622) | @@@@@ [1260336.622 ; 1293488.981) | [1293488.981 ; 1319620.072) | @ [1319620.072 ; 1367074.120) | [1367074.120 ; 1416934.316) | @ [1416934.316 ; 1461419.390) | [1461419.390 ; 1501561.019) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1501561.019 ; 1553007.598) | @@@@@@@@@@@@@@@@@@@@@@@@ [1553007.598 ; 1598221.640) | @@@@@@ [1598221.640 ; 1675779.692) | @@@@ ``` #### System.Text.Perf_Utf8Encoding.GetBytes(Input: Greek) ```log [2689526.434 ; 2780664.910) | @@@@@@@@@@@ [2780664.910 ; 2851597.560) | @@@@ [2851597.560 ; 2961432.503) | @@@ [2961432.503 ; 3065886.327) | [3065886.327 ; 3170340.150) | [3170340.150 ; 3274793.973) | [3274793.973 ; 3368407.129) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3368407.129 ; 3496276.844) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3496276.844 ; 3625190.323) | @@@@@@@@@@@@@@ [3625190.323 ; 3713397.963) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Xml.Linq.Perf_XName Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [NonEmptyNameSpaceToString]() | 639.54 ns | 571.59 ns | 0.89 | | | [CreateElement]() | 591.10 ns | 531.59 ns | 0.90 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Xml.Linq.Perf_XName*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Xml.Linq.Perf_XName.NonEmptyNameSpaceToString ```log [567.167 ; 587.050) | @@@@@@@@@@@@@@ [587.050 ; 606.470) | @@@@@@@@@ [606.470 ; 627.727) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [627.727 ; 646.064) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [646.064 ; 661.714) | @@@@@@ ``` #### System.Xml.Linq.Perf_XName.CreateElement ```log [501.806 ; 521.383) | @@@@@@@@@@ [521.383 ; 539.190) | @@@@@@@@@@ [539.190 ; 551.300) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [551.300 ; 570.995) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [570.995 ; 589.017) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [589.017 ; 620.116) | @@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Numerics.Tests.Perf_Matrix3x2

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[CreateSkewFromScalarXYBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.CreateSkewFromScalarXYBenchmark.html>) 63.14 ns 57.58 ns 0.91
[SubtractBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.SubtractBenchmark.html>) 115.26 ns 69.18 ns 0.60
[CreateRotationBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.CreateRotationBenchmark.html>) 107.02 ns 89.36 ns 0.83
[IsIdentityBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.IsIdentityBenchmark.html>) 82.39 ns 45.10 ns 0.55
[CreateSkewFromScalarXYWithCenterBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.CreateSkewFromScalarXYWithCenterBenchmark.html>) 85.24 ns 69.87 ns 0.82
[EqualsBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.EqualsBenchmark.html>) 85.96 ns 52.76 ns 0.61
[CreateScaleFromScalarWithCenterBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.CreateScaleFromScalarWithCenterBenchmark.html>) 48.23 ns 37.45 ns 0.78
[EqualityOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.EqualityOperatorBenchmark.html>) 72.95 ns 40.04 ns 0.55
[MultiplyByMatrixBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.MultiplyByMatrixBenchmark.html>) 181.99 ns 103.48 ns 0.57
[NegationOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.NegationOperatorBenchmark.html>) 64.00 ns 40.37 ns 0.63
[LerpBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.LerpBenchmark.html>) 124.56 ns 77.68 ns 0.62
[SubtractOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.SubtractOperatorBenchmark.html>) 95.59 ns 57.50 ns 0.60
[AddOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.AddOperatorBenchmark.html>) 95.39 ns 59.87 ns 0.63
[InvertBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.InvertBenchmark.html>) 123.26 ns 61.06 ns 0.50
[MultiplyByMatrixOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Matrix3x2.MultiplyByMatrixOperatorBenchmark.html>) 171.65 ns 92.80 ns 0.54

graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Numerics.Tests.Perf_Matrix3x2*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Perf_Matrix3x2.CreateSkewFromScalarXYBenchmark ```log [56.823 ; 58.965) | @@@@@@@@@@@@@@@@ [58.965 ; 61.300) | @@@@@@ [61.300 ; 63.629) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [63.629 ; 66.001) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [66.001 ; 68.484) | @@@@@ [68.484 ; 70.436) | @@ [70.436 ; 72.882) | @ ``` #### System.Numerics.Tests.Perf_Matrix3x2.SubtractBenchmark ```log [ 64.554 ; 66.401) | @@ [ 66.401 ; 69.433) | @@@@@@@@@@@ [ 69.433 ; 72.257) | @@ [ 72.257 ; 75.315) | [ 75.315 ; 78.347) | @@@ [ 78.347 ; 81.379) | [ 81.379 ; 84.411) | [ 84.411 ; 87.443) | [ 87.443 ; 90.475) | [ 90.475 ; 92.612) | [ 92.612 ; 95.976) | @ [ 95.976 ; 98.359) | @@@@@@@@@ [ 98.359 ; 101.391) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [101.391 ; 104.238) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [104.238 ; 107.270) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [107.270 ; 110.038) | @@@@@@@@@@@@@@@@@@ [110.038 ; 113.242) | @@@@ [113.242 ; 116.784) | @@@@@ [116.784 ; 120.562) | @@ [120.562 ; 123.594) | [123.594 ; 127.513) | @ [127.513 ; 130.545) | [130.545 ; 133.577) | [133.577 ; 136.609) | [136.609 ; 139.641) | [139.641 ; 144.639) | [144.639 ; 147.671) | @ ``` #### System.Numerics.Tests.Perf_Matrix3x2.CreateRotationBenchmark ```log [ 88.015 ; 90.233) | @@@@@@@ [ 90.233 ; 93.882) | @@@@@@@@ [ 93.882 ; 97.360) | [ 97.360 ; 100.838) | [100.838 ; 103.291) | @@@ [103.291 ; 107.217) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [107.217 ; 109.897) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [109.897 ; 113.424) | @@@@@@@@@@@@@ [113.424 ; 118.006) | @@@@@@@@@@@@@@@@@@@@@@ [118.006 ; 121.755) | @@@@@@@@ [121.755 ; 124.989) | @@ [124.989 ; 128.467) | [128.467 ; 132.389) | @ ``` #### System.Numerics.Tests.Perf_Matrix3x2.IsIdentityBenchmark ```log [43.610 ; 46.118) | @@@@@@@@@@@@@@@@@ [46.118 ; 47.912) | @ [47.912 ; 50.419) | [50.419 ; 52.927) | [52.927 ; 55.434) | [55.434 ; 57.942) | [57.942 ; 60.449) | [60.449 ; 62.956) | [62.956 ; 65.464) | [65.464 ; 67.971) | [67.971 ; 70.479) | [70.479 ; 71.739) | [71.739 ; 73.346) | @@@ [73.346 ; 75.853) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [75.853 ; 78.374) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [78.374 ; 81.036) | @@@@@@@@@@@@@@@@@@@@@@@ [81.036 ; 84.743) | @@@@ [84.743 ; 87.250) | @ [87.250 ; 89.758) | [89.758 ; 92.101) | [92.101 ; 94.609) | @ ``` #### System.Numerics.Tests.Perf_Matrix3x2.CreateSkewFromScalarXYWithCenterBenchmark ```log [65.454 ; 66.886) | @ [66.886 ; 68.414) | [68.414 ; 69.807) | @@@ [69.807 ; 71.238) | @@@@@@@@@@@@@@ [71.238 ; 72.670) | [72.670 ; 74.102) | [74.102 ; 75.533) | [75.533 ; 76.965) | [76.965 ; 78.396) | [78.396 ; 79.828) | [79.828 ; 81.940) | [81.940 ; 85.152) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [85.152 ; 88.093) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [88.093 ; 90.740) | @@@@@@ [90.740 ; 92.933) | @@@@ [92.933 ; 95.431) | @@@@@@ [95.431 ; 98.493) | @@@ ``` #### System.Numerics.Tests.Perf_Matrix3x2.EqualsBenchmark ```log [52.175 ; 54.844) | @@@@@@@@@@@@@@@ [54.844 ; 57.015) | @@@ [57.015 ; 59.684) | [59.684 ; 62.353) | [62.353 ; 65.021) | [65.021 ; 67.690) | [67.690 ; 70.359) | [70.359 ; 73.028) | [73.028 ; 75.697) | [75.697 ; 78.345) | [78.345 ; 80.933) | @@ [80.933 ; 83.488) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [83.488 ; 86.157) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [86.157 ; 89.053) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [89.053 ; 91.722) | @@@@@@@@@@ [91.722 ; 95.625) | @@@ [95.625 ; 99.853) | @@@ [99.853 ; 102.522) | @ ``` #### System.Numerics.Tests.Perf_Matrix3x2.CreateScaleFromScalarWithCenterBenchmark ```log [34.332 ; 35.390) | @@@@@@@@@ [35.390 ; 36.797) | @@ [36.797 ; 37.855) | @@@@@ [37.855 ; 39.493) | @ [39.493 ; 40.551) | @ [40.551 ; 41.694) | [41.694 ; 42.753) | @@ [42.753 ; 43.811) | [43.811 ; 45.126) | @ [45.126 ; 46.173) | @@@@@@@@@@@@@@@ [46.173 ; 47.231) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [47.231 ; 48.293) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [48.293 ; 49.527) | @@@@@@@@@@@@@@@@@@@@@@@ [49.527 ; 50.932) | @@@@@@@@ [50.932 ; 52.787) | @@ [52.787 ; 54.783) | [54.783 ; 56.254) | @ [56.254 ; 58.121) | @ [58.121 ; 59.295) | @ [59.295 ; 62.501) | @ ``` #### System.Numerics.Tests.Perf_Matrix3x2.EqualityOperatorBenchmark ```log [39.885 ; 42.375) | @@@@@@@@@@@@@@@@@ [42.375 ; 43.778) | @ [43.778 ; 46.267) | [46.267 ; 48.757) | [48.757 ; 51.246) | [51.246 ; 53.735) | [53.735 ; 56.225) | [56.225 ; 58.714) | [58.714 ; 61.204) | [61.204 ; 63.693) | [63.693 ; 66.182) | [66.182 ; 67.147) | [67.147 ; 69.226) | @@@@@@ [69.226 ; 71.716) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71.716 ; 74.891) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [74.891 ; 77.666) | @@@@@@@@@@@@@@@@ [77.666 ; 80.156) | @ [80.156 ; 84.160) | @@@@ ``` #### System.Numerics.Tests.Perf_Matrix3x2.MultiplyByMatrixBenchmark ```log [100.488 ; 106.696) | @@@@@@@@@@@@@@@ [106.696 ; 112.061) | @@@ [112.061 ; 118.269) | [118.269 ; 124.477) | [124.477 ; 130.685) | [130.685 ; 136.893) | [136.893 ; 143.101) | [143.101 ; 149.309) | [149.309 ; 155.518) | [155.518 ; 161.726) | [161.726 ; 165.400) | [165.400 ; 169.810) | @ [169.810 ; 176.019) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [176.019 ; 185.050) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [185.050 ; 193.793) | @@@@@@@@@@@@ [193.793 ; 200.002) | @@@@ ``` #### System.Numerics.Tests.Perf_Matrix3x2.NegationOperatorBenchmark ```log [39.549 ; 41.449) | @@ [41.449 ; 43.087) | @@@@@@@@@@@@@ [43.087 ; 44.770) | @@@ [44.770 ; 46.408) | [46.408 ; 48.046) | [48.046 ; 49.684) | [49.684 ; 51.322) | [51.322 ; 52.960) | [52.960 ; 54.494) | [54.494 ; 55.906) | @ [55.906 ; 57.544) | @@@ [57.544 ; 59.049) | [59.049 ; 60.521) | @@@@@@@@@@@@@@ [60.521 ; 62.828) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [62.828 ; 64.466) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [64.466 ; 66.121) | @@@@@@@@@@@@@@@@@@@ [66.121 ; 69.013) | @@@@@@@@ ``` #### System.Numerics.Tests.Perf_Matrix3x2.LerpBenchmark ```log [ 75.355 ; 79.123) | @@@@@@@@@@@@@@@@@ [ 79.123 ; 82.141) | @ [ 82.141 ; 85.908) | [ 85.908 ; 89.675) | [ 89.675 ; 93.443) | [ 93.443 ; 97.210) | [ 97.210 ; 100.977) | [100.977 ; 104.745) | [104.745 ; 108.512) | [108.512 ; 112.279) | [112.279 ; 116.883) | @@@@@@@@@ [116.883 ; 122.409) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [122.409 ; 126.176) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [126.176 ; 130.377) | @@@@@@@ [130.377 ; 136.744) | @@@@@@@ [136.744 ; 141.010) | @ ``` #### System.Numerics.Tests.Perf_Matrix3x2.SubtractOperatorBenchmark ```log [ 55.109 ; 58.232) | @@@@@@@@@@@@ [ 58.232 ; 60.975) | @@@@ [ 60.975 ; 63.717) | [ 63.717 ; 65.994) | [ 65.994 ; 68.736) | @ [ 68.736 ; 71.444) | [ 71.444 ; 74.186) | @ [ 74.186 ; 76.929) | [ 76.929 ; 79.672) | [ 79.672 ; 82.415) | [ 82.415 ; 85.501) | [ 85.501 ; 87.894) | @@@@@ [ 87.894 ; 90.636) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 90.636 ; 94.944) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 94.944 ; 97.746) | @@@@@@@@@@@@@@@@@@@@@@ [ 97.746 ; 100.523) | @@@@@@@ [100.523 ; 104.021) | @@ [104.021 ; 107.222) | @@ ``` #### System.Numerics.Tests.Perf_Matrix3x2.AddOperatorBenchmark ```log [ 55.196 ; 58.047) | @@@@@@@@@@@@@@@ [ 58.047 ; 61.089) | @@@ [ 61.089 ; 63.939) | [ 63.939 ; 66.790) | [ 66.790 ; 69.641) | [ 69.641 ; 72.492) | [ 72.492 ; 75.343) | [ 75.343 ; 78.193) | [ 78.193 ; 81.044) | [ 81.044 ; 83.895) | [ 83.895 ; 85.703) | [ 85.703 ; 88.014) | @@@@@@@@@@@ [ 88.014 ; 92.620) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 92.620 ; 95.471) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 95.471 ; 98.508) | @@@@@@@@@@@@@@@@@@@@ [ 98.508 ; 101.359) | @@@@@@@@ [101.359 ; 104.328) | @@ ``` #### System.Numerics.Tests.Perf_Matrix3x2.InvertBenchmark ```log [ 58.998 ; 63.625) | @@@@@@@@@@@@@@@@ [ 63.625 ; 67.002) | @ [ 67.002 ; 72.284) | [ 72.284 ; 76.911) | @ [ 76.911 ; 81.539) | [ 81.539 ; 86.166) | [ 86.166 ; 90.793) | [ 90.793 ; 95.421) | [ 95.421 ; 100.048) | [100.048 ; 104.675) | [104.675 ; 107.587) | [107.587 ; 112.111) | @@@ [112.111 ; 116.738) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [116.738 ; 121.410) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [121.410 ; 126.587) | @@@@@@@@@@@@@@@@@@ [126.587 ; 131.862) | @@@@@@@@ [131.862 ; 137.090) | @@@ ``` #### System.Numerics.Tests.Perf_Matrix3x2.MultiplyByMatrixOperatorBenchmark ```log [ 89.645 ; 95.506) | @@@@@@@@@@@@@@@ [ 95.506 ; 102.617) | @@@ [102.617 ; 108.478) | [108.478 ; 114.338) | [114.338 ; 120.199) | [120.199 ; 126.060) | [126.060 ; 131.920) | [131.920 ; 137.781) | [137.781 ; 143.641) | [143.641 ; 149.502) | [149.502 ; 154.388) | [154.388 ; 159.315) | @@@@@ [159.315 ; 168.105) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [168.105 ; 173.965) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [173.965 ; 180.784) | @@@@@@@@@@@@@ [180.784 ; 186.644) | @@@@@ [186.644 ; 192.734) | @@ [192.734 ; 198.696) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_Char Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Char_ToUpperInvariant]() | 505.01 ns | 448.47 ns | 0.89 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Char*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Char.Char_ToUpperInvariant(input: "Hello World!") ```log [442.532 ; 459.568) | @@@@@@@@@@@@@@@@@ [459.568 ; 471.454) | @ [471.454 ; 482.643) | [482.643 ; 494.272) | @@ [494.272 ; 512.119) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [512.119 ; 530.058) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [530.058 ; 545.305) | @@@@@@@@@@@@@ [545.305 ; 557.552) | @ [557.552 ; 578.519) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_UInt32 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [TryFormat]() | 312.70 ns | 236.07 ns | 0.75 | | | [ParseSpan]() | 270.71 ns | 238.44 ns | 0.88 | | | [ParseSpan]() | 391.10 ns | 342.38 ns | 0.88 | | | [Parse]() | 365.60 ns | 326.14 ns | 0.89 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_UInt32*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_UInt32.TryFormat(value: 12345) ```log [209.842 ; 222.266) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [222.266 ; 234.700) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [234.700 ; 247.528) | @@@@@@@@ [247.528 ; 259.952) | [259.952 ; 268.548) | [268.548 ; 277.216) | @ [277.216 ; 289.641) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [289.641 ; 301.702) | @@@@@@@@@@@@@@@@@@@@@@@@@ [301.702 ; 313.786) | @@@@ [313.786 ; 326.211) | [326.211 ; 335.724) | [335.724 ; 348.148) | @ ``` #### System.Tests.Perf_UInt32.ParseSpan(value: "12345") ```log [234.273 ; 240.798) | @@@@ [240.798 ; 248.916) | @@@@@@@@@ [248.916 ; 256.947) | @@@@ [256.947 ; 266.116) | @@@@@@@@@@@@@@@@ [266.116 ; 276.457) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [276.457 ; 287.916) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [287.916 ; 295.646) | @@@@@@@@@@@@@@@@@@@@@@@@ [295.646 ; 303.276) | @@@@@@@@@@@ [303.276 ; 309.728) | @@@@ ``` #### System.Tests.Perf_UInt32.ParseSpan(value: "4294967295") ```log [340.112 ; 350.274) | @@@@@@@@@@@@ [350.274 ; 362.971) | @@@@@ [362.971 ; 370.511) | @ [370.511 ; 380.604) | @ [380.604 ; 396.498) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [396.498 ; 410.904) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [410.904 ; 425.427) | @@@@@@@@@@@ [425.427 ; 444.851) | @@@ ``` #### System.Tests.Perf_UInt32.Parse(value: "4294967295") ```log [323.824 ; 334.032) | @@@@@@@@@@@@@@@ [334.032 ; 343.698) | @ [343.698 ; 355.593) | @@ [355.593 ; 368.720) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [368.720 ; 379.335) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [379.335 ; 391.493) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [391.493 ; 402.976) | @@@@@@@@@@@@@ [402.976 ; 414.521) | @ [414.521 ; 423.766) | [423.766 ; 433.012) | [433.012 ; 442.257) | [442.257 ; 451.502) | [451.502 ; 460.748) | [460.748 ; 473.313) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromString]() | 795.66 μs | 606.28 μs | 0.76 | | | [DeserializeFromStream]() | 794.21 μs | 592.35 μs | 0.75 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson>.DeserializeFromString ```log [575948.801 ; 589239.484) | @ [589239.484 ; 604983.074) | @@@@@@@@@@@@@@@@ [604983.074 ; 629896.233) | @ [629896.233 ; 645639.824) | [645639.824 ; 661383.414) | [661383.414 ; 677127.005) | [677127.005 ; 692870.595) | [692870.595 ; 708614.186) | [708614.186 ; 724357.777) | [724357.777 ; 740101.367) | [740101.367 ; 755844.958) | [755844.958 ; 777532.821) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [777532.821 ; 824927.571) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson>.DeserializeFromStream ```log [580341.417 ; 597012.228) | @@@@@@@@@@@@@@@@ [597012.228 ; 610954.911) | @@ [610954.911 ; 627625.722) | [627625.722 ; 644296.534) | [644296.534 ; 660967.346) | [660967.346 ; 677638.158) | [677638.158 ; 694308.970) | [694308.970 ; 710979.781) | [710979.781 ; 727650.593) | [727650.593 ; 744321.405) | [744321.405 ; 760992.217) | [760992.217 ; 786209.811) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [786209.811 ; 817802.959) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Linq.Tests.Perf_Enumerable Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ToDictionary]() | 29.95 μs | 24.70 μs | 0.82 | | | [SelectToList]() | 4.21 μs | 3.61 μs | 0.86 | | | [Zip]() | 18.81 μs | 16.03 μs | 0.85 | | | [Aggregate_Seed]() | 6.75 μs | 5.68 μs | 0.84 | | | [Average]() | 5.58 μs | 4.74 μs | 0.85 | | | [OrderByThenBy]() | 83.11 μs | 76.58 μs | 0.92 | | | [Sum]() | 5.10 μs | 4.47 μs | 0.88 | | | [SelectToArray]() | 2.40 μs | 1.90 μs | 0.79 | | | [Append]() | 36.74 μs | 34.63 μs | 0.94 | | | [WhereSelect]() | 9.46 μs | 8.45 μs | 0.89 | | | [WhereSelect]() | 13.73 μs | 10.78 μs | 0.79 | | | [Range]() | 5.59 μs | 5.18 μs | 0.93 | | | [WhereLast_LastElementMatches]() | 3.18 μs | 2.67 μs | 0.84 | | | [Max]() | 5.07 μs | 4.53 μs | 0.89 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Linq.Tests.Perf_Enumerable*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Linq.Tests.Perf_Enumerable.ToDictionary(input: IEnumerable) ```log [24354.356 ; 25129.128) | @@@@@@@@@@@@ [25129.128 ; 26043.479) | @@@@@ [26043.479 ; 26694.721) | @ [26694.721 ; 27459.633) | [27459.633 ; 28358.730) | [28358.730 ; 29328.730) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [29328.730 ; 30310.926) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [30310.926 ; 31139.486) | @@@@@@@@@@@ [31139.486 ; 31799.842) | @@@@@ ``` #### System.Linq.Tests.Perf_Enumerable.SelectToList(input: Range) ```log [3572.606 ; 3669.297) | @@@@ [3669.297 ; 3810.416) | @@@@@@@@@@@@@@ [3810.416 ; 3938.462) | [3938.462 ; 4066.508) | [4066.508 ; 4210.015) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4210.015 ; 4366.865) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4366.865 ; 4521.914) | @@@@@@@@@@@@@@@@@@@@ [4521.914 ; 4670.601) | @@@@ [4670.601 ; 4810.491) | @@ [4810.491 ; 4938.537) | [4938.537 ; 5066.584) | [5066.584 ; 5194.630) | [5194.630 ; 5322.676) | [5322.676 ; 5582.588) | @@ ``` #### System.Linq.Tests.Perf_Enumerable.Zip(input: IEnumerable) ```log [15304.754 ; 15647.783) | @@@@@@ [15647.783 ; 16085.158) | @@@@@@@ [16085.158 ; 16686.301) | @@@ [16686.301 ; 17023.398) | @ [17023.398 ; 17507.499) | @ [17507.499 ; 18153.197) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18153.197 ; 18779.417) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18779.417 ; 19456.333) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [19456.333 ; 20246.585) | @@@@@@@@@@@ ``` #### System.Linq.Tests.Perf_Enumerable.Aggregate_Seed(input: IEnumerable) ```log [5551.113 ; 5759.252) | @@@@@@@@@@@@@@@ [5759.252 ; 5954.172) | @@ [5954.172 ; 6111.313) | [6111.313 ; 6283.726) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6283.726 ; 6491.970) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6491.970 ; 6687.577) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [6687.577 ; 6867.878) | @@@@@@ [6867.878 ; 7035.502) | @ [7035.502 ; 7272.551) | @@ [7272.551 ; 7496.331) | [7496.331 ; 7806.976) | @@ ``` #### System.Linq.Tests.Perf_Enumerable.Average(input: IEnumerable) ```log [4584.102 ; 4692.539) | @@@@@@@@ [4692.539 ; 4853.393) | @@@@@@@@@ [4853.393 ; 5010.999) | [5010.999 ; 5168.606) | [5168.606 ; 5336.657) | [5336.657 ; 5461.562) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5461.562 ; 5666.135) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5666.135 ; 5896.460) | @@@@@@@@@@@ [5896.460 ; 6120.947) | @ [6120.947 ; 6261.778) | @@ [6261.778 ; 6419.384) | [6419.384 ; 6576.990) | [6576.990 ; 6734.597) | [6734.597 ; 6997.728) | @@ ``` #### System.Linq.Tests.Perf_Enumerable.OrderByThenBy(input: IEnumerable) ```log [75016.797 ; 77444.461) | @@@@@@@@@@@@@@@@@@ [77444.461 ; 79113.614) | [79113.614 ; 81105.830) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [81105.830 ; 83803.523) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [83803.523 ; 86432.674) | @@@@@ ``` #### System.Linq.Tests.Perf_Enumerable.Sum(input: IEnumerable) ```log [4419.451 ; 4574.665) | @@@@@@@@@@@@@ [4574.665 ; 4738.157) | @@@ [4738.157 ; 4915.956) | @@ [4915.956 ; 5031.181) | [5031.181 ; 5188.193) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5188.193 ; 5383.651) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5383.651 ; 5550.456) | @@@@@@@@@@@@@@@@ [5550.456 ; 5707.458) | @@@@@ [5707.458 ; 5849.556) | @@ [5849.556 ; 6074.533) | @@@ [6074.533 ; 6231.603) | @ [6231.603 ; 6444.703) | @@@@ ``` #### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: Array) ```log [1879.154 ; 1919.332) | @@@@ [1919.332 ; 1977.485) | @@@@@ [1977.485 ; 2047.301) | @@@@@@ [2047.301 ; 2109.874) | @@ [2109.874 ; 2190.231) | [2190.231 ; 2270.588) | [2270.588 ; 2323.449) | [2323.449 ; 2412.914) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2412.914 ; 2479.727) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2479.727 ; 2565.553) | @@@@@@@@@@@@@@@@ [2565.553 ; 2657.561) | @@@@@@@@@@ [2657.561 ; 2735.966) | @ [2735.966 ; 2816.323) | [2816.323 ; 2946.209) | @ ``` #### System.Linq.Tests.Perf_Enumerable.Append(input: IEnumerable) ```log [34069.513 ; 34831.961) | @@@@@@@@@@ [34831.961 ; 35774.568) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [35774.568 ; 36992.833) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [36992.833 ; 38075.153) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [38075.153 ; 39495.526) | @@@ ``` #### System.Linq.Tests.Perf_Enumerable.WhereSelect(input: Array) ```log [ 8193.477 ; 8406.294) | @@@@@@@ [ 8406.294 ; 8626.675) | @@@@@@@ [ 8626.675 ; 8910.871) | @@@@@@@@@@@@@@@@@@ [ 8910.871 ; 9180.538) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 9180.538 ; 9524.239) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 9524.239 ; 9802.034) | @@@@@@@@@@@@ [ 9802.034 ; 10011.487) | @ [10011.487 ; 10301.120) | @@@@@@ [10301.120 ; 10754.247) | @@@@@@ ``` #### System.Linq.Tests.Perf_Enumerable.WhereSelect(input: List) ```log [10177.088 ; 10420.917) | @ [10420.917 ; 10654.491) | @@@@@@@@@@@ [10654.491 ; 11055.132) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11055.132 ; 11434.032) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11434.032 ; 11668.552) | @@@@@@@@@@@@@ [11668.552 ; 11964.551) | @@@@@@@@@ [11964.551 ; 12327.361) | @@@@@@ [12327.361 ; 12650.054) | @@@@ [12650.054 ; 13162.713) | @@@@@@@ [13162.713 ; 13477.146) | [13477.146 ; 13791.580) | [13791.580 ; 14106.014) | [14106.014 ; 14492.046) | @ ``` #### System.Linq.Tests.Perf_Enumerable.Range ```log [5013.222 ; 5142.902) | @@@@ [5142.902 ; 5315.326) | @@@@@@@@@@@@@ [5315.326 ; 5519.795) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5519.795 ; 5692.354) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5692.354 ; 5876.812) | @@@@@@@@@@@@@@@@@@ [5876.812 ; 6038.878) | @@@ [6038.878 ; 6263.427) | @@@ [6263.427 ; 6446.758) | [6446.758 ; 6610.597) | [6610.597 ; 6805.255) | @ [6805.255 ; 6988.586) | [6988.586 ; 7282.333) | @ ``` #### System.Linq.Tests.Perf_Enumerable.WhereLast_LastElementMatches(input: Array) ```log [2593.973 ; 2657.104) | @@@ [2657.104 ; 2717.164) | @@@@@@@@@@@@@ [2717.164 ; 2820.612) | @@ [2820.612 ; 2887.110) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2887.110 ; 2947.170) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2947.170 ; 3007.784) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3007.784 ; 3122.961) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3122.961 ; 3212.095) | @@@@@@@@@@@@ [3212.095 ; 3284.532) | @@@@@@ [3284.532 ; 3410.945) | @@@@ [3410.945 ; 3541.826) | [3541.826 ; 3665.463) | @ [3665.463 ; 3739.513) | @ [3739.513 ; 3859.632) | [3859.632 ; 3979.750) | [3979.750 ; 4125.758) | @@@ [4125.758 ; 4245.876) | [4245.876 ; 4398.834) | @ ``` #### System.Linq.Tests.Perf_Enumerable.Max(input: IEnumerable) ```log [4490.783 ; 4679.508) | @@@@@@@@@@@@@@@@@@ [4679.508 ; 4797.842) | [4797.842 ; 4916.176) | [4916.176 ; 5058.738) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5058.738 ; 5192.228) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5192.228 ; 5367.485) | @@@@@@@@@@@@@@@@@@@@@ [5367.485 ; 5572.265) | @@@@@@@ [5572.265 ; 5726.915) | @ [5726.915 ; 5845.248) | [5845.248 ; 6018.293) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Net.Primitives.Tests.IPAddressPerformanceTests Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetAddressBytes]() | 116.89 ns | 104.66 ns | 0.90 | | | [TryWriteBytes]() | 317.76 ns | 243.12 ns | 0.77 | | | [TryFormat]() | 2.52 μs | 2.10 μs | 0.83 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Net.Primitives.Tests.IPAddressPerformanceTests*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Net.Primitives.Tests.IPAddressPerformanceTests.GetAddressBytes(address: 143.24.20.36) ```log [101.280 ; 104.012) | @@@@@@@@@@ [104.012 ; 107.529) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [107.529 ; 111.569) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [111.569 ; 114.988) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [114.988 ; 118.620) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [118.620 ; 122.867) | @@@@@@@ [122.867 ; 127.166) | @ ``` #### System.Net.Primitives.Tests.IPAddressPerformanceTests.TryWriteBytes(address: 1020:3040:5060:7080:9010:1112:1314:1516) ```log [236.087 ; 241.809) | @@@@@@@@@@ [241.809 ; 249.627) | @@@@@@@@ [249.627 ; 255.349) | [255.349 ; 261.071) | [261.071 ; 266.793) | [266.793 ; 272.516) | [272.516 ; 278.238) | [278.238 ; 283.960) | [283.960 ; 289.682) | [289.682 ; 295.404) | [295.404 ; 301.126) | [301.126 ; 308.506) | @@@@ [308.506 ; 320.695) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [320.695 ; 330.127) | @@@@@@@@ [330.127 ; 342.518) | @@@ [342.518 ; 353.963) | [353.963 ; 365.407) | [365.407 ; 379.230) | @ ``` #### System.Net.Primitives.Tests.IPAddressPerformanceTests.TryFormat(address: 1020:3040:5060:7080:9010:1112:1314:1516) ```log [1986.355 ; 2059.438) | @@@@@@@@ [2059.438 ; 2126.239) | @@@@@@@ [2126.239 ; 2199.002) | @@ [2199.002 ; 2257.933) | @ [2257.933 ; 2329.464) | @@ [2329.464 ; 2420.277) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2420.277 ; 2510.429) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2510.429 ; 2631.023) | @@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in Benchstone.BenchI.QuickSort

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[Test](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/Benchstone.BenchI.QuickSort.Test.html>) 46.86 μs 30.78 μs 0.66

graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.QuickSort*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.QuickSort.Test ```log [30081.896 ; 30712.288) | @ [30712.288 ; 31765.041) | @@@@@@@@@@@@@@@@@ [31765.041 ; 32817.794) | [32817.794 ; 33870.548) | [33870.548 ; 34923.301) | [34923.301 ; 35976.055) | [35976.055 ; 37028.808) | [37028.808 ; 38081.561) | [38081.561 ; 39134.315) | [39134.315 ; 40187.068) | [40187.068 ; 41239.822) | [41239.822 ; 42334.145) | @@@@@@@@ [42334.145 ; 43386.898) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [43386.898 ; 44393.662) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [44393.662 ; 45446.416) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [45446.416 ; 47412.049) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Numerics.Tests.Constructor Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SpanCastBenchmark_UInt64]() | 65.09 ns | 57.75 ns | 0.89 | | | [SpanCastBenchmark_Int64]() | 70.66 ns | 59.53 ns | 0.84 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Numerics.Tests.Constructor*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Constructor.SpanCastBenchmark_UInt64 ```log [57.441 ; 58.940) | @ [58.940 ; 61.081) | @@@@@@@@@@@@ [61.081 ; 62.539) | @@@@ [62.539 ; 64.523) | @@@@@@@@@@@@@@@@@@@ [64.523 ; 66.756) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [66.756 ; 68.856) | @@@@@@@@@@@@@@@@@@@ [68.856 ; 71.103) | @@@@@@@ [71.103 ; 73.864) | @@@@@@ ``` #### System.Numerics.Tests.Constructor.SpanCastBenchmark_Int64 ```log [58.491 ; 60.016) | @@@@@@@ [60.016 ; 62.395) | @@@@@@@@@@ [62.395 ; 64.572) | @@@@@@@@@@@@@@@@@ [64.572 ; 66.917) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [66.917 ; 68.374) | @@@@@@@@@@ [68.374 ; 70.140) | @@@@@@@@ [70.140 ; 72.349) | @@@@@ [72.349 ; 74.734) | @@@@@ [74.734 ; 76.262) | [76.262 ; 77.962) | [77.962 ; 80.113) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_Array Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ArrayResize]() | 235.27 ns | 197.30 ns | 0.84 | | | [IndexOfShort]() | 605.32 ns | 464.74 ns | 0.77 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Array*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Array.ArrayResize ```log [196.022 ; 201.463) | @@@@@@@@@@@ [201.463 ; 205.648) | @@@@ [205.648 ; 212.359) | @@@ [212.359 ; 217.472) | [217.472 ; 222.436) | [222.436 ; 229.549) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [229.549 ; 237.273) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [237.273 ; 245.975) | @@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Array.IndexOfShort ```log [457.068 ; 468.481) | @@@@@@@@@@@ [468.481 ; 486.489) | @@@@ [486.489 ; 497.901) | @@ [497.901 ; 509.314) | [509.314 ; 520.726) | [520.726 ; 532.139) | [532.139 ; 543.551) | [543.551 ; 554.964) | [554.964 ; 566.376) | [566.376 ; 577.789) | [577.789 ; 591.481) | [591.481 ; 610.206) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [610.206 ; 633.693) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [633.693 ; 657.092) | @@ [657.092 ; 680.659) | @ [680.659 ; 698.946) | @ [698.946 ; 715.999) | @ [715.999 ; 738.824) | [738.824 ; 761.649) | [761.649 ; 789.421) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Tests.Perf_Depth Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ReadSpanEmptyLoop]() | 58.47 μs | 49.98 μs | 0.85 | | | [ReadSpanEmptyLoop]() | 497.58 μs | 423.44 μs | 0.85 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Perf_Depth*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Depth.ReadSpanEmptyLoop(Depth: 65) ```log [49174.582 ; 51094.447) | @@@@@@@@@@@@@@ [51094.447 ; 52785.567) | @@@@ [52785.567 ; 54165.829) | [54165.829 ; 55426.645) | [55426.645 ; 57082.565) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [57082.565 ; 59184.510) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59184.510 ; 61175.691) | @@@@@@@@@@@@@@@@@@@@@@@@ [61175.691 ; 63223.664) | @@@ ``` #### System.Text.Json.Tests.Perf_Depth.ReadSpanEmptyLoop(Depth: 512) ```log [410490.854 ; 421155.026) | @@@@ [421155.026 ; 434850.676) | @@@@@@@@@@@@ [434850.676 ; 444176.584) | [444176.584 ; 453149.848) | @ [453149.848 ; 463053.306) | [463053.306 ; 476889.134) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [476889.134 ; 494056.781) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [494056.781 ; 514445.463) | @@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.RegularExpressions.Tests.Perf_Regex_Cache Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [IsMatch]() | 1.08 secs | 754.10 ms | 0.70 | | | [IsMatch_Multithreading]() | 376.38 ms | 265.92 ms | 0.71 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.RegularExpressions.Tests.Perf_Regex_Cache*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.RegularExpressions.Tests.Perf_Regex_Cache.IsMatch(total: 400000, unique: 1, cacheSize: 15) ```log [ 722844567.104 ; 744229890.888) | @@@@@@@ [ 744229890.888 ; 765126677.281) | @@@@@@@@@ [ 765126677.281 ; 784530597.796) | @ [ 784530597.796 ; 805427384.188) | [ 805427384.188 ; 826324170.581) | [ 826324170.581 ; 847220956.973) | [ 847220956.973 ; 868117743.365) | [ 868117743.365 ; 889014529.758) | [ 889014529.758 ; 914956430.196) | @@@ [ 914956430.196 ; 940423003.182) | @@@@@@@@@@@@@@ [ 940423003.182 ; 962980652.937) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 962980652.937 ; 986038509.449) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 986038509.449 ; 1006935295.841) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1006935295.841 ; 1030240950.839) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1030240950.839 ; 1076739171.611) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.RegularExpressions.Tests.Perf_Regex_Cache.IsMatch_Multithreading(total: 400000, unique: 1, cacheSize: 15) ```log [251664635.728 ; 259889684.703) | @@@@@ [259889684.703 ; 267398846.447) | @@@@@@@@@@@@ [267398846.447 ; 273698198.931) | @ [273698198.931 ; 281207360.675) | [281207360.675 ; 288716522.420) | [288716522.420 ; 296225684.164) | [296225684.164 ; 303734845.909) | [303734845.909 ; 311244007.653) | [311244007.653 ; 318753169.398) | [318753169.398 ; 326262331.142) | [326262331.142 ; 335593046.228) | @@@ [335593046.228 ; 342743845.458) | @@@@@@@@@@@@@@@@@@@@@@ [342743845.458 ; 350439665.949) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [350439665.949 ; 357948827.693) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [357948827.693 ; 366144382.372) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [366144382.372 ; 380940306.497) | @@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Buffers.Text.Tests.Base64EncodeDecodeInPlaceTests Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Base64EncodeInPlace]() | 5.78 secs | 3.65 secs | 0.63 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Buffers.Text.Tests.Base64EncodeDecodeInPlaceTests*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Buffers.Text.Tests.Base64EncodeDecodeInPlaceTests.Base64EncodeInPlace(NumberOfBytes: 200000000) ```log [3598779652.683 ; 3777838646.817) | @@@@@@@@@@@@@@@@@@ [3777838646.817 ; 3956897640.951) | [3956897640.951 ; 4135956635.085) | [4135956635.085 ; 4315015629.219) | [4315015629.219 ; 4494074623.353) | [4494074623.353 ; 4673133617.487) | [4673133617.487 ; 4852192611.621) | [4852192611.621 ; 5031251605.755) | [5031251605.755 ; 5210310599.889) | [5210310599.889 ; 5389369594.023) | [5389369594.023 ; 5495207639.419) | [5495207639.419 ; 5674266633.553) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5674266633.553 ; 5933990841.459) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5933990841.459 ; 6089673385.233) | @ [6089673385.233 ; 6274455539.166) | @@@@@ [6274455539.166 ; 6473747576.076) | @@@@@@@@@@@@@ [6473747576.076 ; 6652806570.210) | @@ [6652806570.210 ; 6831865564.344) | [6831865564.344 ; 7140024402.866) | [7140024402.866 ; 7319083397.000) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.AddGivenSize<Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ICollection]() | 18.37 μs | 14.67 μs | 0.80 | | | [HashSet]() | 78.53 μs | 65.74 μs | 0.84 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.AddGivenSize<Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.AddGivenSize.ICollection(Size: 512) ```log [14055.618 ; 14368.543) | @@@@@@@@@@@@@@@ [14368.543 ; 14749.230) | @@ [14749.230 ; 15349.409) | [15349.409 ; 15662.334) | @ [15662.334 ; 15975.259) | [15975.259 ; 16288.184) | [16288.184 ; 16601.109) | [16601.109 ; 16914.034) | [16914.034 ; 17226.959) | [17226.959 ; 17585.810) | [17585.810 ; 18278.327) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18278.327 ; 18727.100) | @@@@@@@@@@@@@@@@@@@ [18727.100 ; 19468.497) | @@@@@@@@@ [19468.497 ; 20064.454) | @@ [20064.454 ; 20690.303) | [20690.303 ; 21343.350) | @ ``` #### System.Collections.AddGivenSize.HashSet(Size: 512) ```log [64087.645 ; 66610.596) | @@@@@@@@@@@@@ [66610.596 ; 68734.351) | @@@ [68734.351 ; 70528.813) | @ [70528.813 ; 72592.128) | [72592.128 ; 74689.304) | [74689.304 ; 77182.977) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [77182.977 ; 79746.057) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [79746.057 ; 83670.812) | @@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_DateTimeOffset Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Parse]() | 17.26 μs | 14.32 μs | 0.83 | | | [ToString]() | 22.12 μs | 16.03 μs | 0.72 | | | [ToString]() | 975.37 ns | 882.15 ns | 0.90 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_DateTimeOffset*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_DateTimeOffset.Parse(value: "12/30/2017 3:45:22 AM -08:00") ```log [13734.327 ; 14219.990) | @@@@@@@@@@@@@@ [14219.990 ; 14652.548) | @@@@ [14652.548 ; 15097.572) | [15097.572 ; 15542.596) | [15542.596 ; 15987.620) | [15987.620 ; 16453.421) | [16453.421 ; 17060.391) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17060.391 ; 17470.629) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_DateTimeOffset.ToString(value: 12/30/2017 3:45:22 AM -08:00) ```log [15854.013 ; 16311.196) | @@@@@@@@@@@@@@@@@@ [16311.196 ; 16768.379) | [16768.379 ; 17225.562) | [17225.562 ; 17682.745) | [17682.745 ; 18139.928) | [18139.928 ; 18597.111) | [18597.111 ; 19054.294) | [19054.294 ; 19511.477) | [19511.477 ; 19968.660) | [19968.660 ; 20425.843) | [20425.843 ; 20883.026) | [20883.026 ; 21341.864) | [21341.864 ; 22130.300) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22130.300 ; 22620.411) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_DateTimeOffset.ToString(format: "r") ```log [856.939 ; 885.884) | @@@@@@@@@@ [885.884 ; 911.268) | @@@@@@@ [911.268 ; 937.882) | @@@@ [937.882 ; 965.250) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [965.250 ; 1016.345) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Json_ToString<MyEventsListerViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [JsonNet_]() | 21.78 ms | 17.75 ms | 0.81 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Json_ToString<MyEventsListerViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Json_ToString.JsonNet_ ```log [16969636.303 ; 17586807.805) | @@@@@@@@@@@@@@@ [17586807.805 ; 18206586.118) | @@ [18206586.118 ; 18855789.591) | [18855789.591 ; 19504993.063) | [19504993.063 ; 20154196.536) | [20154196.536 ; 20803400.009) | [20803400.009 ; 21628747.556) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [21628747.556 ; 22188408.268) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.IO.Tests.Perf_FileStream Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [CopyToAsync]() | 120.86 μs | 97.88 μs | 0.81 | | | [ReadAsync]() | 52.78 μs | 48.34 μs | 0.92 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.IO.Tests.Perf_FileStream*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.IO.Tests.Perf_FileStream.CopyToAsync(BufferSize: 200000, TotalSize: 200000) ```log [ 96784.785 ; 100470.587) | @@@@@ [100470.587 ; 103680.773) | @@@ [103680.773 ; 105974.057) | @@ [105974.057 ; 110046.728) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [110046.728 ; 114110.434) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [114110.434 ; 118323.879) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [118323.879 ; 124943.291) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.IO.Tests.Perf_FileStream.ReadAsync(BufferSize: 200000, TotalSize: 200000) ```log [47791.734 ; 49253.313) | @@@@@@@@@@@@@@@@@@ [49253.313 ; 50284.049) | [50284.049 ; 51614.389) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [51614.389 ; 53235.337) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.TreeInsert Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 468.38 μs | 372.66 μs | 0.80 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.TreeInsert*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.TreeInsert.Test ```log [359789.099 ; 370731.272) | @@@@@@@@@@@ [370731.272 ; 378840.646) | @@@@@@@ [378840.646 ; 386950.019) | [386950.019 ; 395059.392) | [395059.392 ; 403168.766) | [403168.766 ; 411278.139) | [411278.139 ; 419387.512) | [419387.512 ; 427496.886) | [427496.886 ; 435606.259) | [435606.259 ; 450044.664) | [450044.664 ; 461232.555) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [461232.555 ; 480560.291) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [480560.291 ; 495022.757) | @@@@@@@@@@ [495022.757 ; 511241.504) | [511241.504 ; 526264.866) | @ [526264.866 ; 542483.613) | [542483.613 ; 558702.360) | [558702.360 ; 573488.102) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Microsoft.AspNetCore.Server.Kestrel.Performance.PipeThroughputBenchmark Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Parse_SequentialAsync]() | 12.07 μs | 10.42 μs | 0.86 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Microsoft.AspNetCore.Server.Kestrel.Performance.PipeThroughputBenchmark*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Microsoft.AspNetCore.Server.Kestrel.Performance.PipeThroughputBenchmark.Parse_SequentialAsync(Length: 128, Chunks: 16) ```log [ 9898.609 ; 10165.101) | @@@@@ [10165.101 ; 10545.040) | @@@@@@@@@@@ [10545.040 ; 10804.741) | @@ [10804.741 ; 11074.876) | [11074.876 ; 11345.010) | [11345.010 ; 11586.013) | [11586.013 ; 12006.733) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12006.733 ; 12521.439) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Document.Tests.Perf_EnumerateArray Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [EnumerateUsingIndexer]() | 62.65 μs | 54.12 μs | 0.86 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Document.Tests.Perf_EnumerateArray*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Document.Tests.Perf_EnumerateArray.EnumerateUsingIndexer(TestCase: ArrayOfStrings) ```log [51490.342 ; 53423.729) | @@@@@@@@@ [53423.729 ; 54685.850) | @@@@ [54685.850 ; 56557.648) | @@@ [56557.648 ; 58870.697) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [58870.697 ; 60960.790) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [60960.790 ; 63297.982) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [63297.982 ; 64768.841) | @@@@@@@@@@@@@@@@@@ [64768.841 ; 66368.871) | @@@@@@@@ [66368.871 ; 68546.453) | @ [68546.453 ; 69931.230) | @ [69931.230 ; 72086.985) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.HeapSort Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 2.06 ms | 1.23 ms | 0.60 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.HeapSort*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.HeapSort.Test ```log [1209123.775 ; 1269311.048) | @@@@@@@@@@@@@@@@ [1269311.048 ; 1312759.227) | @@ [1312759.227 ; 1372946.499) | [1372946.499 ; 1433133.772) | [1433133.772 ; 1493321.044) | [1493321.044 ; 1553508.317) | [1553508.317 ; 1613695.590) | [1613695.590 ; 1673882.862) | [1673882.862 ; 1734070.135) | [1734070.135 ; 1794257.407) | [1794257.407 ; 1854444.680) | [1854444.680 ; 1936279.850) | @@@ [1936279.850 ; 1996467.123) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1996467.123 ; 2062908.884) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2062908.884 ; 2125255.468) | @@@@@@@@@@@@@@ [2125255.468 ; 2251267.562) | @@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in PerfLabTests.DictionaryExpansion Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ExpandDictionaries]() | 2.15 μs | 1.73 μs | 0.80 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'PerfLabTests.DictionaryExpansion*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### PerfLabTests.DictionaryExpansion.ExpandDictionaries ```log [1716.952 ; 1772.274) | @@@@ [1772.274 ; 1814.869) | @@@@@@@@@@ [1814.869 ; 1869.139) | @@ [1869.139 ; 1906.899) | @ [1906.899 ; 1962.984) | [1962.984 ; 2019.070) | [2019.070 ; 2066.134) | [2066.134 ; 2114.117) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2114.117 ; 2192.382) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2192.382 ; 2254.891) | @@@@@@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[CreateNew](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateNew(capacity%3a%2010000000).html>) 51.26 μs 47.75 μs 0.93
[CreateNew](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateNew(capacity%3a%20100000).html>) 51.16 μs 46.97 μs 0.92

graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateNew(capacity: 10000000) ```log [47130.044 ; 48701.498) | @@@@@@@@@@@@@@@@@@ [48701.498 ; 49853.558) | @@@@@@@@@@@ [49853.558 ; 51548.119) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [51548.119 ; 53924.687) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateNew(capacity: 100000) ```log [46809.230 ; 48004.018) | @@@@@@@@@@@@@@ [48004.018 ; 49672.284) | @@@@@@@ [49672.284 ; 51355.260) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [51355.260 ; 52526.049) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in SciMark2.kernel Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [benchSOR]() | 5.47 secs | 3.41 secs | 0.62 | | | [benchFFT]() | 17.27 secs | 9.72 secs | 0.56 | | | [benchmarkLU]() | 10.61 secs | 6.93 secs | 0.65 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'SciMark2.kernel*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### SciMark2.kernel.benchSOR ```log [3306538096.542 ; 3470336198.991) | @@@@@@@@@@@@@@@@@ [3470336198.991 ; 3634134301.440) | [3634134301.440 ; 3752892243.509) | [3752892243.509 ; 3916690345.958) | @ [3916690345.958 ; 4080488448.407) | [4080488448.407 ; 4244286550.855) | [4244286550.855 ; 4408084653.304) | [4408084653.304 ; 4571882755.753) | [4571882755.753 ; 4735680858.202) | [4735680858.202 ; 4899478960.651) | [4899478960.651 ; 5077178886.865) | [5077178886.865 ; 5323963263.629) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5323963263.629 ; 5509135674.383) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5509135674.383 ; 5672933776.832) | @@ [5672933776.832 ; 5929169177.158) | @@@ [5929169177.158 ; 6092967279.607) | [6092967279.607 ; 6256765382.055) | [6256765382.055 ; 6420563484.504) | [6420563484.504 ; 6607576967.109) | [6607576967.109 ; 6771375069.558) | @ [6771375069.558 ; 6935173172.007) | [6935173172.007 ; 7098971274.455) | [7098971274.455 ; 7262769376.904) | [7262769376.904 ; 7426567479.353) | [7426567479.353 ; 7590365581.802) | [7590365581.802 ; 7754163684.251) | [7754163684.251 ; 7917961786.699) | [7917961786.699 ; 8081759889.148) | [8081759889.148 ; 8453979886.891) | @ ``` #### SciMark2.kernel.benchFFT ```log [ 9630399076.870 ; 10174401203.330) | @@@@@@@@@@@@@@@@@ [10174401203.330 ; 10758618808.770) | [10758618808.770 ; 11302620935.230) | @ [11302620935.230 ; 11846623061.691) | [11846623061.691 ; 12390625188.152) | [12390625188.152 ; 12934627314.612) | [12934627314.612 ; 13478629441.073) | [13478629441.073 ; 14022631567.533) | [14022631567.533 ; 14566633693.994) | [14566633693.994 ; 15110635820.455) | [15110635820.455 ; 15654637946.915) | [15654637946.915 ; 16198640073.376) | [16198640073.376 ; 16445130033.174) | [16445130033.174 ; 16989132159.635) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [16989132159.635 ; 17669714191.309) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17669714191.309 ; 18174475180.897) | @@@@@@@@ [18174475180.897 ; 18581220749.166) | @@@ [18581220749.166 ; 19081297510.503) | [19081297510.503 ; 19625299636.964) | @ ``` #### SciMark2.kernel.benchmarkLU ```log [ 6825416693.805 ; 7091714138.862) | @@@@@@@@@@@@@@@@@ [ 7091714138.862 ; 7358011583.918) | [ 7358011583.918 ; 7624309028.975) | [ 7624309028.975 ; 7890606474.031) | [ 7890606474.031 ; 8156903919.088) | [ 8156903919.088 ; 8423201364.144) | [ 8423201364.144 ; 8689498809.201) | [ 8689498809.201 ; 8955796254.258) | [ 8955796254.258 ; 9222093699.314) | [ 9222093699.314 ; 9488391144.371) | [ 9488391144.371 ; 9782933911.150) | [ 9782933911.150 ; 10049231356.207) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [10049231356.207 ; 10369028901.628) | @@ [10369028901.628 ; 10689310999.040) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [10689310999.040 ; 11130817214.872) | @ [11130817214.872 ; 11397114659.928) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in BenchmarksGame.NBody_3 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [RunBench]() | 6.45 secs | 3.99 secs | 0.62 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'BenchmarksGame.NBody_3*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### BenchmarksGame.NBody_3.RunBench ```log [3978938759.182 ; 4166746709.390) | @@@@@@@@@@@@@@@ [4166746709.390 ; 4380275351.997) | @@ [4380275351.997 ; 4568083302.204) | [4568083302.204 ; 4755891252.412) | [4755891252.412 ; 4943699202.619) | [4943699202.619 ; 5131507152.827) | [5131507152.827 ; 5319315103.034) | [5319315103.034 ; 5507123053.242) | [5507123053.242 ; 5694931003.450) | [5694931003.450 ; 5882738953.657) | [5882738953.657 ; 6094339493.330) | @ [6094339493.330 ; 6324222456.975) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6324222456.975 ; 6512030407.182) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6512030407.182 ; 6702820347.904) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [6702820347.904 ; 6891880631.695) | @@@@@@@@ [6891880631.695 ; 7054486847.630) | @ [7054486847.630 ; 7242294797.837) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Buffers.Tests.RentReturnArrayPoolTests<Object> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SingleSerial]() | 7.54 μs | 5.92 μs | 0.79 | | | [SingleParallel]() | 648.23 ns | 515.95 ns | 0.80 | | | [SingleParallel]() | 89.43 μs | 52.86 μs | 0.59 | | | [SingleSerial]() | 34.79 μs | 23.87 μs | 0.69 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Buffers.Tests.RentReturnArrayPoolTests<Object>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleSerial(RentalSize: 4096, ManipulateArray: False, Async: True, UseSharedPool: False) ```log [5550.568 ; 5675.329) | @ [5675.329 ; 5826.404) | @ [5826.404 ; 5970.150) | @@@@@@@@@@@@ [5970.150 ; 6094.910) | @@@@ [6094.910 ; 6219.671) | [6219.671 ; 6344.431) | [6344.431 ; 6469.191) | [6469.191 ; 6593.952) | [6593.952 ; 6718.712) | [6718.712 ; 6843.473) | [6843.473 ; 6968.233) | [6968.233 ; 7206.762) | [7206.762 ; 7482.268) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7482.268 ; 7715.017) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleParallel(RentalSize: 4096, ManipulateArray: False, Async: False, UseSharedPool: True) ```log [480.134 ; 491.133) | @ [491.133 ; 505.978) | @@@@ [505.978 ; 526.787) | @@@@@@@@@@@@ [526.787 ; 546.939) | [546.939 ; 562.836) | @@@@@@ [562.836 ; 585.421) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [585.421 ; 608.276) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [608.276 ; 631.879) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [631.879 ; 652.878) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [652.878 ; 668.320) | @@ [668.320 ; 688.472) | [688.472 ; 708.966) | @ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleParallel(RentalSize: 4096, ManipulateArray: True, Async: True, UseSharedPool: True) ```log [47902.032 ; 50224.539) | @@ [50224.539 ; 53113.073) | @@@@@@@@@@@@@ [53113.073 ; 55771.409) | @@ [55771.409 ; 58845.688) | [58845.688 ; 61734.222) | @ [61734.222 ; 64622.757) | [64622.757 ; 67511.291) | [67511.291 ; 70399.825) | [70399.825 ; 73288.359) | [73288.359 ; 75379.390) | [75379.390 ; 77672.378) | @@@@ [77672.378 ; 80513.566) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [80513.566 ; 83402.101) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [83402.101 ; 86312.853) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [86312.853 ; 88194.102) | @@@@@@@@@@@@@@@@@@@@ [88194.102 ; 91082.636) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [91082.636 ; 94000.070) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [94000.070 ; 96549.282) | @@@@@@@ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleSerial(RentalSize: 4096, ManipulateArray: True, Async: False, UseSharedPool: True) ```log [23358.338 ; 24310.386) | @@@@@@@@@@@@@ [24310.386 ; 25171.416) | @@@@ [25171.416 ; 26055.012) | [26055.012 ; 26938.609) | [26938.609 ; 27822.205) | [27822.205 ; 28705.802) | [28705.802 ; 29589.399) | [29589.399 ; 30472.995) | [30472.995 ; 31356.592) | [31356.592 ; 32240.188) | [32240.188 ; 33123.785) | [33123.785 ; 34498.703) | [34498.703 ; 35382.300) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [35382.300 ; 36275.757) | @@@@@@ [36275.757 ; 37168.122) | [37168.122 ; 38051.719) | @@ [38051.719 ; 39142.827) | [39142.827 ; 40026.424) | @@@@@ ``` ### 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) ### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Document.Tests.Perf_EnumerateObject Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [EnumerateProperties]() | 81.27 μs | 70.22 μs | 0.86 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Document.Tests.Perf_EnumerateObject*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Document.Tests.Perf_EnumerateObject.EnumerateProperties(TestCase: StringProperties) ```log [68663.128 ; 70799.592) | @@@@@ [70799.592 ; 73489.719) | @@@@@@@@@@ [73489.719 ; 75413.651) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [75413.651 ; 78320.792) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [78320.792 ; 80012.428) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [80012.428 ; 82973.727) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [82973.727 ; 86457.907) | @@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<Location> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromUtf8Bytes]() | 48.59 μs | 34.77 μs | 0.72 | | | [DeserializeFromString]() | 57.11 μs | 42.61 μs | 0.75 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<Location>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromUtf8Bytes ```log [34567.756 ; 35460.962) | @@@ [35460.962 ; 36387.986) | @@@@@@@@@@@@ [36387.986 ; 37961.658) | @@ [37961.658 ; 38888.682) | [38888.682 ; 39815.705) | [39815.705 ; 40742.729) | [40742.729 ; 41669.753) | [41669.753 ; 42596.776) | [42596.776 ; 43523.800) | [43523.800 ; 44450.823) | [44450.823 ; 45377.847) | [45377.847 ; 46304.871) | [46304.871 ; 47633.100) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [47633.100 ; 49484.496) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromString ```log [42160.194 ; 43234.707) | @@@@@@@@@@@@@@@@@@ [43234.707 ; 44309.220) | [44309.220 ; 45383.733) | [45383.733 ; 46458.247) | [46458.247 ; 47532.760) | [47532.760 ; 48607.273) | [48607.273 ; 49681.786) | [49681.786 ; 50756.299) | [50756.299 ; 51830.813) | [51830.813 ; 52905.326) | [52905.326 ; 53979.839) | [53979.839 ; 55054.352) | [55054.352 ; 56254.274) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [56254.274 ; 58540.797) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.Tests.Add_Remove_SteadyState<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Stack]() | 69.14 ns | 58.06 ns | 0.84 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.Tests.Add_Remove_SteadyState<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Tests.Add_Remove_SteadyState.Stack(Count: 512) ```log [56.534 ; 58.842) | @@@@@@@@@@@ [58.842 ; 60.468) | @@@@@ [60.468 ; 62.106) | [62.106 ; 64.589) | @ [64.589 ; 66.773) | [66.773 ; 69.449) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [69.449 ; 71.095) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71.095 ; 72.939) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [72.939 ; 74.479) | @@@@@@@@@@@@@@@ [74.479 ; 77.110) | @@@@@@@ [77.110 ; 80.325) | @@ [80.325 ; 82.307) | @@@ [82.307 ; 86.773) | @@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Memory.Constructors<Byte> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ReadOnlySpanImplicitCastFromArray]() | 18.65 ns | 15.21 ns | 0.82 | | | [ReadOnlySpanFromMemory]() | 54.33 ns | 40.83 ns | 0.75 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Memory.Constructors<Byte>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.Constructors.ReadOnlySpanImplicitCastFromArray ```log [14.010 ; 14.310) | @ [14.310 ; 14.860) | @@@@ [14.860 ; 15.264) | @@@@@@@@@ [15.264 ; 15.867) | @@@@ [15.867 ; 16.300) | @@@ [16.300 ; 16.783) | @@@@@@ [16.783 ; 17.260) | @@@@@@@@@@@@@ [17.260 ; 17.974) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17.974 ; 18.625) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18.625 ; 19.229) | @@@@@@@@@ [19.229 ; 19.829) | @@ [19.829 ; 20.355) | @ [20.355 ; 20.834) | @ [20.834 ; 21.555) | @@@ [21.555 ; 22.405) | @ ``` #### System.Memory.Constructors.ReadOnlySpanFromMemory ```log [38.889 ; 40.924) | @@@@@@@@@@@@@@ [40.924 ; 41.999) | @@@ [41.999 ; 43.271) | [43.271 ; 44.543) | [44.543 ; 45.815) | [45.815 ; 47.087) | [47.087 ; 48.359) | [48.359 ; 49.823) | [49.823 ; 51.441) | @ [51.441 ; 52.718) | @@@@@@@@@@@@@@ [52.718 ; 53.990) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [53.990 ; 55.276) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [55.276 ; 56.744) | @@@@@@@@@@@@@@@@@@@ [56.744 ; 58.016) | @@@@@@@@@@@@@@ [58.016 ; 59.959) | @@@@@@@ [59.959 ; 61.635) | @@@@ [61.635 ; 62.907) | [62.907 ; 64.717) | [64.717 ; 67.091) | @ [67.091 ; 68.873) | @ [68.873 ; 71.759) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.IndexerSet<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ConcurrentDictionary]() | 308.65 μs | 268.28 μs | 0.87 | | | [Dictionary]() | 200.42 μs | 147.76 μs | 0.74 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.IndexerSet<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.IndexerSet.ConcurrentDictionary(Size: 512) ```log [252808.325 ; 259252.883) | @@@@ [259252.883 ; 269590.436) | @@@@@@@@@@@ [269590.436 ; 275483.949) | @@@ [275483.949 ; 281879.586) | [281879.586 ; 288275.223) | [288275.223 ; 296044.530) | @@@@@@@@@@@ [296044.530 ; 306661.595) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [306661.595 ; 319347.416) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Collections.IndexerSet.Dictionary(Size: 512) ```log [144598.479 ; 148731.203) | @@@@@@@@@@@@@@@@ [148731.203 ; 152047.887) | @@ [152047.887 ; 156180.610) | [156180.610 ; 160313.334) | [160313.334 ; 164446.058) | [164446.058 ; 168578.782) | [168578.782 ; 172711.506) | [172711.506 ; 176844.230) | [176844.230 ; 180976.954) | [180976.954 ; 185109.678) | [185109.678 ; 189573.473) | @@@@@@@@@@@@@@@@ [189573.473 ; 193706.197) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [193706.197 ; 199618.627) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [199618.627 ; 203775.974) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [203775.974 ; 211395.605) | @@@@@@@@@@@@@@@@ [211395.605 ; 219271.869) | @@ [219271.869 ; 227537.317) | [227537.317 ; 239803.268) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Microsoft.Extensions.Logging.Formatting Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [TwoArguments]() | 2.46 μs | 1.85 μs | 0.75 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Microsoft.Extensions.Logging.Formatting*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Microsoft.Extensions.Logging.Formatting.TwoArguments ```log [1730.974 ; 1779.920) | @@@ [1779.920 ; 1824.352) | @@@@@@@@@@ [1824.352 ; 1904.116) | @@@@ [1904.116 ; 1948.548) | [1948.548 ; 1992.980) | [1992.980 ; 2037.411) | [2037.411 ; 2089.871) | @ [2089.871 ; 2135.748) | @@@@@@@ [2135.748 ; 2183.855) | @@@@@@@@@@@@@@@@@@@@@@@ [2183.855 ; 2272.773) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2272.773 ; 2362.630) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2362.630 ; 2433.900) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2433.900 ; 2535.323) | @@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.Concurrent.IsEmpty<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Bag]() | 75.86 ns | 59.93 ns | 0.79 | | | [Bag]() | 79.20 ns | 65.22 ns | 0.82 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.Concurrent.IsEmpty<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Concurrent.IsEmpty.Bag(Size: 512) ```log [58.219 ; 59.408) | @@@@@@@ [59.408 ; 61.283) | @@@@ [61.283 ; 62.798) | @@@@@@ [62.798 ; 65.291) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [65.291 ; 66.764) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [66.764 ; 68.870) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [68.870 ; 71.615) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71.615 ; 73.817) | @@@@@@@@@@@@@ [73.817 ; 76.127) | @@@@@ [76.127 ; 78.411) | [78.411 ; 80.617) | @@@@@@ ``` #### System.Collections.Concurrent.IsEmpty.Bag(Size: 0) ```log [62.493 ; 64.106) | @@@@@@@@ [64.106 ; 65.982) | @@@@@@@@ [65.982 ; 68.359) | @@@@@@@@@@@@@@ [68.359 ; 70.352) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [70.352 ; 71.928) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71.928 ; 74.753) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [74.753 ; 77.144) | @@@@@@@@@@@@ [77.144 ; 79.881) | @@@@@@@@@@@@@@ [79.881 ; 83.093) | @@@ [83.093 ; 85.101) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Runtime.Serialization.Formatters.Tests.Perf_BinaryFormatter Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeLargeList]() | 2.67 secs | 2.32 secs | 0.87 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Runtime.Serialization.Formatters.Tests.Perf_BinaryFormatter*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Runtime.Serialization.Formatters.Tests.Perf_BinaryFormatter.DeserializeLargeList ```log [2246201896.097 ; 2330867984.982) | @@@@@@@@@@@@@@@@ [2330867984.982 ; 2397948562.344) | @ [2397948562.344 ; 2449519131.985) | [2449519131.985 ; 2501089701.625) | [2501089701.625 ; 2556882282.159) | [2556882282.159 ; 2646341490.510) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2646341490.510 ; 2724765221.910) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Diagnostics.Perf_Process Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetProcessesByName]() | 18.91 ms | 16.17 ms | 0.86 | | | [Start]() | 455.09 μs | 380.20 μs | 0.84 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Diagnostics.Perf_Process*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Diagnostics.Perf_Process.GetProcessesByName ```log [16058865.503 ; 16580042.121) | @@@@@@@@@ [16580042.121 ; 17012215.364) | @ [17012215.364 ; 17571269.542) | @@@@@@@@ [17571269.542 ; 18178648.980) | @@@@@@@@@@@@@@@@@@@@@@@ [18178648.980 ; 18846680.863) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18846680.863 ; 19350965.900) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [19350965.900 ; 20022999.210) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Diagnostics.Perf_Process.Start ```log [369574.602 ; 384172.956) | @@@@@@@@@ [384172.956 ; 395573.326) | @@@@ [395573.326 ; 404962.000) | @@@@ [404962.000 ; 418681.288) | @ [418681.288 ; 432854.771) | @@@@@@@@@@@@@@@@@@@@@ [432854.771 ; 450247.504) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [450247.504 ; 463439.523) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [463439.523 ; 482833.483) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [482833.483 ; 494142.636) | @@@@@@@@@@ [494142.636 ; 505254.952) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SerializeObjectProperty]() | 515.59 μs | 366.66 μs | 0.71 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.WriteJson>.SerializeObjectProperty ```log [350083.221 ; 362493.497) | @@@@@ [362493.497 ; 374378.161) | @@@@@@@@@@@ [374378.161 ; 388376.759) | @ [388376.759 ; 400261.423) | [400261.423 ; 412146.087) | [412146.087 ; 424030.750) | [424030.750 ; 435915.414) | [435915.414 ; 447800.078) | [447800.078 ; 459684.741) | [459684.741 ; 471569.405) | [471569.405 ; 483454.069) | [483454.069 ; 495058.781) | @ [495058.781 ; 506820.218) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [506820.218 ; 518704.881) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [518704.881 ; 530276.980) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [530276.980 ; 542249.640) | @@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Numerics.Tests.Perf_Vector4

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[MultiplyOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.MultiplyOperatorBenchmark.html>) 63.75 ns 40.21 ns 0.63
[SubtractOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.SubtractOperatorBenchmark.html>) 65.16 ns 39.17 ns 0.60
[AddFunctionBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.AddFunctionBenchmark.html>) 73.86 ns 51.18 ns 0.69
[LerpBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.LerpBenchmark.html>) 288.39 ns 210.09 ns 0.73
[SubtractFunctionBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.SubtractFunctionBenchmark.html>) 74.43 ns 51.11 ns 0.69
[DivideByScalarOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.DivideByScalarOperatorBenchmark.html>) 96.99 ns 75.11 ns 0.77
[MultiplyByScalarBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.MultiplyByScalarBenchmark.html>) 105.20 ns 82.43 ns 0.78
[DistanceSquaredJitOptimizeCanaryBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.DistanceSquaredJitOptimizeCanaryBenchmark.html>) 118.57 ns 66.88 ns 0.56
[EqualsBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.EqualsBenchmark.html>) 21.34 ns 12.76 ns 0.60
[DivideOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.DivideOperatorBenchmark.html>) 64.56 ns 41.41 ns 0.64
[MultiplyByScalarOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.MultiplyByScalarOperatorBenchmark.html>) 99.85 ns 73.59 ns 0.74
[DistanceSquaredBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.DistanceSquaredBenchmark.html>) 119.28 ns 64.72 ns 0.54
[NegateBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.NegateBenchmark.html>) 86.27 ns 61.95 ns 0.72
[TransformVector3ByMatrix4x4Benchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.TransformVector3ByMatrix4x4Benchmark.html>) 146.02 ns 92.34 ns 0.63
[ClampBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.ClampBenchmark.html>) 196.24 ns 115.29 ns 0.59
[MaxBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.MaxBenchmark.html>) 97.70 ns 49.10 ns 0.50
[AddOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.AddOperatorBenchmark.html>) 68.02 ns 41.21 ns 0.61
[MinBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.MinBenchmark.html>) 88.97 ns 47.99 ns 0.54
[DistanceBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.DistanceBenchmark.html>) 133.36 ns 82.91 ns 0.62
[MultiplyFunctionBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.MultiplyFunctionBenchmark.html>) 81.57 ns 50.67 ns 0.62
[NegateOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.NegateOperatorBenchmark.html>) 74.16 ns 51.34 ns 0.69
[TransformVector2ByMatrix4x4Benchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.TransformVector2ByMatrix4x4Benchmark.html>) 114.37 ns 68.13 ns 0.60
[DivideByScalarBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector4.DivideByScalarBenchmark.html>) 108.51 ns 82.45 ns 0.76

graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Numerics.Tests.Perf_Vector4*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Perf_Vector4.MultiplyOperatorBenchmark ```log [37.113 ; 38.438) | @ [38.438 ; 40.304) | @@@@@@@@@ [40.304 ; 42.163) | @@@@@ [42.163 ; 44.116) | @ [44.116 ; 45.998) | @ [45.998 ; 47.864) | [47.864 ; 49.731) | [49.731 ; 51.597) | [51.597 ; 53.463) | [53.463 ; 55.329) | [55.329 ; 57.672) | [57.672 ; 59.564) | @@@@@@@@@@@@ [59.564 ; 61.430) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61.430 ; 63.568) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [63.568 ; 66.470) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [66.470 ; 68.336) | @@@@@@@@@ [68.336 ; 70.173) | @@@ [70.173 ; 72.040) | [72.040 ; 73.856) | [73.856 ; 75.722) | @@ ``` #### System.Numerics.Tests.Perf_Vector4.SubtractOperatorBenchmark ```log [39.028 ; 40.886) | @@@@@@@@@@@ [40.886 ; 43.046) | @@@@ [43.046 ; 45.687) | @@ [45.687 ; 47.545) | [47.545 ; 49.402) | [49.402 ; 51.260) | [51.260 ; 53.117) | [53.117 ; 54.975) | [54.975 ; 56.833) | [56.833 ; 57.739) | [57.739 ; 59.627) | @@@@@@@@@ [59.627 ; 61.485) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61.485 ; 63.801) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [63.801 ; 65.660) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [65.660 ; 67.561) | @@@@@@@ [67.561 ; 69.506) | @ [69.506 ; 72.639) | @ [72.639 ; 74.496) | @@ [74.496 ; 76.354) | [76.354 ; 78.211) | [78.211 ; 80.078) | [80.078 ; 81.974) | @@ ``` #### System.Numerics.Tests.Perf_Vector4.AddFunctionBenchmark ```log [46.954 ; 48.951) | @@@@@@@@ [48.951 ; 50.036) | [50.036 ; 52.034) | @@@@@@ [52.034 ; 54.490) | @@@ [54.490 ; 56.815) | @ [56.815 ; 58.813) | [58.813 ; 60.811) | [60.811 ; 62.808) | [62.808 ; 65.664) | @@ [65.664 ; 67.661) | [67.661 ; 69.927) | @@@@@@ [69.927 ; 71.925) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71.925 ; 74.342) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [74.342 ; 76.235) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [76.235 ; 78.263) | @@@@@@@@@@@@@@ [78.263 ; 80.872) | @@@ [80.872 ; 82.947) | @ [82.947 ; 86.339) | @ [86.339 ; 90.026) | @ ``` #### System.Numerics.Tests.Perf_Vector4.LerpBenchmark ```log [209.535 ; 215.676) | @@@@@@@@@@@ [215.676 ; 226.158) | @@@@@@ [226.158 ; 231.145) | @ [231.145 ; 237.286) | [237.286 ; 243.427) | [243.427 ; 249.569) | [249.569 ; 255.710) | [255.710 ; 261.851) | [261.851 ; 270.605) | [270.605 ; 276.746) | @@ [276.746 ; 283.111) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [283.111 ; 289.252) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [289.252 ; 295.533) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [295.533 ; 301.567) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [301.567 ; 309.841) | @@@@@@ [309.841 ; 321.157) | @@@@@@@@ [321.157 ; 330.836) | @@ ``` #### System.Numerics.Tests.Perf_Vector4.SubtractFunctionBenchmark ```log [48.908 ; 50.043) | @@ [50.043 ; 51.810) | @@@@@@@@@@@@ [51.810 ; 54.169) | @ [54.169 ; 56.893) | @@ [56.893 ; 58.660) | [58.660 ; 60.427) | [60.427 ; 62.194) | [62.194 ; 63.960) | [63.960 ; 66.069) | [66.069 ; 67.835) | @@ [67.835 ; 70.008) | @@@@@@@@@@@@@@@@@@@@ [70.008 ; 71.775) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71.775 ; 74.676) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [74.676 ; 76.980) | @@@@@@@@@@@@@@@@@@@@@@@@ [76.980 ; 78.747) | @@@@@@@@@@ [78.747 ; 81.428) | @@ [81.428 ; 83.195) | @@@ [83.195 ; 85.717) | [85.717 ; 87.484) | @ ``` #### System.Numerics.Tests.Perf_Vector4.DivideByScalarOperatorBenchmark ```log [ 73.332 ; 75.261) | @@@@@@@@@@ [ 75.261 ; 77.298) | @@@ [ 77.298 ; 79.418) | @ [ 79.418 ; 81.347) | @@@ [ 81.347 ; 83.276) | [ 83.276 ; 85.205) | [ 85.205 ; 87.134) | [ 87.134 ; 89.063) | [ 89.063 ; 90.992) | [ 90.992 ; 93.044) | @@@@@@@@@@@@@ [ 93.044 ; 94.973) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 94.973 ; 97.210) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 97.210 ; 101.189) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [101.189 ; 105.311) | @@@@@@@@@ [105.311 ; 109.368) | @@@@@ [109.368 ; 113.358) | @@@@@ [113.358 ; 119.045) | @ ``` #### System.Numerics.Tests.Perf_Vector4.MultiplyByScalarBenchmark ```log [ 80.235 ; 82.015) | @ [ 82.015 ; 83.993) | @@@@@@@@@ [ 83.993 ; 86.965) | @ [ 86.965 ; 88.943) | @ [ 88.943 ; 91.780) | @ [ 91.780 ; 95.166) | @@@ [ 95.166 ; 98.809) | [ 98.809 ; 102.343) | @@@@@@@@@@@@@@@@@ [102.343 ; 104.693) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [104.693 ; 108.860) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [108.860 ; 112.640) | @@@@@@@@@@@@@@@@@@@@@ [112.640 ; 116.517) | @@@@@ [116.517 ; 120.948) | @@@@@@@ [120.948 ; 123.749) | @@ [123.749 ; 126.577) | [126.577 ; 131.111) | @ [131.111 ; 134.764) | @ ``` #### System.Numerics.Tests.Perf_Vector4.DistanceSquaredJitOptimizeCanaryBenchmark ```log [ 63.038 ; 67.395) | @@@@@@@@@@@@@@@@ [ 67.395 ; 72.143) | @@ [ 72.143 ; 76.500) | [ 76.500 ; 80.857) | [ 80.857 ; 85.214) | [ 85.214 ; 89.571) | [ 89.571 ; 93.927) | [ 93.927 ; 98.284) | [ 98.284 ; 102.641) | [102.641 ; 106.333) | [106.333 ; 110.965) | @@@@ [110.965 ; 115.269) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [115.269 ; 120.115) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [120.115 ; 124.472) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [124.472 ; 130.710) | @@@@@@@@@@@@@ [130.710 ; 134.492) | [134.492 ; 138.849) | @@@ ``` #### System.Numerics.Tests.Perf_Vector4.EqualsBenchmark ```log [11.533 ; 12.186) | @@ [12.186 ; 12.976) | @@@@@@@@@@@@ [12.976 ; 13.584) | @@@ [13.584 ; 14.214) | @ [14.214 ; 14.822) | [14.822 ; 15.431) | [15.431 ; 16.039) | [16.039 ; 16.648) | [16.648 ; 17.509) | @ [17.509 ; 18.403) | @@@ [18.403 ; 19.002) | @@@@@ [19.002 ; 19.612) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [19.612 ; 20.220) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20.220 ; 20.831) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20.831 ; 21.481) | @@@@@@@@@@@@ [21.481 ; 21.940) | @ [21.940 ; 22.549) | @@ [22.549 ; 23.022) | [23.022 ; 23.630) | @ [23.630 ; 24.335) | @ ``` #### System.Numerics.Tests.Perf_Vector4.DivideOperatorBenchmark ```log [36.621 ; 38.360) | @ [38.360 ; 39.888) | [39.888 ; 41.627) | @@@@@@@@@@@@ [41.627 ; 43.177) | @@ [43.177 ; 44.916) | @ [44.916 ; 47.482) | @ [47.482 ; 49.221) | [49.221 ; 50.960) | [50.960 ; 52.698) | [52.698 ; 54.159) | [54.159 ; 55.898) | @ [55.898 ; 58.002) | @ [58.002 ; 59.629) | @@@@@@@@@@@@@@@@ [59.629 ; 61.367) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61.367 ; 63.725) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [63.725 ; 65.488) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [65.488 ; 67.243) | @@@@@@@@@@@ [67.243 ; 69.164) | @@@@@ [69.164 ; 71.167) | @@ [71.167 ; 73.668) | @ ``` #### System.Numerics.Tests.Perf_Vector4.MultiplyByScalarOperatorBenchmark ```log [ 70.214 ; 71.664) | @ [ 71.664 ; 73.804) | @@@@@@@@@@@ [ 73.804 ; 75.806) | @@@@@ [ 75.806 ; 77.555) | @ [ 77.555 ; 79.694) | [ 79.694 ; 81.833) | [ 81.833 ; 83.972) | [ 83.972 ; 86.111) | [ 86.111 ; 88.251) | [ 88.251 ; 91.053) | @@ [ 91.053 ; 92.932) | @@@@@@@@@@@@@ [ 92.932 ; 95.071) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 95.071 ; 97.331) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 97.331 ; 99.474) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 99.474 ; 101.727) | @@@@@@@@@@@@@@@@@@@ [101.727 ; 104.241) | @@@@@ [104.241 ; 106.380) | @@@ [106.380 ; 109.802) | [109.802 ; 114.518) | @@@@@ ``` #### System.Numerics.Tests.Perf_Vector4.DistanceSquaredBenchmark ```log [ 59.949 ; 63.620) | @ [ 63.620 ; 67.932) | @@@@@@@@@@@@@ [ 67.932 ; 71.566) | @@@ [ 71.566 ; 75.304) | [ 75.304 ; 79.615) | @ [ 79.615 ; 83.927) | [ 83.927 ; 88.239) | [ 88.239 ; 92.550) | [ 92.550 ; 96.862) | [ 96.862 ; 101.173) | [101.173 ; 105.485) | [105.485 ; 107.334) | [107.334 ; 111.861) | @@@@ [111.861 ; 115.902) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [115.902 ; 120.213) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [120.213 ; 123.570) | @@@@@@@@@@@ [123.570 ; 127.881) | @@@@@@@@@@@@@@@@@ [127.881 ; 131.335) | @ [131.335 ; 135.647) | @@@@ [135.647 ; 139.727) | @ ``` #### System.Numerics.Tests.Perf_Vector4.NegateBenchmark ```log [57.033 ; 58.739) | @@@@@@@@ [58.739 ; 61.612) | @@@ [61.612 ; 62.947) | @ [62.947 ; 64.653) | @@ [64.653 ; 66.358) | [66.358 ; 68.064) | [68.064 ; 69.769) | [69.769 ; 71.372) | [71.372 ; 73.077) | @ [73.077 ; 75.304) | @@@ [75.304 ; 77.183) | @ [77.183 ; 78.864) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [78.864 ; 80.569) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [80.569 ; 82.824) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [82.824 ; 84.615) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [84.615 ; 86.415) | @@@@@@@@ [86.415 ; 88.387) | @@@@@@@ [88.387 ; 91.757) | @@@@ [91.757 ; 94.184) | @ ``` #### System.Numerics.Tests.Perf_Vector4.TransformVector3ByMatrix4x4Benchmark ```log [ 88.945 ; 93.445) | @@@@@@@@@@@@ [ 93.445 ; 97.968) | @@@@@@ [ 97.968 ; 102.468) | [102.468 ; 106.968) | [106.968 ; 111.468) | [111.468 ; 115.969) | [115.969 ; 120.469) | [120.469 ; 124.969) | [124.969 ; 129.469) | [129.469 ; 133.969) | [133.969 ; 140.541) | @@@@@ [140.541 ; 145.041) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [145.041 ; 149.463) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [149.463 ; 154.622) | @@@@@@@@@@@@ [154.622 ; 159.122) | @@@ [159.122 ; 163.149) | @ [163.149 ; 167.649) | [167.649 ; 172.149) | [172.149 ; 176.649) | [176.649 ; 181.149) | [181.149 ; 188.544) | @@ [188.544 ; 193.045) | [193.045 ; 197.545) | [197.545 ; 201.296) | [201.296 ; 205.796) | @ ``` #### System.Numerics.Tests.Perf_Vector4.ClampBenchmark ```log [112.498 ; 118.866) | @@@@@@@@@@@@@@@ [118.866 ; 122.864) | @@ [122.864 ; 128.604) | [128.604 ; 134.972) | @ [134.972 ; 141.340) | [141.340 ; 147.708) | [147.708 ; 154.076) | [154.076 ; 160.444) | [160.444 ; 166.811) | [166.811 ; 173.179) | [173.179 ; 178.246) | [178.246 ; 184.737) | @@@@@@@@@ [184.737 ; 192.061) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [192.061 ; 198.429) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [198.429 ; 208.163) | @@@@@@@@@@@@@@@@@@@@@@@@ [208.163 ; 214.531) | @@@@ [214.531 ; 220.898) | [220.898 ; 225.426) | [225.426 ; 231.794) | @ ``` #### System.Numerics.Tests.Perf_Vector4.MaxBenchmark ```log [ 44.214 ; 46.297) | @ [ 46.297 ; 49.161) | @@@@@@@@@@@@@@@@ [ 49.161 ; 52.981) | @ [ 52.981 ; 55.845) | [ 55.845 ; 58.710) | [ 58.710 ; 61.574) | [ 61.574 ; 64.439) | [ 64.439 ; 67.304) | [ 67.304 ; 70.168) | [ 70.168 ; 73.033) | [ 73.033 ; 75.315) | [ 75.315 ; 77.814) | @ [ 77.814 ; 79.891) | @@@@ [ 79.891 ; 82.742) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 82.742 ; 85.606) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 85.606 ; 88.521) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 88.521 ; 91.589) | @@@@ [ 91.589 ; 95.711) | @ [ 95.711 ; 99.134) | @ [ 99.134 ; 101.998) | [101.998 ; 106.635) | [106.635 ; 109.499) | @ ``` #### System.Numerics.Tests.Perf_Vector4.AddOperatorBenchmark ```log [37.749 ; 39.566) | @@@@@@@@@@@@@@ [39.566 ; 40.705) | [40.705 ; 42.522) | @@ [42.522 ; 44.340) | [44.340 ; 46.157) | [46.157 ; 47.975) | [47.975 ; 49.258) | [49.258 ; 51.075) | @ [51.075 ; 52.893) | [52.893 ; 54.710) | [54.710 ; 56.625) | [56.625 ; 57.931) | @@ [57.931 ; 59.516) | @@@@@@@@@@@@ [59.516 ; 61.334) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61.334 ; 63.648) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [63.648 ; 65.431) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [65.431 ; 67.551) | @@@@@@@@@ [67.551 ; 69.368) | @@@@@ [69.368 ; 71.186) | [71.186 ; 72.748) | [72.748 ; 74.566) | @ [74.566 ; 76.082) | [76.082 ; 77.899) | @ ``` #### System.Numerics.Tests.Perf_Vector4.MinBenchmark ```log [ 45.184 ; 48.276) | @@@@@@@@@@@@@@@@ [ 48.276 ; 50.255) | [ 50.255 ; 53.347) | @@ [ 53.347 ; 56.439) | [ 56.439 ; 59.531) | [ 59.531 ; 62.623) | [ 62.623 ; 65.715) | [ 65.715 ; 68.808) | [ 68.808 ; 71.900) | [ 71.900 ; 74.992) | [ 74.992 ; 76.405) | [ 76.405 ; 79.236) | @@ [ 79.236 ; 82.310) | @@@@@@@@@@@@@ [ 82.310 ; 85.403) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 85.403 ; 88.329) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 88.329 ; 91.477) | @@@@@@@@@@@@@@@@@@@@ [ 91.477 ; 95.624) | @@@@@@@@@@ [ 95.624 ; 100.322) | [100.322 ; 103.414) | @ ``` #### System.Numerics.Tests.Perf_Vector4.DistanceBenchmark ```log [ 79.506 ; 83.697) | @@@@@@@@@@@@@ [ 83.697 ; 87.964) | @@@ [ 87.964 ; 92.154) | @@ [ 92.154 ; 96.345) | [ 96.345 ; 100.535) | [100.535 ; 104.725) | [104.725 ; 108.915) | [108.915 ; 113.106) | [113.106 ; 117.296) | [117.296 ; 121.319) | [121.319 ; 125.587) | @@@@ [125.587 ; 129.341) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [129.341 ; 133.531) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [133.531 ; 137.701) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [137.701 ; 141.985) | @@@@@@@@@@@@@ [141.985 ; 145.571) | @@@@@@ [145.571 ; 149.933) | @@@ [149.933 ; 155.172) | @ ``` #### System.Numerics.Tests.Perf_Vector4.MultiplyFunctionBenchmark ```log [47.015 ; 48.991) | @@@@@@@@@@ [48.991 ; 51.323) | @@@@@@ [51.323 ; 53.475) | @@ [53.475 ; 55.451) | [55.451 ; 57.427) | [57.427 ; 59.403) | [59.403 ; 61.379) | [61.379 ; 63.354) | [63.354 ; 66.136) | [66.136 ; 68.207) | @ [68.207 ; 69.727) | @@@@@@@@@ [69.727 ; 72.321) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [72.321 ; 74.297) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [74.297 ; 76.206) | @@@@@@@@@@@@@@@@@@@@@@@@@ [76.206 ; 78.354) | @@@@@@@@@@@@ [78.354 ; 80.456) | @@@@@@ [80.456 ; 82.848) | @@ [82.848 ; 85.328) | @ [85.328 ; 87.304) | [87.304 ; 89.803) | @@ ``` #### System.Numerics.Tests.Perf_Vector4.NegateOperatorBenchmark ```log [48.334 ; 49.592) | @ [49.592 ; 51.534) | @@@@@@@@@@@@@@@ [51.534 ; 52.751) | [52.751 ; 54.694) | @ [54.694 ; 56.636) | [56.636 ; 59.648) | [59.648 ; 61.591) | @ [61.591 ; 63.534) | [63.534 ; 65.477) | [65.477 ; 67.419) | [67.419 ; 69.152) | @ [69.152 ; 71.094) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71.094 ; 73.037) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [73.037 ; 75.005) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [75.005 ; 77.086) | @@@@@@@@@@@@ [77.086 ; 79.233) | @@@@@@@@@ [79.233 ; 82.351) | @@@@ [82.351 ; 84.183) | @ [84.183 ; 86.126) | [86.126 ; 88.762) | @@ ``` #### System.Numerics.Tests.Perf_Vector4.TransformVector2ByMatrix4x4Benchmark ```log [ 66.429 ; 70.204) | @@@@@@@@@@@@@@ [ 70.204 ; 72.848) | @@@@ [ 72.848 ; 76.623) | [ 76.623 ; 80.398) | [ 80.398 ; 84.172) | [ 84.172 ; 87.947) | [ 87.947 ; 91.722) | [ 91.722 ; 95.496) | [ 95.496 ; 99.271) | [ 99.271 ; 103.046) | [103.046 ; 106.356) | [106.356 ; 110.130) | @@@ [110.130 ; 115.143) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [115.143 ; 118.809) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [118.809 ; 122.770) | @@@@@@@@@@@@@@@ [122.770 ; 126.770) | @@@@@@@ [126.770 ; 132.073) | [132.073 ; 135.848) | @ ``` #### System.Numerics.Tests.Perf_Vector4.DivideByScalarBenchmark ```log [ 82.203 ; 84.297) | @@@@@@@@@@@ [ 84.297 ; 87.190) | @@@ [ 87.190 ; 89.224) | @ [ 89.224 ; 91.317) | [ 91.317 ; 93.411) | [ 93.411 ; 95.504) | [ 95.504 ; 98.045) | @@@ [ 98.045 ; 100.838) | @ [100.838 ; 104.526) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [104.526 ; 107.414) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [107.414 ; 111.313) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [111.313 ; 113.934) | @@@ [113.934 ; 117.021) | @@@@@@@@@@@ [117.021 ; 120.413) | @@@@ [120.413 ; 127.520) | @@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in LinqBenchmarks Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Where01LinqQueryX]() | 4.37 secs | 3.42 secs | 0.78 | | | [Order00LinqMethodX]() | 1.76 secs | 1.49 secs | 0.85 | | | [Order00LinqQueryX]() | 1.76 secs | 1.50 secs | 0.85 | | | [Where01LinqMethodNestedX]() | 4.66 secs | 4.02 secs | 0.86 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'LinqBenchmarks*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### LinqBenchmarks.Where01LinqQueryX ```log [3375315883.604 ; 3444316038.437) | @@@@@@@@@@ [3444316038.437 ; 3576075105.210) | @@@@@ [3576075105.210 ; 3699545523.600) | @ [3699545523.600 ; 3837545833.265) | [3837545833.265 ; 3954540103.022) | @ [3954540103.022 ; 4048717490.504) | @@@@@@@@@@@@ [4048717490.504 ; 4204600770.107) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4204600770.107 ; 4313340099.646) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4313340099.646 ; 4474725906.294) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4474725906.294 ; 4590787275.697) | @@@@@@@@ [4590787275.697 ; 4713584166.588) | @@ [4713584166.588 ; 4938087425.550) | @@ ``` #### LinqBenchmarks.Order00LinqMethodX ```log [1480938296.094 ; 1532520888.174) | @@@@@@@@@@@@@@@@@ [1532520888.174 ; 1573459042.945) | [1573459042.945 ; 1614397197.717) | [1614397197.717 ; 1655335352.489) | [1655335352.489 ; 1704446726.094) | [1704446726.094 ; 1761779761.242) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1761779761.242 ; 1818041806.147) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1818041806.147 ; 1891536884.050) | @@@@@@@@@@@ ``` #### LinqBenchmarks.Order00LinqQueryX ```log [1464733001.753 ; 1506663042.076) | @@@@@@@@@@ [1506663042.076 ; 1546329561.146) | @@@@@@@@ [1546329561.146 ; 1587055075.276) | [1587055075.276 ; 1627780589.406) | [1627780589.406 ; 1668506103.536) | [1668506103.536 ; 1726173356.709) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [1726173356.709 ; 1789098309.794) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1789098309.794 ; 1826895470.455) | @@@@@@@@@@@@@@@@@ [1826895470.455 ; 1874031301.790) | @@@ [1874031301.790 ; 1943437706.318) | @ ``` #### LinqBenchmarks.Where01LinqMethodNestedX ```log [3963668525.918 ; 4104999263.475) | @@@@@@@@@@@@ [4104999263.475 ; 4243941500.713) | @@@@@ [4243941500.713 ; 4366993742.379) | [4366993742.379 ; 4490045984.045) | [4490045984.045 ; 4669707168.260) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4669707168.260 ; 4814873803.674) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4814873803.674 ; 4995338206.389) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4995338206.389 ; 5114190894.545) | @@@ [5114190894.545 ; 5235298373.483) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in SIMD.RayTracerBench Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Bench]() | 4.59 secs | 3.13 secs | 0.68 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'SIMD.RayTracerBench*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### SIMD.RayTracerBench.Bench ```log [2954531275.323 ; 3018623714.956) | @ [3018623714.956 ; 3135927991.510) | @@@@@@@@@@@@@@@@ [3135927991.510 ; 3242601805.277) | @ [3242601805.277 ; 3359906081.831) | [3359906081.831 ; 3477210358.385) | [3477210358.385 ; 3594514634.939) | [3594514634.939 ; 3711818911.492) | [3711818911.492 ; 3829123188.046) | [3829123188.046 ; 3946427464.600) | [3946427464.600 ; 4063731741.154) | [4063731741.154 ; 4181036017.708) | [4181036017.708 ; 4298340294.262) | [4298340294.262 ; 4443264629.223) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4443264629.223 ; 4560568905.777) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4560568905.777 ; 4758113839.210) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.Sort<BigStruct> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [List]() | 876.96 μs | 768.69 μs | 0.88 | | | [Array_Comparison]() | 333.89 μs | 257.06 μs | 0.77 | | | [LinqQuery]() | 1.00 ms | 879.80 μs | 0.88 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.Sort<BigStruct>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Sort.List(Size: 512) ```log [738650.470 ; 759423.231) | @@@@@@@@@@@@@@@ [759423.231 ; 778969.139) | @@@ [778969.139 ; 799187.380) | [799187.380 ; 815332.579) | @ [815332.579 ; 840801.336) | @@@@@@@@@@@ [840801.336 ; 870442.918) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [870442.918 ; 901834.360) | @@@@@@@@@@@@@@@@@@@@ ``` #### System.Collections.Sort.Array_Comparison(Size: 512) ```log [247013.057 ; 257505.310) | @@@@@@@@@@@@ [257505.310 ; 264397.930) | @@@@@ [264397.930 ; 270180.063) | [270180.063 ; 275962.196) | [275962.196 ; 285741.943) | [285741.943 ; 291524.076) | @ [291524.076 ; 297306.209) | [297306.209 ; 303088.342) | [303088.342 ; 312636.922) | [312636.922 ; 319208.990) | @ [319208.990 ; 331069.958) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [331069.958 ; 343232.899) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [343232.899 ; 354838.996) | @@@@@@ ``` #### System.Collections.Sort.LinqQuery(Size: 512) ```log [ 862382.930 ; 884917.761) | @@@@@@@@@@@@@ [ 884917.761 ; 909591.291) | @@@@ [ 909591.291 ; 945647.581) | @ [ 945647.581 ; 974703.944) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [ 974703.944 ; 1008798.982) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1008798.982 ; 1031097.019) | @@@@@@@@@@ [1031097.019 ; 1067987.796) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.CreateAddAndRemove<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Dictionary]() | 451.56 μs | 339.25 μs | 0.75 | | | [HashSet]() | 434.99 μs | 325.65 μs | 0.75 | | | [SortedSet]() | 3.23 ms | 2.89 ms | 0.89 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.CreateAddAndRemove<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.CreateAddAndRemove.Dictionary(Size: 512) ```log [333700.237 ; 342052.564) | @@@@@@@@@@@@@@ [342052.564 ; 351121.837) | @@@@ [351121.837 ; 359474.165) | [359474.165 ; 367826.492) | [367826.492 ; 376178.819) | [376178.819 ; 384531.147) | [384531.147 ; 392883.474) | [392883.474 ; 401235.802) | [401235.802 ; 409588.129) | [409588.129 ; 417940.456) | [417940.456 ; 427491.761) | [427491.761 ; 441960.598) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [441960.598 ; 457028.040) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [457028.040 ; 475036.109) | @@@@@@@@@@@@ [475036.109 ; 488028.034) | @ ``` #### System.Collections.CreateAddAndRemove.HashSet(Size: 512) ```log [314865.354 ; 322887.211) | @@@@@@@@@@@ [322887.211 ; 332593.761) | @@@@@@ [332593.761 ; 346025.772) | @ [346025.772 ; 354047.630) | [354047.630 ; 362069.487) | [362069.487 ; 370091.345) | [370091.345 ; 378113.203) | [378113.203 ; 386135.060) | [386135.060 ; 394156.918) | [394156.918 ; 402178.775) | [402178.775 ; 410817.444) | @@@@@@@@@@@@@@ [410817.444 ; 425297.393) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [425297.393 ; 441685.781) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [441685.781 ; 466585.123) | @@@@@@ ``` #### System.Collections.CreateAddAndRemove.SortedSet(Size: 512) ```log [2849867.068 ; 2946017.292) | @@@@@@@@@@@@@@ [2946017.292 ; 3009192.391) | @@@ [3009192.391 ; 3121643.316) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3121643.316 ; 3221418.928) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3221418.928 ; 3299613.031) | @@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Json_FromString<IndexViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [JsonNet_]() | 1.71 ms | 1.36 ms | 0.79 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Json_FromString<IndexViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Json_FromString.JsonNet_ ```log [1332668.000 ; 1365905.122) | @@@@@@@@@@@@@@@ [1365905.122 ; 1420098.173) | @@@ [1420098.173 ; 1473296.188) | [1473296.188 ; 1526494.203) | [1526494.203 ; 1579692.218) | [1579692.218 ; 1632890.233) | [1632890.233 ; 1676327.077) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1676327.077 ; 1738833.874) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Memory.Span<Int32>

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[ToArray](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Memory.Span(Int32).ToArray(Size%3a%20512).html>) 1.15 μs 825.73 ns 0.72
[BinarySearch](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Memory.Span(Int32).BinarySearch(Size%3a%20512).html>) 441.41 ns 356.35 ns 0.81
[StartsWith](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Memory.Span(Int32).StartsWith(Size%3a%20512).html>) 1.85 μs 1.14 μs 0.61
[EndsWith](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Memory.Span(Int32).EndsWith(Size%3a%20512).html>) 1.86 μs 1.15 μs 0.62
[SequenceEqual](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Memory.Span(Int32).SequenceEqual(Size%3a%20512).html>) 3.49 μs 2.17 μs 0.62
[GetPinnableReference](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Memory.Span(Int32).GetPinnableReference(Size%3a%20512).html>) 21.91 ns 19.73 ns 0.90

graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Memory.Span&lt;Int32&gt;*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.Span.ToArray(Size: 512) ```log [ 809.875 ; 848.673) | @@@@@@@@@@@ [ 848.673 ; 872.191) | @@@@@@ [ 872.191 ; 896.258) | [ 896.258 ; 920.325) | [ 920.325 ; 944.392) | [ 944.392 ; 968.459) | [ 968.459 ; 992.526) | [ 992.526 ; 1016.593) | [1016.593 ; 1040.660) | [1040.660 ; 1070.624) | [1070.624 ; 1097.145) | @@@@@@@ [1097.145 ; 1120.419) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1120.419 ; 1144.486) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1144.486 ; 1168.423) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1168.423 ; 1215.291) | @@@@@@@@@@ [1215.291 ; 1291.912) | @@ ``` #### System.Memory.Span.BinarySearch(Size: 512) ```log [345.995 ; 360.473) | @@@@@@@@@@@@@@ [360.473 ; 373.260) | @@@ [373.260 ; 386.247) | [386.247 ; 394.050) | @ [394.050 ; 406.998) | [406.998 ; 418.037) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [418.037 ; 433.645) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [433.645 ; 448.835) | @@@@@@@@@@@@@@ [448.835 ; 462.526) | @@@ [462.526 ; 477.168) | @ [477.168 ; 490.117) | [490.117 ; 503.065) | [503.065 ; 516.013) | [516.013 ; 537.136) | @@ ``` #### System.Memory.Span.StartsWith(Size: 512) ```log [1121.413 ; 1182.180) | @@@@@@@@@@@@@@@@@@ [1182.180 ; 1242.947) | [1242.947 ; 1303.714) | [1303.714 ; 1364.481) | [1364.481 ; 1425.248) | [1425.248 ; 1486.015) | [1486.015 ; 1546.782) | [1546.782 ; 1607.549) | [1607.549 ; 1668.316) | [1668.316 ; 1729.083) | [1729.083 ; 1800.729) | @@@@ [1800.729 ; 1861.496) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1861.496 ; 1908.381) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1908.381 ; 1959.920) | [1959.920 ; 2020.687) | @@@ [2020.687 ; 2086.955) | @ [2086.955 ; 2147.722) | [2147.722 ; 2208.489) | [2208.489 ; 2269.256) | [2269.256 ; 2330.023) | [2330.023 ; 2390.790) | [2390.790 ; 2451.557) | [2451.557 ; 2512.324) | [2512.324 ; 2573.091) | [2573.091 ; 2633.858) | [2633.858 ; 2694.625) | [2694.625 ; 2755.392) | [2755.392 ; 2851.339) | [2851.339 ; 2912.106) | @ ``` #### System.Memory.Span.EndsWith(Size: 512) ```log [1137.164 ; 1193.886) | @@@@@@@@@@@@@@@@@@ [1193.886 ; 1250.608) | [1250.608 ; 1307.330) | [1307.330 ; 1364.052) | [1364.052 ; 1420.774) | [1420.774 ; 1477.496) | [1477.496 ; 1534.218) | [1534.218 ; 1590.940) | [1590.940 ; 1647.662) | [1647.662 ; 1704.384) | [1704.384 ; 1761.107) | [1761.107 ; 1805.820) | @@@ [1805.820 ; 1862.542) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1862.542 ; 1943.193) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1943.193 ; 1999.915) | @@ [1999.915 ; 2081.585) | @@ [2081.585 ; 2164.462) | [2164.462 ; 2221.184) | @ ``` #### System.Memory.Span.SequenceEqual(Size: 512) ```log [2110.865 ; 2216.981) | @@@@@@@@@@@@@@@@@@ [2216.981 ; 2323.096) | [2323.096 ; 2429.212) | [2429.212 ; 2535.327) | [2535.327 ; 2641.443) | [2641.443 ; 2747.558) | [2747.558 ; 2853.674) | [2853.674 ; 2959.789) | [2959.789 ; 3065.905) | [3065.905 ; 3172.020) | [3172.020 ; 3278.135) | [3278.135 ; 3384.251) | [3384.251 ; 3534.076) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3534.076 ; 3640.112) | [3640.112 ; 3776.721) | @@@@@@ [3776.721 ; 3882.836) | @ ``` #### System.Memory.Span.GetPinnableReference(Size: 512) ```log [19.557 ; 19.975) | @@@@@@ [19.975 ; 20.415) | @@@@@@@@@@@ [20.415 ; 21.020) | @ [21.020 ; 21.515) | [21.515 ; 22.196) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.196 ; 22.728) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.728 ; 23.614) | @@@@@@@@@@@@@@@@@@@@@ [23.614 ; 24.272) | @@@ [24.272 ; 25.073) | @@@@@@ [25.073 ; 25.816) | [25.816 ; 27.084) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in GuardedDevirtualization.ThreeClassVirtual Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Call]() | 21.80 ns | 18.08 ns | 0.83 | | | [Call]() | 22.05 ns | 18.17 ns | 0.82 | | | [Call]() | 21.63 ns | 17.96 ns | 0.83 | | | [Call]() | 21.71 ns | 18.13 ns | 0.84 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'GuardedDevirtualization.ThreeClassVirtual*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### GuardedDevirtualization.ThreeClassVirtual.Call(testInput: pB=0.67 pD=0.33) ```log [18.035 ; 18.727) | @@@@@@@@@@@@@@@@ [18.727 ; 19.329) | @@ [19.329 ; 20.013) | [20.013 ; 20.697) | [20.697 ; 21.238) | [21.238 ; 21.928) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [21.928 ; 22.646) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.646 ; 23.182) | @@@@@@@@@@@@@@@@@@ [23.182 ; 23.749) | @@@@@@@@@@@@@ [23.749 ; 24.487) | @@@@ [24.487 ; 25.099) | @@@@ [25.099 ; 25.608) | @@ ``` #### GuardedDevirtualization.ThreeClassVirtual.Call(testInput: pB=0.33 pD=0.00) ```log [17.909 ; 18.300) | @@@@@ [18.300 ; 18.858) | @@@@@@@@@ [18.858 ; 19.527) | @@ [19.527 ; 20.184) | @ [20.184 ; 20.811) | @ [20.811 ; 21.490) | @@@@@@@ [21.490 ; 22.308) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.308 ; 23.123) | @@@@@@@@@@@@@@@@@@@@@ [23.123 ; 23.632) | @@@@@@@@@@@@@@ [23.632 ; 24.397) | @@@@@@@ [24.397 ; 24.903) | @@ [24.903 ; 25.835) | @ ``` #### GuardedDevirtualization.ThreeClassVirtual.Call(testInput: pB=0.00 pD=1.00) ```log [17.863 ; 18.385) | @@@ [18.385 ; 19.118) | @@@@@@@@@@@@ [19.118 ; 19.557) | @@ [19.557 ; 20.224) | @ [20.224 ; 20.944) | [20.944 ; 21.458) | @@ [21.458 ; 22.292) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.292 ; 23.126) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.126 ; 23.905) | @@@@@@@@@@@@@@@@@@@ [23.905 ; 24.547) | @@@@@ [24.547 ; 25.403) | @@@@@ [25.403 ; 26.123) | [26.123 ; 26.843) | [26.843 ; 27.563) | [27.563 ; 28.495) | @ ``` #### GuardedDevirtualization.ThreeClassVirtual.Call(testInput: pB=0.00 pD=0.67) ```log [17.965 ; 18.337) | @@@ [18.337 ; 18.953) | @@@@@@@@@@@@ [18.953 ; 19.566) | @@@ [19.566 ; 20.184) | [20.184 ; 20.803) | [20.803 ; 21.494) | @@@@@@ [21.494 ; 22.327) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.327 ; 23.096) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.096 ; 23.760) | @@@@@@@@@@ [23.760 ; 24.844) | @@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.IO.Tests.Perf_StreamWriter Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [WriteFormat]() | 2.75 μs | 2.02 μs | 0.73 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.IO.Tests.Perf_StreamWriter*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.IO.Tests.Perf_StreamWriter.WriteFormat ```log [1957.023 ; 2004.827) | @ [2004.827 ; 2057.741) | @@@@@@@@@@@@@@@ [2057.741 ; 2145.155) | @ [2145.155 ; 2198.070) | [2198.070 ; 2250.984) | [2250.984 ; 2303.899) | [2303.899 ; 2356.813) | [2356.813 ; 2409.728) | [2409.728 ; 2462.643) | [2462.643 ; 2555.437) | @@@@@ [2555.437 ; 2659.385) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2659.385 ; 2721.315) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2721.315 ; 2815.878) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.TryGetValueFalse<String, String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Dictionary]() | 189.07 μs | 132.60 μs | 0.70 | | | [ConcurrentDictionary]() | 161.20 μs | 125.68 μs | 0.78 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.TryGetValueFalse<String, String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.TryGetValueFalse.Dictionary(Size: 512) ```log [132412.910 ; 136069.730) | @@@@@@@@@@@@@@@@ [136069.730 ; 139830.571) | @@ [139830.571 ; 143487.391) | [143487.391 ; 147144.211) | [147144.211 ; 150801.031) | [150801.031 ; 154457.850) | [154457.850 ; 158114.670) | [158114.670 ; 161771.490) | [161771.490 ; 165428.310) | [165428.310 ; 169085.130) | [169085.130 ; 174685.643) | @@@@@@@@@@@@@@ [174685.643 ; 178342.462) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [178342.462 ; 182569.695) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [182569.695 ; 192011.361) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Collections.TryGetValueFalse.ConcurrentDictionary(Size: 512) ```log [124218.605 ; 127006.689) | @@@@@@@@@@@@ [127006.689 ; 130090.320) | @@@@ [130090.320 ; 135481.185) | @@ [135481.185 ; 138269.269) | [138269.269 ; 141057.353) | [141057.353 ; 143845.437) | [143845.437 ; 146633.521) | [146633.521 ; 149421.605) | [149421.605 ; 152209.689) | [152209.689 ; 157895.532) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [157895.532 ; 164130.645) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [164130.645 ; 169666.237) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [169666.237 ; 174382.267) | @ [174382.267 ; 179958.435) | [179958.435 ; 184953.712) | @ [184953.712 ; 190586.264) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.IO.Tests.Perf_Path Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetDirectoryName]() | 655.47 ns | 549.49 ns | 0.84 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.IO.Tests.Perf_Path*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.IO.Tests.Perf_Path.GetDirectoryName ```log [540.858 ; 558.966) | @@@@@@@@@@@@@ [558.966 ; 570.381) | @@@ [570.381 ; 589.999) | @ [589.999 ; 607.735) | [607.735 ; 625.471) | [625.471 ; 639.490) | [639.490 ; 661.313) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [661.313 ; 684.309) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [684.309 ; 707.408) | @@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in GuardedDevirtualization.TwoClassInterface Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Call]() | 21.89 ns | 18.60 ns | 0.85 | | | [Call]() | 21.94 ns | 18.64 ns | 0.85 | | | [Call]() | 23.31 ns | 18.48 ns | 0.79 | | | [Call]() | 22.02 ns | 18.46 ns | 0.84 | | | [Call]() | 23.06 ns | 19.44 ns | 0.84 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'GuardedDevirtualization.TwoClassInterface*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 1.00) ```log [18.240 ; 18.817) | @@@@@ [18.817 ; 19.347) | @@@@@@@@@ [19.347 ; 19.927) | @@@ [19.927 ; 20.457) | [20.457 ; 20.987) | [20.987 ; 21.757) | @@ [21.757 ; 22.287) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.287 ; 22.918) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.918 ; 23.609) | @@@@@@@@@@ [23.609 ; 24.200) | @@@@@@@@ [24.200 ; 24.791) | @@@ [24.791 ; 25.321) | @ [25.321 ; 25.851) | [25.851 ; 26.381) | [26.381 ; 26.911) | [26.911 ; 27.441) | [27.441 ; 27.970) | [27.970 ; 28.500) | [28.500 ; 29.030) | [29.030 ; 29.560) | [29.560 ; 30.090) | [30.090 ; 30.971) | [30.971 ; 31.596) | @ [31.596 ; 32.656) | [32.656 ; 33.716) | [33.716 ; 34.843) | @ [34.843 ; 35.903) | [35.903 ; 37.625) | @ ``` #### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.90) ```log [18.333 ; 18.846) | @@@@@ [18.846 ; 19.398) | @@@@@@@@@@ [19.398 ; 20.144) | @@ [20.144 ; 20.851) | [20.851 ; 21.522) | [21.522 ; 22.190) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.190 ; 22.996) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.996 ; 23.571) | @@@@@@@@ [23.571 ; 24.354) | @@@@@@@@ [24.354 ; 25.295) | @@@@@@ [25.295 ; 26.003) | [26.003 ; 26.710) | [26.710 ; 27.417) | [27.417 ; 28.125) | [28.125 ; 28.832) | [28.832 ; 29.540) | [29.540 ; 30.366) | @ ``` #### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.50) ```log [18.450 ; 18.876) | @@@@@ [18.876 ; 19.325) | @@@@@@@@@ [19.325 ; 20.064) | @@@ [20.064 ; 20.763) | [20.763 ; 21.501) | [21.501 ; 22.213) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.213 ; 23.036) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.036 ; 23.831) | @@@@@@@@@@@@@@@ [23.831 ; 24.578) | @@@@@@@ [24.578 ; 25.228) | @@ [25.228 ; 25.927) | [25.927 ; 26.626) | [26.626 ; 27.325) | [27.325 ; 28.024) | [28.024 ; 28.723) | [28.723 ; 30.018) | @ ``` #### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.70) ```log [18.323 ; 18.722) | @@@@ [18.722 ; 19.478) | @@@@@@@@@@@@ [19.478 ; 20.106) | @@ [20.106 ; 20.791) | [20.791 ; 21.521) | [21.521 ; 22.214) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.214 ; 23.080) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.080 ; 23.600) | @@@@@@@@@ [23.600 ; 24.518) | @@@@@@@@@@@ [24.518 ; 25.230) | @@ [25.230 ; 26.012) | @ [26.012 ; 26.697) | [26.697 ; 27.707) | @ ``` #### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.30) ```log [18.273 ; 18.915) | @@@@ [18.915 ; 19.382) | @@@@@@@@@ [19.382 ; 19.897) | @@@@ [19.897 ; 20.610) | @ [20.610 ; 21.231) | [21.231 ; 21.753) | [21.753 ; 22.595) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.595 ; 23.320) | @@@@@@@@@@@@@@@@@@@@@@@ [23.320 ; 23.982) | @@@@@@@@@@@@@ [23.982 ; 24.512) | @ [24.512 ; 25.032) | @@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.CreateAddAndRemove<Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Stack]() | 37.00 μs | 27.82 μs | 0.75 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.CreateAddAndRemove<Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.CreateAddAndRemove.Stack(Size: 512) ```log [27279.952 ; 28029.534) | @@@@@@@@@@@@@@@@@ [28029.534 ; 29327.629) | @ [29327.629 ; 30077.210) | [30077.210 ; 30826.792) | [30826.792 ; 31576.373) | [31576.373 ; 32325.955) | [32325.955 ; 33075.536) | [33075.536 ; 33825.118) | [33825.118 ; 34574.699) | [34574.699 ; 35324.281) | [35324.281 ; 36278.773) | @ [36278.773 ; 37780.732) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [37780.732 ; 38887.792) | @@@@@@@@ [38887.792 ; 39959.900) | @@@@@@ [39959.900 ; 41516.753) | @@@@ [41516.753 ; 42365.786) | [42365.786 ; 43221.660) | @ [43221.660 ; 44741.584) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.IterateForNonGeneric<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ArrayList]() | 19.25 μs | 17.17 μs | 0.89 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.IterateForNonGeneric<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.IterateForNonGeneric.ArrayList(Size: 512) ```log [17075.178 ; 17631.845) | @@@@@@@@@@@@@@@ [17631.845 ; 18260.225) | @@@ [18260.225 ; 18762.064) | [18762.064 ; 19446.652) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [19446.652 ; 20096.546) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20096.546 ; 20681.562) | @@@@@@@@@@@@@@@@@@@ [20681.562 ; 21529.341) | @@@@@@@@ [21529.341 ; 22042.471) | @@ [22042.471 ; 22624.786) | @ [22624.786 ; 23126.625) | [23126.625 ; 23628.464) | [23628.464 ; 24130.304) | [24130.304 ; 24937.682) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_Int16 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ToString]() | 506.71 ns | 417.01 ns | 0.82 | | | [Parse]() | 294.55 ns | 238.33 ns | 0.81 | | | [TryParse]() | 279.99 ns | 234.98 ns | 0.84 | | | [TryParse]() | 276.78 ns | 240.87 ns | 0.87 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Int16*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Int16.ToString(value: -32768) ```log [394.521 ; 406.577) | @@@@@@@@@ [406.577 ; 419.832) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [419.832 ; 433.204) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [433.204 ; 448.232) | @@@@ [448.232 ; 461.487) | @ [461.487 ; 478.097) | @@@@@@@@@@@@@@@@@@ [478.097 ; 491.352) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [491.352 ; 504.677) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [504.677 ; 520.133) | @@@ ``` #### System.Tests.Perf_Int16.Parse(value: "32767") ```log [233.496 ; 240.787) | @@@@@@@@ [240.787 ; 248.540) | @@@@@@@@ [248.540 ; 254.912) | @ [254.912 ; 263.922) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [263.922 ; 271.082) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [271.082 ; 277.487) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [277.487 ; 283.772) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [283.772 ; 293.630) | @@@@@@@@@@@@@@ [293.630 ; 304.045) | @@@ ``` #### System.Tests.Perf_Int16.TryParse(value: "32767") ```log [233.051 ; 240.091) | @@@@@@@@@ [240.091 ; 245.601) | @@@@@@ [245.601 ; 254.926) | @@ [254.926 ; 260.705) | @ [260.705 ; 269.288) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [269.288 ; 276.323) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [276.323 ; 286.905) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [286.905 ; 296.782) | @@@@@@@@@@@@ [296.782 ; 306.900) | @@@@ [306.900 ; 313.283) | @@ ``` #### System.Tests.Perf_Int16.TryParse(value: "-32768") ```log [237.481 ; 245.249) | @@@@@@@@@ [245.249 ; 250.925) | @@@@ [250.925 ; 256.625) | @ [256.625 ; 263.398) | @@ [263.398 ; 268.909) | @ [268.909 ; 277.601) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [277.601 ; 283.905) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [283.905 ; 294.420) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [294.420 ; 306.047) | @@@@@@@@@@@@@@@@@@ [306.047 ; 312.909) | @@@@ [312.909 ; 319.362) | @@ [319.362 ; 331.430) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Json_FromStream<LoginViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DataContractJsonSerializer_]() | 126.35 μs | 104.03 μs | 0.82 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Json_FromStream<LoginViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Json_FromStream.DataContractJsonSerializer_ ```log [ 99560.805 ; 102773.675) | @@@@@@@@@@@@@@@ [102773.675 ; 106629.465) | @@@ [106629.465 ; 110199.004) | [110199.004 ; 113768.543) | [113768.543 ; 117338.083) | [117338.083 ; 120378.540) | [120378.540 ; 124057.743) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [124057.743 ; 127414.382) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.Ackermann Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 30.03 μs | 24.72 μs | 0.82 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.Ackermann*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.Ackermann.Test ```log [24410.383 ; 24916.493) | @@ [24916.493 ; 25500.815) | @@@@@@@@@@@@ [25500.815 ; 26176.021) | @@ [26176.021 ; 27120.495) | @@ [27120.495 ; 27951.825) | [27951.825 ; 28783.156) | [28783.156 ; 29614.486) | [29614.486 ; 30394.717) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [30394.717 ; 31218.024) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [31218.024 ; 32758.163) | @@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Tests.Perf_Decimal

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[ToString](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Decimal.ToString(value%3a%20123456.789).html>) 1.61 μs 1.35 μs 0.84
[Floor](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Decimal.Floor.html>) 92.33 ns 67.95 ns 0.74
[Subtract](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Decimal.Subtract.html>) 70.23 ns 53.76 ns 0.77
[TryParse](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Decimal.TryParse(value%3a%20%22123456.789%22).html>) 1.27 μs 1.13 μs 0.89
[Mod](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Decimal.Mod.html>) 135.84 ns 100.15 ns 0.74

graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Decimal*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Decimal.ToString(value: 123456.789) ```log [1281.107 ; 1332.122) | @@@@@@@@@@@@ [1332.122 ; 1361.613) | @@@@@@ [1361.613 ; 1405.046) | @@@@@@@@@@@@@@@@ [1405.046 ; 1460.833) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1460.833 ; 1512.613) | @@@@@@@@@@@@ [1512.613 ; 1567.650) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1567.650 ; 1602.600) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [1602.600 ; 1697.995) | @@@@@@@@ ``` #### System.Tests.Perf_Decimal.Floor ```log [ 65.889 ; 67.587) | @ [ 67.587 ; 69.529) | @@@@@@@@@@@@@@@ [ 69.529 ; 72.511) | @ [ 72.511 ; 74.454) | @ [ 74.454 ; 76.397) | [ 76.397 ; 78.339) | [ 78.339 ; 80.282) | [ 80.282 ; 82.609) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 82.609 ; 84.552) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 84.552 ; 86.491) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 86.491 ; 88.376) | @@@@@@@@@@@@@@@@ [ 88.376 ; 90.366) | @@@@@@ [ 90.366 ; 92.272) | [ 92.272 ; 94.215) | @@@ [ 94.215 ; 96.474) | @@@@@ [ 96.474 ; 100.505) | @@@@@@@@@@@@@@@ [100.505 ; 103.868) | [103.868 ; 107.886) | @@@ [107.886 ; 110.379) | @ ``` #### System.Tests.Perf_Decimal.Subtract ```log [50.193 ; 52.697) | @@@@@@@@@@@ [52.697 ; 54.131) | @@@@@ [54.131 ; 55.666) | [55.666 ; 57.726) | @ [57.726 ; 59.945) | [59.945 ; 61.481) | @ [61.481 ; 63.017) | [63.017 ; 64.553) | [64.553 ; 67.005) | @@@@@@@@@@@@@@ [67.005 ; 68.541) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [68.541 ; 70.088) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [70.088 ; 72.753) | @@@@@@@@@@@ [72.753 ; 74.288) | @@@@@@@@@@@ [74.288 ; 75.994) | @@@ [75.994 ; 78.298) | @@ [78.298 ; 80.476) | @@@@ [80.476 ; 83.584) | @@ [83.584 ; 85.891) | @@ [85.891 ; 88.962) | [88.962 ; 91.853) | @ ``` #### System.Tests.Perf_Decimal.TryParse(value: "123456.789") ```log [1077.690 ; 1102.291) | @@@@ [1102.291 ; 1127.418) | @@@@@@@ [1127.418 ; 1162.619) | @@@@@@@ [1162.619 ; 1187.469) | [1187.469 ; 1218.632) | [1218.632 ; 1262.000) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1262.000 ; 1300.409) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1300.409 ; 1367.838) | @@@@@ ``` #### System.Tests.Perf_Decimal.Mod ```log [ 96.959 ; 100.534) | @@@@@@@@@@@@@ [100.534 ; 102.852) | @@ [102.852 ; 106.714) | @@ [106.714 ; 108.952) | [108.952 ; 111.190) | [111.190 ; 114.623) | @@@@@@@@@ [114.623 ; 119.242) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [119.242 ; 122.653) | @@@@@@@@@@@@@@@@@@@@@@@@@ [122.653 ; 126.480) | @@@@@@@@@@@@@@@@ [126.480 ; 131.582) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [131.582 ; 136.754) | @@@@@@@@ [136.754 ; 140.336) | [140.336 ; 143.171) | @ [143.171 ; 146.331) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.Concurrent.Count<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Queue_EnqueueCountDequeue]() | 306.51 ns | 258.89 ns | 0.84 | | | [Queue]() | 74.22 ns | 55.54 ns | 0.75 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.Concurrent.Count<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Concurrent.Count.Queue_EnqueueCountDequeue(Size: 512) ```log [244.544 ; 254.387) | @@@@@@@ [254.387 ; 259.905) | @@ [259.905 ; 269.530) | @@@@@@@@@ [269.530 ; 279.896) | [279.896 ; 287.349) | [287.349 ; 296.967) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [296.967 ; 305.786) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [305.786 ; 314.402) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [314.402 ; 326.554) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [326.554 ; 336.818) | @@@@@@@@@@@@@@@@ [336.818 ; 349.230) | @ ``` #### System.Collections.Concurrent.Count.Queue(Size: 512) ```log [54.360 ; 56.907) | @@@@@@@@@@@@ [56.907 ; 59.426) | @@@@@ [59.426 ; 61.700) | @ [61.700 ; 63.239) | [63.239 ; 64.778) | [64.778 ; 66.317) | [66.317 ; 67.856) | [67.856 ; 70.251) | @@@@ [70.251 ; 72.001) | @@@@@ [72.001 ; 73.540) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [73.540 ; 75.256) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [75.256 ; 77.185) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [77.185 ; 80.489) | @@@@@@@@@@@@@@@@ [80.489 ; 83.725) | @@@@@ [83.725 ; 86.626) | @ [86.626 ; 89.038) | @ [89.038 ; 92.498) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.IterateForEach<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Array]() | 4.20 μs | 2.85 μs | 0.68 | | | [SortedDictionary]() | 99.81 μs | 89.33 μs | 0.89 | | | [ImmutableDictionary]() | 324.18 μs | 278.94 μs | 0.86 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.IterateForEach<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.IterateForEach.Array(Size: 512) ```log [2801.328 ; 2906.290) | @@@@@@@@@@@@@@ [2906.290 ; 2997.761) | @@@ [2997.761 ; 3102.723) | [3102.723 ; 3207.686) | [3207.686 ; 3312.648) | [3312.648 ; 3417.610) | [3417.610 ; 3522.572) | [3522.572 ; 3627.534) | [3627.534 ; 3732.497) | [3732.497 ; 3837.459) | [3837.459 ; 3942.421) | [3942.421 ; 4073.338) | @ [4073.338 ; 4250.079) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4250.079 ; 4337.451) | @@@ [4337.451 ; 4442.413) | @@@@ [4442.413 ; 4547.375) | [4547.375 ; 4652.337) | [4652.337 ; 4763.185) | [4763.185 ; 4868.147) | @ [4868.147 ; 4973.109) | [4973.109 ; 5078.071) | [5078.071 ; 5215.596) | [5215.596 ; 5320.962) | @ [5320.962 ; 5534.745) | @ ``` #### System.Collections.IterateForEach.SortedDictionary(Size: 512) ```log [ 86928.858 ; 90634.781) | @@@@@@@@@@@ [ 90634.781 ; 92548.401) | @@@ [ 92548.401 ; 96253.482) | @@@@@@@@@@@@@@@@@@@@@@@@ [ 96253.482 ; 99765.019) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 99765.019 ; 102213.822) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [102213.822 ; 105413.405) | @@@@@@@@@@@@@@@@@@@@@@@@@ [105413.405 ; 109655.970) | @@@@@@@ ``` #### System.Collections.IterateForEach.ImmutableDictionary(Size: 512) ```log [269953.418 ; 280143.269) | @@@@@@@@@@@@@@ [280143.269 ; 288773.947) | @@ [288773.947 ; 296910.181) | @ [296910.181 ; 304235.380) | [304235.380 ; 312804.256) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [312804.256 ; 324948.788) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [324948.788 ; 336564.603) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Tests.Perf_Segment Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ReadSingleSegmentSequenceByN]() | 1.70 ms | 1.40 ms | 0.82 | | | [ReadMultiSegmentSequenceUsingSpan]() | 17.59 ms | 14.20 ms | 0.81 | | | [ReadMultiSegmentSequenceUsingSpan]() | 183.64 μs | 148.83 μs | 0.81 | | | [ReadMultiSegmentSequenceUsingSpan]() | 1.76 ms | 1.42 ms | 0.81 | | | [ReadSingleSegmentSequence]() | 1.71 ms | 1.41 ms | 0.82 | | | [ReadSingleSegmentSequenceByN]() | 177.74 μs | 145.92 μs | 0.82 | | | [ReadSingleSegmentSequenceByN]() | 17.12 ms | 13.96 ms | 0.82 | | | [ReadMultiSegmentSequence]() | 20.78 ms | 16.68 ms | 0.80 | | | [ReadSingleSegmentSequenceByN]() | 17.36 ms | 14.09 ms | 0.81 | | | [ReadSingleSegmentSequence]() | 179.60 μs | 143.46 μs | 0.80 | | | [ReadMultiSegmentSequence]() | 178.74 μs | 144.35 μs | 0.81 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Perf_Segment*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 8192, TestCase: Json40KB) ```log [1355323.360 ; 1403835.692) | @@@@@@@@@@@@@@@@ [1403835.692 ; 1449522.765) | @@ [1449522.765 ; 1498138.301) | [1498138.301 ; 1546753.837) | [1546753.837 ; 1595369.373) | [1595369.373 ; 1646888.567) | @@@@@@@@@@@@@@ [1646888.567 ; 1713984.827) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1713984.827 ; 1766147.256) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1766147.256 ; 1829690.419) | @@ ``` #### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 8192, TestCase: Json400KB) ```log [13735814.150 ; 14316016.826) | @@@@@@@@@@@@@@@ [14316016.826 ; 14624233.917) | @@ [14624233.917 ; 15158787.385) | [15158787.385 ; 15693340.853) | [15693340.853 ; 16227894.321) | [16227894.321 ; 16737437.133) | [16737437.133 ; 17295900.927) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17295900.927 ; 17957446.341) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17957446.341 ; 18425652.880) | @@@@ ``` #### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 8192, TestCase: Json4KB) ```log [142873.486 ; 146351.345) | @@@@ [146351.345 ; 150412.675) | @@@@@@@@@@ [150412.675 ; 155172.752) | @@ [155172.752 ; 158307.555) | @ [158307.555 ; 163527.692) | [163527.692 ; 168747.828) | [168747.828 ; 173967.964) | [173967.964 ; 180984.939) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [180984.939 ; 189184.388) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 8192, TestCase: Json40KB) ```log [1365303.204 ; 1419801.107) | @@@@@@@@@@@@@@@@ [1419801.107 ; 1469081.374) | @@ [1469081.374 ; 1522249.917) | [1522249.917 ; 1575418.459) | [1575418.459 ; 1628587.002) | [1628587.002 ; 1683126.374) | @@@@@@@@@@@@@@@@@@@@@ [1683126.374 ; 1751833.245) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1751833.245 ; 1810734.000) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequence(TestCase: Json40KB) ```log [1339602.113 ; 1392754.896) | @@@@@@@@@@@@@@ [1392754.896 ; 1444990.859) | @@@@ [1444990.859 ; 1495445.015) | [1495445.015 ; 1545899.171) | [1545899.171 ; 1596353.327) | [1596353.327 ; 1638999.582) | @@@@@@@@@@@@@@@@@@@ [1638999.582 ; 1702163.134) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1702163.134 ; 1753952.832) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1753952.832 ; 1804406.988) | [1804406.988 ; 1877419.927) | @ ``` #### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 4096, TestCase: Json4KB) ```log [140387.767 ; 143779.251) | @@@@@@@ [143779.251 ; 148768.081) | @@@@@@@@@@@ [148768.081 ; 153946.936) | [153946.936 ; 159125.791) | [159125.791 ; 164304.646) | [164304.646 ; 169758.830) | [169758.830 ; 175752.624) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [175752.624 ; 183626.198) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 8192, TestCase: Json400KB) ```log [13633625.486 ; 14156059.464) | @@@@@@@@@@@@@@@@@ [14156059.464 ; 14627620.946) | @ [14627620.946 ; 15121205.836) | [15121205.836 ; 15614790.726) | [15614790.726 ; 16108375.616) | [16108375.616 ; 16652793.485) | @@@@@@@@@@@@@@@@@@@ [16652793.485 ; 17349582.155) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17349582.155 ; 18077373.732) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequence(segmentSize: 4096, TestCase: Json400KB) ```log [15886942.769 ; 16475227.794) | @@@@@@@@@@@@ [16475227.794 ; 16910043.642) | @@@@@ [16910043.642 ; 17281957.764) | @ [17281957.764 ; 17861745.947) | [17861745.947 ; 18441534.129) | [18441534.129 ; 19021322.312) | [19021322.312 ; 19482203.334) | [19482203.334 ; 20230296.119) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20230296.119 ; 20923903.724) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 4096, TestCase: Json400KB) ```log [13706988.963 ; 14124577.141) | @@@@@@@@@@@@@ [14124577.141 ; 14466029.080) | @@@@ [14466029.080 ; 14865400.757) | @ [14865400.757 ; 15362454.631) | [15362454.631 ; 15859508.505) | [15859508.505 ; 16356562.379) | [16356562.379 ; 16758750.374) | @@@@@@@@@@@@@@@@@ [16758750.374 ; 17408126.622) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17408126.622 ; 18142674.264) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequence(TestCase: Json4KB) ```log [139420.094 ; 142331.724) | @@@@@ [142331.724 ; 147684.277) | @@@@@@@@@@@@@ [147684.277 ; 152947.500) | [152947.500 ; 158210.724) | [158210.724 ; 163473.947) | [163473.947 ; 168277.482) | [168277.482 ; 174071.211) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [174071.211 ; 182827.549) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequence(segmentSize: 8192, TestCase: Json4KB) ```log [140489.694 ; 145021.167) | @@@@@@@@@@@@@ [145021.167 ; 148307.514) | @@@ [148307.514 ; 153858.479) | @@ [153858.479 ; 158968.187) | [158968.187 ; 164077.894) | [164077.894 ; 169267.075) | [169267.075 ; 175200.534) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [175200.534 ; 179327.149) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [179327.149 ; 186279.812) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Microsoft.Extensions.Primitives.Performance.StringValuesBenchmark Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ForEach_String]() | 107.33 ns | 92.37 ns | 0.86 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Microsoft.Extensions.Primitives.Performance.StringValuesBenchmark*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Microsoft.Extensions.Primitives.Performance.StringValuesBenchmark.ForEach_String ```log [ 87.934 ; 91.246) | @@@@@@@@@@@@@@@ [ 91.246 ; 93.437) | @@ [ 93.437 ; 95.595) | @ [ 95.595 ; 97.683) | [ 97.683 ; 101.034) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [101.034 ; 104.953) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [104.953 ; 108.822) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [108.822 ; 111.116) | @@@@@@@@@@@ [111.116 ; 113.605) | @@@@@@ [113.605 ; 117.670) | @@@@@ [117.670 ; 121.659) | @ [121.659 ; 127.259) | @@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Encodings.Web.Tests.Perf_Encoders Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [EncodeUtf16]() | 18.70 μs | 12.82 μs | 0.69 | | | [EncodeUtf16]() | 3.71 μs | 3.11 μs | 0.84 | | | [EncodeUtf16]() | 18.58 μs | 12.50 μs | 0.67 | | | [EncodeUtf16]() | 1.92 μs | 1.51 μs | 0.79 | | | [EncodeUtf16]() | 10.02 μs | 7.65 μs | 0.76 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Encodings.Web.Tests.Perf_Encoders*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf16(arguments: UnsafeRelaxed,hello "there",512) ```log [12404.863 ; 12842.608) | @@@@@@@@@@@@@@@@@ [12842.608 ; 13280.352) | [13280.352 ; 13718.097) | [13718.097 ; 14105.397) | [14105.397 ; 14543.142) | @ [14543.142 ; 14980.887) | [14980.887 ; 15418.632) | [15418.632 ; 15856.376) | [15856.376 ; 16294.121) | [16294.121 ; 16731.866) | [16731.866 ; 17169.610) | [17169.610 ; 17640.931) | @ [17640.931 ; 18078.676) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18078.676 ; 18451.872) | @@@ [18451.872 ; 18889.616) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18889.616 ; 19327.361) | [19327.361 ; 19765.106) | [19765.106 ; 20202.851) | [20202.851 ; 20640.595) | [20640.595 ; 21334.770) | @ [21334.770 ; 21772.514) | [21772.514 ; 22210.259) | [22210.259 ; 23125.785) | @ ``` #### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf16(arguments: Url,&lorem ipsum=dolor sit amet,16) ```log [2919.340 ; 3005.895) | @@@@@@@@@ [3005.895 ; 3100.436) | @@@@@@@ [3100.436 ; 3200.431) | @@ [3200.431 ; 3297.484) | [3297.484 ; 3394.537) | [3394.537 ; 3492.358) | [3492.358 ; 3614.635) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3614.635 ; 3732.994) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3732.994 ; 3837.146) | @@@@@@@@ [3837.146 ; 3934.687) | @ ``` #### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf16(arguments: UnsafeRelaxed,no required,512) ```log [12145.010 ; 12603.716) | @@@@@@@@@@@@@@@@@@ [12603.716 ; 13062.423) | [13062.423 ; 13521.130) | [13521.130 ; 13979.837) | [13979.837 ; 14438.544) | [14438.544 ; 14897.250) | [14897.250 ; 15355.957) | [15355.957 ; 15814.664) | [15814.664 ; 16273.371) | [16273.371 ; 16732.078) | [16732.078 ; 17216.740) | [17216.740 ; 17906.551) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17906.551 ; 18303.575) | @@@@@@@ [18303.575 ; 18762.282) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18762.282 ; 19276.546) | @ [19276.546 ; 19735.253) | [19735.253 ; 20193.959) | [20193.959 ; 20652.666) | [20652.666 ; 21111.373) | [21111.373 ; 21570.080) | [21570.080 ; 22028.787) | [22028.787 ; 22487.493) | [22487.493 ; 23529.180) | @ ``` #### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf16(arguments: UnsafeRelaxed,hello "there",16) ```log [1440.535 ; 1494.182) | @@@@@@@@@@@@@ [1494.182 ; 1525.658) | @@@ [1525.658 ; 1586.316) | @ [1586.316 ; 1645.990) | [1645.990 ; 1705.663) | [1705.663 ; 1765.337) | [1765.337 ; 1808.784) | @@@@@@@@@@@@@@@@@@@@@ [1808.784 ; 1878.076) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1878.076 ; 1943.170) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1943.170 ; 1990.922) | @@@ [1990.922 ; 2086.995) | @@@ ``` #### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf16(arguments: JavaScript,no escaping required,512) ```log [ 7371.459 ; 7690.112) | @@@@@@@@@@@@@@@@@@ [ 7690.112 ; 7862.187) | [ 7862.187 ; 8034.262) | [ 8034.262 ; 8206.337) | [ 8206.337 ; 8378.412) | [ 8378.412 ; 8550.487) | [ 8550.487 ; 8722.562) | [ 8722.562 ; 8894.637) | [ 8894.637 ; 9066.712) | [ 9066.712 ; 9238.788) | [ 9238.788 ; 9410.863) | [ 9410.863 ; 9675.219) | [ 9675.219 ; 10047.380) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [10047.380 ; 10420.260) | @@ [10420.260 ; 10764.410) | [10764.410 ; 11322.610) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Numerics.Tests.Perf_Quaternion Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SlerpBenchmark]() | 228.03 ns | 151.33 ns | 0.66 | | | [InverseBenchmark]() | 125.79 ns | 70.87 ns | 0.56 | | | [NegateBenchmark]() | 82.85 ns | 58.37 ns | 0.70 | | | [IsIdentityBenchmark]() | 122.50 ns | 92.32 ns | 0.75 | | | [NegationOperatorBenchmark]() | 74.20 ns | 50.84 ns | 0.69 | | | [AddOperatorBenchmark]() | 128.06 ns | 92.77 ns | 0.72 | | | [CreateFromRotationMatrixBenchmark]() | 92.08 ns | 54.94 ns | 0.60 | | | [CreateFromAxisAngleBenchmark]() | 90.27 ns | 64.58 ns | 0.72 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Numerics.Tests.Perf_Quaternion*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Perf_Quaternion.SlerpBenchmark ```log [148.113 ; 153.556) | @@@@@@@@@@@@ [153.556 ; 160.321) | @@@@@ [160.321 ; 166.781) | @ [166.781 ; 172.224) | [172.224 ; 177.668) | [177.668 ; 183.111) | [183.111 ; 188.555) | [188.555 ; 193.998) | [193.998 ; 199.442) | [199.442 ; 204.885) | [204.885 ; 210.704) | [210.704 ; 215.757) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [215.757 ; 221.200) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [221.200 ; 226.972) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [226.972 ; 232.560) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [232.560 ; 240.193) | @@@@@@@@ [240.193 ; 248.226) | @@ ``` #### System.Numerics.Tests.Perf_Quaternion.InverseBenchmark ```log [ 69.599 ; 74.134) | @@@@@@@@@@@@@@@@ [ 74.134 ; 77.789) | @@ [ 77.789 ; 82.324) | [ 82.324 ; 86.859) | [ 86.859 ; 91.394) | [ 91.394 ; 95.929) | [ 95.929 ; 100.464) | [100.464 ; 104.999) | [104.999 ; 108.063) | [108.063 ; 112.598) | @ [112.598 ; 117.133) | [117.133 ; 121.609) | @@@@@@@@@@@@@@@ [121.609 ; 126.144) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [126.144 ; 130.825) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [130.825 ; 136.283) | @@@@@@@@@@@@@@ [136.283 ; 140.818) | @@@@@@ [140.818 ; 145.467) | @@ ``` #### System.Numerics.Tests.Perf_Quaternion.NegateBenchmark ```log [56.402 ; 58.305) | @ [58.305 ; 60.226) | @@@@@@@@@@ [60.226 ; 62.906) | @@@@@@ [62.906 ; 64.827) | [64.827 ; 66.899) | [66.899 ; 68.820) | @ [68.820 ; 70.740) | [70.740 ; 72.661) | [72.661 ; 74.581) | [74.581 ; 76.502) | [76.502 ; 78.654) | [78.654 ; 81.822) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [81.822 ; 83.800) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [83.800 ; 85.714) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [85.714 ; 88.043) | @@@@@@@@@@@@@@@@ [88.043 ; 89.963) | @@@@@@ [89.963 ; 92.120) | @@@@@@ [92.120 ; 94.236) | @@ [94.236 ; 96.431) | @ ``` #### System.Numerics.Tests.Perf_Quaternion.IsIdentityBenchmark ```log [ 87.982 ; 90.046) | @@ [ 90.046 ; 92.345) | @@@@@@@@@ [ 92.345 ; 94.961) | @@@@ [ 94.961 ; 97.983) | @@@ [ 97.983 ; 100.282) | [100.282 ; 102.581) | [102.581 ; 104.880) | [104.880 ; 107.376) | [107.376 ; 111.278) | @@ [111.278 ; 113.725) | @@ [113.725 ; 118.223) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [118.223 ; 122.966) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [122.966 ; 126.766) | @@@@@@@@@@@@@@@@@@ [126.766 ; 130.691) | @@@@@ [130.691 ; 135.438) | @@@@@@ ``` #### System.Numerics.Tests.Perf_Quaternion.NegationOperatorBenchmark ```log [50.505 ; 52.448) | @@@@@@@@@@@@@@@@ [52.448 ; 53.860) | @@ [53.860 ; 55.803) | [55.803 ; 57.746) | [57.746 ; 59.689) | [59.689 ; 61.632) | [61.632 ; 63.575) | [63.575 ; 65.518) | [65.518 ; 67.069) | [67.069 ; 69.012) | @ [69.012 ; 70.401) | [70.401 ; 72.058) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [72.058 ; 74.001) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [74.001 ; 76.200) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [76.200 ; 78.143) | @@@@@@@@@@@@@@ [78.143 ; 80.086) | @@@@@@@ [80.086 ; 82.526) | @@@@@ [82.526 ; 84.469) | [84.469 ; 86.412) | [86.412 ; 88.840) | [88.840 ; 90.784) | @ ``` #### System.Numerics.Tests.Perf_Quaternion.AddOperatorBenchmark ```log [ 89.437 ; 91.609) | @ [ 91.609 ; 94.309) | @@@@@@@@@@@@ [ 94.309 ; 98.241) | @@@@@ [ 98.241 ; 100.942) | [100.942 ; 103.642) | [103.642 ; 106.343) | [106.343 ; 109.043) | [109.043 ; 111.744) | [111.744 ; 115.180) | @@ [115.180 ; 117.881) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [117.881 ; 120.409) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [120.409 ; 123.110) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [123.110 ; 127.822) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [127.822 ; 130.705) | @@@@@@@@@@@@@@@@@@@ [130.705 ; 137.871) | @@@@@@@@@@@@@@@@ ``` #### System.Numerics.Tests.Perf_Quaternion.CreateFromRotationMatrixBenchmark ```log [ 53.323 ; 56.518) | @@@@@@@@@@@@@ [ 56.518 ; 59.986) | @@@ [ 59.986 ; 62.204) | @ [ 62.204 ; 63.930) | [ 63.930 ; 67.125) | @ [ 67.125 ; 70.320) | [ 70.320 ; 73.515) | [ 73.515 ; 76.710) | [ 76.710 ; 79.905) | [ 79.905 ; 83.100) | [ 83.100 ; 86.295) | [ 86.295 ; 87.849) | [ 87.849 ; 91.069) | @@@@@@@@@@@@@@@ [ 91.069 ; 94.264) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 94.264 ; 97.941) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 97.941 ; 101.136) | @@@@@@@@@@@@ [101.136 ; 106.104) | @@@@@@@@@@ [106.104 ; 109.799) | @@@@ ``` #### System.Numerics.Tests.Perf_Quaternion.CreateFromAxisAngleBenchmark ```log [61.740 ; 63.350) | @@@ [63.350 ; 64.742) | @@@@@@@@@@@@ [64.742 ; 66.486) | @@ [66.486 ; 67.979) | @ [67.979 ; 69.370) | [69.370 ; 70.762) | [70.762 ; 72.154) | [72.154 ; 73.545) | [73.545 ; 74.968) | [74.968 ; 77.382) | @@@@@@@@@@@@@ [77.382 ; 80.402) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [80.402 ; 82.051) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [82.051 ; 84.911) | @@@ [84.911 ; 86.803) | @@@@ [86.803 ; 89.364) | @@@@@@ [89.364 ; 92.974) | @@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Tests.Perf_Int64

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[TryFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Int64.TryFormat(value%3a%20-9223372036854775808).html>) 1.12 μs 893.33 ns 0.80
[TryParse](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Int64.TryParse(value%3a%20%229223372036854775807%22).html>) 582.78 ns 503.26 ns 0.86
[TryParse](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Int64.TryParse(value%3a%20%2212345%22).html>) 242.64 ns 200.47 ns 0.83
[TryFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Int64.TryFormat(value%3a%209223372036854775807).html>) 1.04 μs 821.90 ns 0.79
[TryParseSpan](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Int64.TryParseSpan(value%3a%20%229223372036854775807%22).html>) 587.86 ns 499.59 ns 0.85
[TryFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Int64.TryFormat(value%3a%2012345).html>) 350.60 ns 284.93 ns 0.81
[ParseSpan](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Int64.ParseSpan(value%3a%20%2212345%22).html>) 293.36 ns 250.54 ns 0.85

graph graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Int64*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Int64.TryFormat(value: -9223372036854775808) ```log [ 815.933 ; 840.600) | @@@ [ 840.600 ; 887.258) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 887.258 ; 933.886) | @@@@@@@@@@@@@@@ [ 933.886 ; 980.544) | [ 980.544 ; 1027.202) | [1027.202 ; 1073.860) | [1073.860 ; 1101.731) | [1101.731 ; 1148.389) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1148.389 ; 1198.396) | @@@@ [1198.396 ; 1265.246) | [1265.246 ; 1311.904) | @ ``` #### System.Tests.Perf_Int64.TryParse(value: "9223372036854775807") ```log [475.573 ; 485.412) | @@@@@@@@@ [485.412 ; 495.463) | @@@ [495.463 ; 511.866) | @@@@@@ [511.866 ; 524.653) | [524.653 ; 537.439) | [537.439 ; 553.079) | @ [553.079 ; 566.078) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [566.078 ; 594.074) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Int64.TryParse(value: "12345") ```log [197.652 ; 202.343) | @@@@ [202.343 ; 210.594) | @@@@@@@@@@@ [210.594 ; 216.852) | @ [216.852 ; 224.670) | @@ [224.670 ; 230.891) | @@ [230.891 ; 239.618) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [239.618 ; 245.076) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [245.076 ; 251.407) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [251.407 ; 256.996) | @@@@@@@@@@@ [256.996 ; 266.290) | @@@@@ ``` #### System.Tests.Perf_Int64.TryFormat(value: 9223372036854775807) ```log [ 773.696 ; 819.488) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 819.488 ; 862.982) | @@@@@@@@@@@@@ [ 862.982 ; 908.775) | @@@@ [ 908.775 ; 954.568) | [ 954.568 ; 1000.361) | [1000.361 ; 1034.354) | [1034.354 ; 1080.147) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1080.147 ; 1107.686) | @@ ``` #### System.Tests.Perf_Int64.TryParseSpan(value: "9223372036854775807") ```log [473.269 ; 491.567) | @@@@@@@@@@ [491.567 ; 507.012) | @@@@@@ [507.012 ; 519.815) | [519.815 ; 532.618) | [532.618 ; 551.700) | @ [551.700 ; 564.136) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [564.136 ; 584.547) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [584.547 ; 604.311) | @@@@@@ [604.311 ; 617.114) | [617.114 ; 629.916) | [629.916 ; 648.970) | @ ``` #### System.Tests.Perf_Int64.TryFormat(value: 12345) ```log [267.128 ; 274.688) | @@ [274.688 ; 287.022) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [287.022 ; 300.478) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [300.478 ; 312.706) | @@@@@@@@@@@@@ [312.706 ; 325.040) | [325.040 ; 337.375) | [337.375 ; 344.859) | [344.859 ; 357.194) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [357.194 ; 367.961) | @@@@@@@@@@@@@@@@@@@ [367.961 ; 379.524) | @@@ [379.524 ; 392.052) | [392.052 ; 404.387) | @@ ``` #### System.Tests.Perf_Int64.ParseSpan(value: "12345") ```log [240.285 ; 249.353) | @@@@@@@@@@ [249.353 ; 254.773) | @@@@@ [254.773 ; 263.424) | @@ [263.424 ; 271.883) | @@@@@@@@@@@@@@@@ [271.883 ; 282.674) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [282.674 ; 290.600) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [290.600 ; 301.645) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [301.645 ; 308.831) | @@@@@@@@@@@@@@@@ [308.831 ; 316.828) | @@@@@ [316.828 ; 324.947) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.CreateAddAndClear<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [List]() | 23.85 μs | 19.60 μs | 0.82 | | | [IDictionary]() | 255.89 μs | 196.16 μs | 0.77 | | | [Dictionary]() | 253.66 μs | 194.88 μs | 0.77 | | | [HashSet]() | 238.33 μs | 179.69 μs | 0.75 | | | [SortedSet]() | 1.78 ms | 1.60 ms | 0.90 | | | [ConcurrentQueue]() | 68.06 μs | 59.52 μs | 0.87 | | | [ConcurrentBag]() | 96.65 μs | 84.16 μs | 0.87 | | | [LinkedList]() | 69.35 μs | 64.08 μs | 0.92 | | | [Stack]() | 22.59 μs | 18.16 μs | 0.80 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.CreateAddAndClear<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.CreateAddAndClear.List(Size: 512) ```log [18962.833 ; 19714.513) | @@@@@@@@@@@@@@@ [19714.513 ; 20121.814) | @@@ [20121.814 ; 20831.478) | [20831.478 ; 21541.142) | [21541.142 ; 22250.806) | [22250.806 ; 22742.676) | [22742.676 ; 23507.023) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23507.023 ; 24016.423) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [24016.423 ; 24776.799) | @@@@@@@@@@@@@@@@@@ [24776.799 ; 25486.463) | [25486.463 ; 26196.127) | [26196.127 ; 26692.507) | [26692.507 ; 27231.750) | @ [27231.750 ; 28211.908) | @ ``` #### System.Collections.CreateAddAndClear.IDictionary(Size: 512) ```log [190284.078 ; 198204.208) | @@@@@@@@@@@@@@@@@ [198204.208 ; 205209.992) | @ [205209.992 ; 210100.859) | [210100.859 ; 214991.727) | [214991.727 ; 219882.595) | [219882.595 ; 224773.463) | [224773.463 ; 229664.330) | [229664.330 ; 234555.198) | [234555.198 ; 239446.066) | [239446.066 ; 247138.515) | @@@@@@@@@@@ [247138.515 ; 255156.544) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [255156.544 ; 265337.155) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [265337.155 ; 277966.612) | @ ``` #### System.Collections.CreateAddAndClear.Dictionary(Size: 512) ```log [191571.746 ; 196288.667) | @@@@@@@@@@@@@@@@ [196288.667 ; 201843.981) | [201843.981 ; 206560.902) | @ [206560.902 ; 211277.822) | [211277.822 ; 215994.743) | [215994.743 ; 220711.663) | [220711.663 ; 225428.584) | [225428.584 ; 230145.504) | [230145.504 ; 234862.425) | [234862.425 ; 239579.345) | [239579.345 ; 245480.828) | @@@@@@@@@@@@@@@@@@@@ [245480.828 ; 251836.456) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [251836.456 ; 261714.157) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [261714.157 ; 269414.502) | @@@@@ [269414.502 ; 274897.103) | @ [274897.103 ; 280629.401) | @ ``` #### System.Collections.CreateAddAndClear.HashSet(Size: 512) ```log [174444.890 ; 178862.287) | @@@@@@@@@ [178862.287 ; 184031.899) | @@@@@@@@ [184031.899 ; 188449.296) | [188449.296 ; 193619.044) | [193619.044 ; 198036.441) | @ [198036.441 ; 202453.838) | [202453.838 ; 206871.234) | [206871.234 ; 211288.631) | [211288.631 ; 215706.028) | [215706.028 ; 220123.424) | [220123.424 ; 228440.269) | @@@@@@@@@@@@@@ [228440.269 ; 237889.370) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [237889.370 ; 246512.682) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [246512.682 ; 254482.276) | @@@@ [254482.276 ; 265254.559) | @ ``` #### System.Collections.CreateAddAndClear.SortedSet(Size: 512) ```log [1568810.867 ; 1614100.667) | @@@@@@@@@@@ [1614100.667 ; 1677538.211) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1677538.211 ; 1736493.779) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1736493.779 ; 1777058.008) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1777058.008 ; 1824275.919) | @@@@@@@@@@@@@@ ``` #### System.Collections.CreateAddAndClear.ConcurrentQueue(Size: 512) ```log [59181.205 ; 60470.862) | @@@@@@@@@@@@ [60470.862 ; 62758.106) | @@@@@ [62758.106 ; 64524.483) | [64524.483 ; 66290.859) | [66290.859 ; 68058.477) | @@@@@@@@@@@@@@@@@@@@ [68058.477 ; 70571.674) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [70571.674 ; 72756.129) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [72756.129 ; 74535.211) | @@@@@@@ [74535.211 ; 78426.282) | @@@@@@@ ``` #### System.Collections.CreateAddAndClear.ConcurrentBag(Size: 512) ```log [ 82866.095 ; 85689.990) | @@@@@@@@@@@@ [ 85689.990 ; 88469.743) | @@@@@ [ 88469.743 ; 90567.026) | [ 90567.026 ; 92886.601) | @@ [ 92886.601 ; 96226.996) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 96226.996 ; 99395.844) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 99395.844 ; 102014.205) | @@@@@@@ [102014.205 ; 107137.069) | @@@@ ``` #### System.Collections.CreateAddAndClear.LinkedList(Size: 512) ```log [62690.640 ; 65024.219) | @@@@@@@@@@@@@@@@ [65024.219 ; 66449.767) | @ [66449.767 ; 68892.217) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [68892.217 ; 71094.134) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71094.134 ; 73449.960) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [73449.960 ; 76456.424) | @@@@@@@@@@@@@@@ ``` #### System.Collections.CreateAddAndClear.Stack(Size: 512) ```log [17583.035 ; 17966.069) | @@@@@@@@@ [17966.069 ; 18399.497) | @@@@@@ [18399.497 ; 18782.531) | [18782.531 ; 19165.566) | [19165.566 ; 19682.993) | [19682.993 ; 20463.664) | @@ [20463.664 ; 21229.733) | [21229.733 ; 21907.248) | @@ [21907.248 ; 22763.885) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22763.885 ; 23600.228) | @@@@@@@@@@@@@@@@@@@@@@@@ [23600.228 ; 24255.962) | @@@ [24255.962 ; 25076.898) | @@@@ [25076.898 ; 25842.967) | [25842.967 ; 26609.036) | [26609.036 ; 27375.105) | [27375.105 ; 28141.175) | [28141.175 ; 29396.312) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Document.Tests.Perf_ParseThenWrite Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ParseThenWrite]() | 52.32 ms | 43.29 ms | 0.83 | | | [ParseThenWrite]() | 22.49 μs | 18.06 μs | 0.80 | | | [ParseThenWrite]() | 91.64 μs | 75.78 μs | 0.83 | | | [ParseThenWrite]() | 104.92 μs | 86.56 μs | 0.82 | | | [ParseThenWrite]() | 116.84 μs | 99.95 μs | 0.86 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Document.Tests.Perf_ParseThenWrite*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Document.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: Json400KB) ```log [41421344.250 ; 43083291.590) | @@@@@@@@@@@@@ [43083291.590 ; 44813237.992) | @@@@ [44813237.992 ; 46196238.137) | [46196238.137 ; 47579238.281) | [47579238.281 ; 48962238.426) | [48962238.426 ; 50421275.848) | [50421275.848 ; 52205522.232) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [52205522.232 ; 53472347.336) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Document.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: True, TestCase: HelloWorld) ```log [17882.891 ; 18562.782) | @@@@@@@@@@@@@@@@@ [18562.782 ; 19200.024) | [19200.024 ; 19837.266) | [19837.266 ; 20474.508) | [20474.508 ; 21111.750) | [21111.750 ; 21808.936) | [21808.936 ; 22940.267) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Document.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: Json400B) ```log [74600.924 ; 77110.676) | @@@@@@@@@@@@@@@@@ [77110.676 ; 78837.275) | @ [78837.275 ; 81308.699) | [81308.699 ; 83780.123) | [83780.123 ; 86251.546) | [86251.546 ; 88541.583) | [88541.583 ; 93249.357) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Document.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: True, TestCase: Json400B) ```log [ 83920.866 ; 86797.269) | @@@@@@@@@@@@@ [ 86797.269 ; 89447.267) | @@@@ [ 89447.267 ; 92286.644) | [ 92286.644 ; 95126.022) | [ 95126.022 ; 97965.400) | [ 97965.400 ; 101189.051) | [101189.051 ; 106708.482) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Document.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: LotsOfStrings) ```log [ 95943.813 ; 98562.687) | @@@@ [ 98562.687 ; 102333.074) | @@@@@@@@@@@@@ [102333.074 ; 104942.581) | @ [104942.581 ; 107541.459) | [107541.459 ; 110318.920) | [110318.920 ; 113697.669) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [113697.669 ; 118633.194) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.ContainsKeyTrue<String, String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [IDictionary]() | 193.07 μs | 146.19 μs | 0.76 | | | [Dictionary]() | 190.41 μs | 143.97 μs | 0.76 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.ContainsKeyTrue<String, String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.ContainsKeyTrue.IDictionary(Size: 512) ```log [140017.436 ; 146410.505) | @@@@@@@@@@@@@@@@ [146410.505 ; 150453.994) | @@ [150453.994 ; 154463.883) | [154463.883 ; 158473.772) | [158473.772 ; 162483.660) | [162483.660 ; 166493.549) | [166493.549 ; 170503.437) | [170503.437 ; 174513.326) | [174513.326 ; 178523.215) | [178523.215 ; 184637.415) | @@@@@@@@ [184637.415 ; 188647.304) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [188647.304 ; 192872.443) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [192872.443 ; 196920.878) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [196920.878 ; 201008.619) | @@@@@@@@@@@@@@@@@@@@ [201008.619 ; 208848.772) | @@@@@ [208848.772 ; 216074.906) | @ ``` #### System.Collections.ContainsKeyTrue.Dictionary(Size: 512) ```log [139382.697 ; 143414.701) | @@@@@@@@@@@@@@@@ [143414.701 ; 146900.573) | @@ [146900.573 ; 150932.577) | [150932.577 ; 154964.581) | [154964.581 ; 158996.584) | [158996.584 ; 163028.588) | [163028.588 ; 167060.592) | [167060.592 ; 171092.595) | [171092.595 ; 175124.599) | [175124.599 ; 179156.603) | [179156.603 ; 182999.879) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [182999.879 ; 187031.882) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [187031.882 ; 193040.954) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [193040.954 ; 197045.141) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [197045.141 ; 204322.968) | @@@@@@@ [204322.968 ; 210447.154) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Numerics.Tests.Perf_Matrix4x4 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [CreateFromScalars]() | 61.22 ns | 40.31 ns | 0.66 | | | [GetDeterminantBenchmark]() | 152.86 ns | 81.79 ns | 0.54 | | | [CreatePerspectiveOffCenterBenchmark]() | 106.08 ns | 74.39 ns | 0.70 | | | [CreatePerspectiveFieldOfViewBenchmark]() | 114.00 ns | 80.27 ns | 0.70 | | | [CreateShadowBenchmark]() | 371.07 ns | 247.05 ns | 0.67 | | | [InvertBenchmark]() | 497.84 ns | 234.52 ns | 0.47 | | | [InequalityOperatorBenchmark]() | 142.07 ns | 123.27 ns | 0.87 | | | [CreateScaleFromVectorWithCenterBenchmark]() | 108.39 ns | 68.42 ns | 0.63 | | | [CreateLookAtBenchmark]() | 840.53 ns | 516.67 ns | 0.61 | | | [LerpBenchmark]() | 263.05 ns | 220.08 ns | 0.84 | | | [CreateRotationYBenchmark]() | 48.87 ns | 38.66 ns | 0.79 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Numerics.Tests.Perf_Matrix4x4*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Perf_Matrix4x4.CreateFromScalars ```log [38.953 ; 40.734) | @@@@@@@@@@@@@ [40.734 ; 42.694) | @@@@ [42.694 ; 44.777) | @ [44.777 ; 46.558) | [46.558 ; 48.340) | [48.340 ; 50.121) | [50.121 ; 51.902) | [51.902 ; 54.478) | @ [54.478 ; 56.419) | @ [56.419 ; 57.843) | @@@@@@@@ [57.843 ; 59.624) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59.624 ; 61.768) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61.768 ; 63.576) | @@@@@@@@@@@@@@@@@@@@@@@@@ [63.576 ; 65.538) | @@@@@@@@@@@ [65.538 ; 67.319) | @@@@ [67.319 ; 70.273) | [70.273 ; 72.055) | @ [72.055 ; 74.456) | @@@ [74.456 ; 76.451) | @ [76.451 ; 78.538) | @ [78.538 ; 80.756) | @ ``` #### System.Numerics.Tests.Perf_Matrix4x4.GetDeterminantBenchmark ```log [ 80.997 ; 86.169) | @@@@@@@@@@@@@@@ [ 86.169 ; 92.398) | @@ [ 92.398 ; 97.571) | @ [ 97.571 ; 102.743) | [102.743 ; 107.916) | [107.916 ; 113.088) | [113.088 ; 118.261) | [118.261 ; 123.434) | [123.434 ; 128.606) | [128.606 ; 133.779) | [133.779 ; 141.161) | @@ [141.161 ; 146.334) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [146.334 ; 151.853) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [151.853 ; 157.008) | @@@@@@@@@@@@@@@@@@@@@@@@ [157.008 ; 162.600) | @@@@@@@ [162.600 ; 167.772) | @@@ ``` #### System.Numerics.Tests.Perf_Matrix4x4.CreatePerspectiveOffCenterBenchmark ```log [ 74.090 ; 76.546) | @@@@ [ 76.546 ; 79.642) | @@ [ 79.642 ; 82.098) | @@@@@@@@@ [ 82.098 ; 84.896) | @ [ 84.896 ; 87.353) | @ [ 87.353 ; 90.259) | [ 90.259 ; 92.715) | @ [ 92.715 ; 95.171) | [ 95.171 ; 97.627) | [ 97.627 ; 100.083) | [100.083 ; 102.539) | [102.539 ; 105.482) | @@@@@@@@@ [105.482 ; 107.938) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [107.938 ; 110.415) | @@@@@@@@@@@@@@@@ [110.415 ; 115.012) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [115.012 ; 117.660) | @@@@@@@@ [117.660 ; 122.302) | @@@@ ``` #### System.Numerics.Tests.Perf_Matrix4x4.CreatePerspectiveFieldOfViewBenchmark ```log [ 79.468 ; 82.268) | @@@@@@@@@@@@@@@ [ 82.268 ; 84.975) | [ 84.975 ; 87.775) | @@@ [ 87.775 ; 90.575) | [ 90.575 ; 93.374) | [ 93.374 ; 96.174) | [ 96.174 ; 98.974) | [ 98.974 ; 101.774) | [101.774 ; 104.574) | [104.574 ; 107.374) | [107.374 ; 110.006) | [110.006 ; 112.657) | @@@@@@@@ [112.657 ; 115.457) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [115.457 ; 118.235) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [118.235 ; 121.261) | @@@@@@@@@@@@@@@@@ [121.261 ; 125.417) | @@@@@@@ [125.417 ; 128.217) | @@ ``` #### System.Numerics.Tests.Perf_Matrix4x4.CreateShadowBenchmark ```log [237.547 ; 243.302) | @ [243.302 ; 253.103) | @@@@@@@@@@@@ [253.103 ; 263.340) | @@@@@ [263.340 ; 273.141) | [273.141 ; 282.943) | [282.943 ; 292.744) | [292.744 ; 302.546) | [302.546 ; 312.347) | [312.347 ; 322.148) | [322.148 ; 331.950) | [331.950 ; 345.151) | @@@@@@@@@@@@@ [345.151 ; 354.952) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [354.952 ; 370.077) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [370.077 ; 380.464) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [380.464 ; 389.716) | @@@@@@@@@@@@@@@@@@@@ [389.716 ; 400.378) | @@@@@@@@ [400.378 ; 410.349) | @@@@ ``` #### System.Numerics.Tests.Perf_Matrix4x4.InvertBenchmark ```log [229.369 ; 249.552) | @@@@@@@@@@@@@@@@@ [249.552 ; 275.988) | @ [275.988 ; 296.171) | [296.171 ; 316.354) | [316.354 ; 336.536) | [336.536 ; 356.719) | [356.719 ; 376.901) | [376.901 ; 397.084) | [397.084 ; 417.266) | [417.266 ; 437.449) | [437.449 ; 461.522) | [461.522 ; 474.008) | @@@@@@@@ [474.008 ; 494.191) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [494.191 ; 513.615) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [513.615 ; 537.487) | @@@@ [537.487 ; 557.669) | @@@ ``` #### System.Numerics.Tests.Perf_Matrix4x4.InequalityOperatorBenchmark ```log [120.835 ; 125.577) | @@@@@@@@@@@@@ [125.577 ; 130.453) | @@@@@ [130.453 ; 133.200) | [133.200 ; 137.028) | @@ [137.028 ; 141.874) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [141.874 ; 146.343) | @@@@@@@@@@@@@@@@@@@ [146.343 ; 150.730) | @@ [150.730 ; 155.330) | @@@@ ``` #### System.Numerics.Tests.Perf_Matrix4x4.CreateScaleFromVectorWithCenterBenchmark ```log [ 58.601 ; 61.775) | @ [ 61.775 ; 64.950) | [ 64.950 ; 68.346) | @@ [ 68.346 ; 71.520) | @@@@@@@@@@@@ [ 71.520 ; 74.637) | @@@ [ 74.637 ; 77.811) | [ 77.811 ; 80.985) | [ 80.985 ; 84.160) | [ 84.160 ; 87.334) | [ 87.334 ; 91.628) | [ 91.628 ; 94.803) | @ [ 94.803 ; 98.448) | @@@@@@@@@@@@@@@ [ 98.448 ; 101.623) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [101.623 ; 103.987) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [103.987 ; 107.162) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [107.162 ; 110.399) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [110.399 ; 114.920) | @@@@@@@@@@@@@@ [114.920 ; 119.135) | @@@@@@@@@ [119.135 ; 122.310) | @@@@@@@ ``` #### System.Numerics.Tests.Perf_Matrix4x4.CreateLookAtBenchmark ```log [475.238 ; 500.373) | @@@@@@@@@@ [500.373 ; 527.682) | @@@@@@@@ [527.682 ; 552.816) | [552.816 ; 577.951) | [577.951 ; 603.086) | [603.086 ; 628.221) | [628.221 ; 653.356) | [653.356 ; 678.490) | [678.490 ; 703.625) | [703.625 ; 728.760) | [728.760 ; 755.290) | [755.290 ; 770.985) | @@@@@@@ [770.985 ; 796.120) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [796.120 ; 821.739) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [821.739 ; 847.306) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [847.306 ; 889.186) | @@@@@@@@@@ ``` #### System.Numerics.Tests.Perf_Matrix4x4.LerpBenchmark ```log [218.618 ; 223.720) | @@@@@@@@ [223.720 ; 231.510) | @@@@@@@@@ [231.510 ; 237.170) | [237.170 ; 242.829) | [242.829 ; 248.488) | [248.488 ; 257.653) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [257.653 ; 265.485) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [265.485 ; 276.183) | @@@@@@ [276.183 ; 286.947) | @ ``` #### System.Numerics.Tests.Perf_Matrix4x4.CreateRotationYBenchmark ```log [33.719 ; 34.515) | @ [34.515 ; 35.464) | @ [35.464 ; 36.361) | @ [36.361 ; 37.156) | @@@@@@ [37.156 ; 38.145) | @ [38.145 ; 39.294) | @@@@@ [39.294 ; 40.435) | @ [40.435 ; 42.047) | @@@ [42.047 ; 43.520) | @@@@@ [43.520 ; 45.279) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [45.279 ; 47.027) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [47.027 ; 48.576) | @@@@@@@@@@@@@@ [48.576 ; 50.203) | @@@@@@@@@@@@@@@@ [50.203 ; 51.825) | @@@@ [51.825 ; 53.089) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Microsoft.Extensions.Logging.LoggingOverhead Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [TwoArguments_FilteredByLevel]() | 717.55 ns | 610.61 ns | 0.85 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Microsoft.Extensions.Logging.LoggingOverhead*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Microsoft.Extensions.Logging.LoggingOverhead.TwoArguments_FilteredByLevel ```log [578.135 ; 595.211) | @@@@@@ [595.211 ; 615.970) | @@@@@@@@@@@@ [615.970 ; 631.864) | [631.864 ; 650.506) | [650.506 ; 667.686) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [667.686 ; 691.975) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [691.975 ; 712.123) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [712.123 ; 738.897) | @@@@@ [738.897 ; 759.364) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromString]() | 23.70 μs | 17.77 μs | 0.75 | | | [DeserializeFromStream]() | 32.04 μs | 25.13 μs | 0.78 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromString ```log [17246.557 ; 17988.069) | @@@@@@@@@@@@@@@@@@ [17988.069 ; 18431.279) | [18431.279 ; 18874.488) | [18874.488 ; 19317.698) | [19317.698 ; 19760.907) | [19760.907 ; 20204.117) | [20204.117 ; 20647.326) | [20647.326 ; 21090.536) | [21090.536 ; 21533.745) | [21533.745 ; 21976.955) | [21976.955 ; 22420.164) | [22420.164 ; 23190.648) | @@@@ [23190.648 ; 24174.288) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromStream ```log [24568.827 ; 25564.706) | @@@@@@@@@@@@@@@@@@ [25564.706 ; 26566.631) | [26566.631 ; 27568.556) | [27568.556 ; 28570.481) | [28570.481 ; 29572.406) | [29572.406 ; 30574.331) | [30574.331 ; 31352.213) | @@@@@@@@@@@@@@ [31352.213 ; 32555.967) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Collections.Tests.DictionarySequentialKeys

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[ContainsValue_3k_Int_Int](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.DictionarySequentialKeys.ContainsValue_3k_Int_Int.html>) 237.79 ns 211.00 ns 0.89
[TryGetValue_3k_Int_Int](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_Int.html>) 252.05 ns 211.68 ns 0.84
[ContainsValue_17_Int_Int](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.DictionarySequentialKeys.ContainsValue_17_Int_Int.html>) 240.22 ns 212.03 ns 0.88

graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.Tests.DictionarySequentialKeys*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Tests.DictionarySequentialKeys.ContainsValue_3k_Int_Int ```log [204.845 ; 212.698) | @@@@@@@@@@@@@@ [212.698 ; 219.160) | @@@ [219.160 ; 224.856) | @ [224.856 ; 231.745) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [231.745 ; 240.052) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [240.052 ; 247.304) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [247.304 ; 258.671) | @@@@@@@@@@@@@@@ ``` #### System.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_Int ```log [207.026 ; 215.255) | @@@@@@@@@@@@@@@ [215.255 ; 219.740) | @@ [219.740 ; 226.688) | @ [226.688 ; 234.888) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [234.888 ; 243.480) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [243.480 ; 249.059) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [249.059 ; 258.317) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [258.317 ; 266.204) | @@ ``` #### System.Collections.Tests.DictionarySequentialKeys.ContainsValue_17_Int_Int ```log [208.387 ; 215.873) | @@@@@@@@@@@@@@@ [215.873 ; 223.904) | @@ [223.904 ; 231.080) | @ [231.080 ; 239.399) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [239.399 ; 246.684) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [246.684 ; 255.166) | @@@@@@@@@@@@@@@ [255.166 ; 263.537) | @@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Lowering.InstructionReplacement Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [TESTtoBT]() | 13.68 ns | 10.46 ns | 0.76 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Lowering.InstructionReplacement*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Lowering.InstructionReplacement.TESTtoBT ```log [10.097 ; 10.337) | @ [10.337 ; 10.635) | @@@@@@@@@@@@@@@@@ [10.635 ; 10.875) | [10.875 ; 11.115) | [11.115 ; 11.354) | [11.354 ; 11.594) | [11.594 ; 11.833) | [11.833 ; 12.073) | [12.073 ; 12.312) | [12.312 ; 12.552) | [12.552 ; 12.791) | [12.791 ; 13.031) | [13.031 ; 13.481) | [13.481 ; 14.040) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.WriteJson<ArrayList> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SerializeToStream]() | 183.56 μs | 149.45 μs | 0.81 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson<ArrayList>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToStream ```log [144536.402 ; 150364.766) | @@@@@@@@@@@@@@ [150364.766 ; 156187.425) | @@@@ [156187.425 ; 161757.399) | [161757.399 ; 167327.372) | [167327.372 ; 173130.889) | [173130.889 ; 177927.868) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [177927.868 ; 184729.289) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [184729.289 ; 189659.885) | @@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.BubbleSort2 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 462.09 ms | 281.46 ms | 0.61 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.BubbleSort2*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.BubbleSort2.Test ```log [273085644.715 ; 288345596.135) | @@@@@@@@@@@@@@@@ [288345596.135 ; 301488919.657) | @ [301488919.657 ; 316748871.076) | [316748871.076 ; 332008822.496) | [332008822.496 ; 347268773.915) | [347268773.915 ; 362528725.334) | [362528725.334 ; 377788676.754) | [377788676.754 ; 393048628.173) | [393048628.173 ; 408308579.592) | [408308579.592 ; 423568531.012) | [423568531.012 ; 438828482.431) | [438828482.431 ; 447348121.592) | [447348121.592 ; 462608073.011) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [462608073.011 ; 477091863.817) | @@@@@@@@@@@@@@@@@@ [477091863.817 ; 494114420.406) | @@@ [494114420.406 ; 509374371.825) | @@@@@@@@@@@@@@@@@@@@ [509374371.825 ; 525393203.340) | @@@@@@@@@@@ [525393203.340 ; 538221052.810) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Binary_ToStream<LoginViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [BinaryFormatter_]() | 71.99 μs | 57.67 μs | 0.80 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Binary_ToStream<LoginViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Binary_ToStream.BinaryFormatter_ ```log [56072.836 ; 57863.504) | @@@@@@@@@@@@@@@@ [57863.504 ; 60029.116) | @@ [60029.116 ; 62233.437) | [62233.437 ; 64437.757) | [64437.757 ; 66642.078) | [66642.078 ; 68846.399) | [68846.399 ; 70282.736) | @@@@@@@@@@@@@ [70282.736 ; 72902.691) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.CtorDefaultSize<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ConcurrentDictionary]() | 819.44 ns | 743.11 ns | 0.91 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.CtorDefaultSize<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.CtorDefaultSize.ConcurrentDictionary ```log [740.370 ; 765.369) | @@@@@@@@@@@@ [765.369 ; 787.078) | @@@@@@@@ [787.078 ; 813.937) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [813.937 ; 835.145) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [835.145 ; 868.541) | @@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Xml_ToStream<XmlElement> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DataContractSerializer_]() | 9.33 μs | 7.45 μs | 0.80 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream<XmlElement>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Xml_ToStream.DataContractSerializer_ ```log [7111.537 ; 7387.887) | @@@@@@@@@@@@@@@@ [7387.887 ; 7678.365) | @ [7678.365 ; 7827.783) | [7827.783 ; 7977.201) | [7977.201 ; 8126.619) | [8126.619 ; 8276.037) | [8276.037 ; 8425.455) | [8425.455 ; 8574.873) | [8574.873 ; 8724.292) | [8724.292 ; 8917.702) | [8917.702 ; 9254.112) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9254.112 ; 9507.532) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in BenchmarksGame.SpectralNorm_3 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [RunBench]() | 4.43 ms | 3.48 ms | 0.79 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'BenchmarksGame.SpectralNorm_3*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### BenchmarksGame.SpectralNorm_3.RunBench ```log [3408290.405 ; 3545831.742) | @@@@@@@@@@@ [3545831.742 ; 3663027.481) | @@@@@@ [3663027.481 ; 3777470.541) | @ [3777470.541 ; 3917078.370) | [3917078.370 ; 4037156.852) | [4037156.852 ; 4171725.440) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4171725.440 ; 4257020.378) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4257020.378 ; 4420835.309) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4420835.309 ; 4580511.958) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4580511.958 ; 4823257.806) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Drawing.Tests.Perf_Color Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetSaturation]() | 19.63 μs | 17.92 μs | 0.91 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Drawing.Tests.Perf_Color*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Drawing.Tests.Perf_Color.GetSaturation ```log [17396.089 ; 18085.667) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18085.667 ; 18786.493) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18786.493 ; 19415.326) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [19415.326 ; 20157.717) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20157.717 ; 21212.252) | @@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Devirtualization.Boxing Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [InterfaceTypeCheckAndCall]() | 121.67 ns | 108.55 ns | 0.89 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Devirtualization.Boxing*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Devirtualization.Boxing.InterfaceTypeCheckAndCall ```log [107.739 ; 111.349) | @@@@@@@@@@@@@@ [111.349 ; 115.493) | @@@@ [115.493 ; 118.888) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [118.888 ; 123.366) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [123.366 ; 127.603) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_Random Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [NextBytes]() | 55.62 μs | 44.59 μs | 0.80 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Random*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Random.NextBytes ```log [44357.582 ; 45292.471) | @@@@@@@@@@@@@@@@@ [45292.471 ; 46227.359) | [46227.359 ; 47162.248) | [47162.248 ; 48097.137) | [48097.137 ; 49032.026) | [49032.026 ; 49966.914) | [49966.914 ; 50901.803) | [50901.803 ; 51836.692) | [51836.692 ; 52771.580) | [52771.580 ; 53706.469) | [53706.469 ; 54853.535) | [54853.535 ; 57001.076) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [57001.076 ; 58570.818) | @@@@@@@@@@@@@@@ [58570.818 ; 62003.109) | @@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Reflection.Activator<EmptyClass> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [CreateInstanceNames]() | 40.33 μs | 34.06 μs | 0.84 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Reflection.Activator<EmptyClass>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Reflection.Activator.CreateInstanceNames ```log [33416.488 ; 34326.184) | @@@@@@@@@@@@@@ [34326.184 ; 35097.010) | @@@@ [35097.010 ; 36006.706) | [36006.706 ; 36916.403) | [36916.403 ; 37826.099) | [37826.099 ; 39250.229) | @@@@ [39250.229 ; 40159.926) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [40159.926 ; 41628.996) | @@@@@ [41628.996 ; 42998.005) | @@@@@@@@@@@ [42998.005 ; 44784.702) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Net.Security.Tests.SslStreamTests Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ConcurrentReadWrite]() | 43.24 μs | 37.73 μs | 0.87 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Net.Security.Tests.SslStreamTests*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Net.Security.Tests.SslStreamTests.ConcurrentReadWrite ```log [37320.311 ; 38785.715) | @@@@@@@@@@@@@@@@@@ [38785.715 ; 39761.686) | [39761.686 ; 40737.658) | [40737.658 ; 41896.929) | [41896.929 ; 43177.681) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [43177.681 ; 45120.601) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.CtorFromCollection<Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Dictionary]() | 37.07 μs | 27.32 μs | 0.74 | | | [ConcurrentQueue]() | 78.46 μs | 66.82 μs | 0.85 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.CtorFromCollection<Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.CtorFromCollection.Dictionary(Size: 512) ```log [26767.499 ; 27496.812) | @@@@@@@@@@@@@@@ [27496.812 ; 28745.054) | @ [28745.054 ; 29474.367) | [29474.367 ; 30429.690) | @@ [30429.690 ; 31159.003) | [31159.003 ; 31888.315) | [31888.315 ; 32617.628) | [32617.628 ; 33346.940) | [33346.940 ; 34076.253) | [34076.253 ; 34805.565) | [34805.565 ; 35949.224) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [35949.224 ; 37310.604) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [37310.604 ; 38690.076) | @ [38690.076 ; 39790.303) | @@ [39790.303 ; 41233.198) | @@ ``` #### System.Collections.CtorFromCollection.ConcurrentQueue(Size: 512) ```log [65382.607 ; 68016.413) | @@@@@@@@@@@@@ [68016.413 ; 70482.583) | @@@@@ [70482.583 ; 72686.522) | [72686.522 ; 74197.961) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [74197.961 ; 77057.441) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [77057.441 ; 79752.923) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [79752.923 ; 82017.128) | @@@@@@@@@@@@@@@@@@@ [82017.128 ; 85043.475) | @@@@@@@@@@@@@@ [85043.475 ; 87606.238) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.ContainsTrue<Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Span]() | 2.06 ms | 1.61 ms | 0.78 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.ContainsTrue<Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.ContainsTrue.Span(Size: 512) ```log [1583112.558 ; 1617542.228) | @@@@@@@@@@@@@ [1617542.228 ; 1656678.347) | @@@@ [1656678.347 ; 1691108.018) | [1691108.018 ; 1751506.784) | [1751506.784 ; 1821320.430) | @ [1821320.430 ; 1890179.771) | [1890179.771 ; 1959039.111) | [1959039.111 ; 2007240.321) | [2007240.321 ; 2070303.084) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2070303.084 ; 2185215.967) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in BenchmarksGame.FannkuchRedux_5 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [RunBench]() | 319.39 ms | 153.08 ms | 0.48 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'BenchmarksGame.FannkuchRedux_5*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### BenchmarksGame.FannkuchRedux_5.RunBench(n: 10, expectedSum: 38) ```log [148051328.148 ; 159895688.585) | @@@@@@@@@@@@@@@@ [159895688.585 ; 167975214.032) | [167975214.032 ; 179819574.468) | @@ [179819574.468 ; 191663934.905) | [191663934.905 ; 203508295.341) | [203508295.341 ; 215352655.777) | [215352655.777 ; 227197016.214) | [227197016.214 ; 239041376.650) | [239041376.650 ; 250885737.087) | [250885737.087 ; 262730097.523) | [262730097.523 ; 274574457.959) | [274574457.959 ; 284299188.348) | @@@ [284299188.348 ; 296143548.785) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [296143548.785 ; 313997991.946) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [313997991.946 ; 325954858.418) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [325954858.418 ; 335198103.018) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in V8.Crypto.Support Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Bench]() | 128.16 ms | 105.69 ms | 0.82 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'V8.Crypto.Support*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### V8.Crypto.Support.Bench ```log [103988557.112 ; 107815258.582) | @@@@@@@@@@@@@ [107815258.582 ; 111141297.055) | @@@ [111141297.055 ; 114275104.646) | @@ [114275104.646 ; 117179514.943) | [117179514.943 ; 121077130.233) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [121077130.233 ; 125016971.598) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [125016971.598 ; 128856517.453) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [128856517.453 ; 132043648.571) | @@@@@@@@@@@ [132043648.571 ; 136484145.651) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.Concurrent.Count<Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Queue]() | 75.31 ns | 57.08 ns | 0.76 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.Concurrent.Count<Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Concurrent.Count.Queue(Size: 512) ```log [55.131 ; 56.652) | @@@@@@@@@@@ [56.652 ; 59.196) | @@@@@@@ [59.196 ; 60.718) | [60.718 ; 62.239) | [62.239 ; 63.760) | [63.760 ; 65.282) | [65.282 ; 66.803) | [66.803 ; 68.325) | [68.325 ; 70.519) | @ [70.519 ; 72.063) | @@@@@@@@@@@ [72.063 ; 73.584) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [73.584 ; 75.329) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [75.329 ; 77.137) | @@@@@@@@@@@@@@@@@@@@@@@@ [77.137 ; 79.417) | @@@@@@@ [79.417 ; 81.163) | @@@ [81.163 ; 86.101) | @@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive<Location>

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[CaseInsensitiveMatching](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive(Location).CaseInsensitiveMatching.html>) 56.91 μs 42.83 μs 0.75
[MissingProperties](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive(Location).MissingProperties.html>) 33.07 μs 25.02 μs 0.76

graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive&lt;Location&gt;*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive.CaseInsensitiveMatching ```log [42412.758 ; 43540.591) | @@@@@@@@@@@@@@@@@@ [43540.591 ; 44668.425) | [44668.425 ; 45796.258) | [45796.258 ; 46924.092) | [46924.092 ; 48051.925) | [48051.925 ; 49179.759) | [49179.759 ; 50307.592) | [50307.592 ; 51435.426) | [51435.426 ; 52563.260) | [52563.260 ; 53691.093) | [53691.093 ; 54818.927) | [54818.927 ; 56155.918) | @@@@@@@@@@@@@@@ [56155.918 ; 58387.078) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive.MissingProperties ```log [24212.382 ; 24714.888) | @ [24714.888 ; 25331.064) | @@@@@@@@@@@@@@@@ [25331.064 ; 25947.240) | [25947.240 ; 26563.416) | [26563.416 ; 27179.591) | [27179.591 ; 27795.767) | [27795.767 ; 28411.943) | [28411.943 ; 29028.119) | [29028.119 ; 29644.295) | [29644.295 ; 30260.470) | [30260.470 ; 30876.646) | [30876.646 ; 31492.822) | [31492.822 ; 32454.043) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [32454.043 ; 34093.979) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.WriteJson<BinaryData> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SerializeToString]() | 48.39 μs | 33.43 μs | 0.69 | | | [SerializeToStream]() | 48.56 μs | 34.38 μs | 0.71 | | | [SerializeToUtf8Bytes]() | 40.55 μs | 28.75 μs | 0.71 | | | [SerializeObjectProperty]() | 52.53 μs | 38.26 μs | 0.73 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson<BinaryData>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToString ```log [32651.606 ; 33673.996) | @@@@@@@@@@@@@@ [33673.996 ; 34784.187) | @@@@ [34784.187 ; 35806.576) | [35806.576 ; 36828.966) | [36828.966 ; 37851.355) | [37851.355 ; 38873.745) | [38873.745 ; 39896.134) | [39896.134 ; 40918.523) | [40918.523 ; 41940.913) | [41940.913 ; 42963.302) | [42963.302 ; 43985.692) | [43985.692 ; 44895.158) | @ [44895.158 ; 45917.547) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [45917.547 ; 47218.013) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [47218.013 ; 48368.012) | @@@@@@@@@@@@@@@@@@@@ [48368.012 ; 50216.624) | @@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToStream ```log [33559.704 ; 34506.859) | @@@@@@@@@@@@@@@@ [34506.859 ; 35437.903) | @ [35437.903 ; 36385.057) | [36385.057 ; 37332.212) | [37332.212 ; 38279.367) | [38279.367 ; 39226.521) | [39226.521 ; 40173.676) | [40173.676 ; 41120.830) | [41120.830 ; 42067.985) | [42067.985 ; 43015.140) | [43015.140 ; 43962.294) | [43962.294 ; 45113.994) | @ [45113.994 ; 46364.516) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [46364.516 ; 48252.379) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [48252.379 ; 50325.453) | @@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToUtf8Bytes ```log [28146.053 ; 29053.735) | @@@@@@@@@@@@@@@@ [29053.735 ; 30171.813) | @@ [30171.813 ; 31079.495) | [31079.495 ; 31987.177) | [31987.177 ; 32894.859) | [32894.859 ; 33802.541) | [33802.541 ; 34710.223) | [34710.223 ; 35617.905) | [35617.905 ; 36525.587) | [36525.587 ; 37433.269) | [37433.269 ; 38340.951) | [38340.951 ; 39149.322) | @@ [39149.322 ; 40057.004) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [40057.004 ; 40990.601) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [40990.601 ; 42005.418) | @@@@@@@@@@@@@@@@@@@@@ [42005.418 ; 44126.081) | @@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.WriteJson.SerializeObjectProperty ```log [37514.457 ; 38600.484) | @@@@@@@@@@@@@@ [38600.484 ; 39907.459) | @@ [39907.459 ; 40993.486) | @@ [40993.486 ; 42079.513) | [42079.513 ; 43165.540) | [43165.540 ; 44251.567) | [44251.567 ; 45337.594) | [45337.594 ; 46423.621) | [46423.621 ; 47509.648) | [47509.648 ; 48595.675) | [48595.675 ; 49681.702) | [49681.702 ; 50747.560) | @@@@ [50747.560 ; 52014.392) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [52014.392 ; 53100.419) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [53100.419 ; 54403.998) | @@@@@@@@@@@@@@@@@ [54403.998 ; 56766.893) | @@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Xml_ToStream<MyEventsListerViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [XmlSerializer_]() | 12.48 ms | 10.04 ms | 0.80 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream<MyEventsListerViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Xml_ToStream.XmlSerializer_ ```log [ 8770890.926 ; 9002073.691) | @ [ 9002073.691 ; 9182507.291) | [ 9182507.291 ; 9413690.056) | @@@@ [ 9413690.056 ; 9704745.860) | @@@@@@ [ 9704745.860 ; 10048714.754) | @@@@@@@ [10048714.754 ; 10279897.519) | [10279897.519 ; 10511080.284) | [10511080.284 ; 10742263.049) | [10742263.049 ; 11161904.960) | @@@@@@@@ [11161904.960 ; 11403358.877) | @@@@@@@@@@@@@@@@@@@@@@ [11403358.877 ; 11861254.601) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11861254.601 ; 12248038.987) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12248038.987 ; 12502417.673) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12502417.673 ; 12980206.362) | @@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Memory.ReadOnlySpan Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [IndexOfString]() | 535.24 ns | 410.97 ns | 0.77 | | | [IndexOfString]() | 646.80 ns | 574.72 ns | 0.89 | | | [GetPinnableReference]() | 17.74 ns | 14.51 ns | 0.82 | | | [IndexOfString]() | 1.58 μs | 1.16 μs | 0.73 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Memory.ReadOnlySpan*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.ReadOnlySpan.IndexOfString(input: "だだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだすだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだ", value: "す", comparisonType: Ordinal) ```log [401.826 ; 411.415) | @@@@@@@@@ [411.415 ; 424.702) | @@@@@@@@@ [424.702 ; 434.291) | [434.291 ; 443.881) | [443.881 ; 453.470) | [453.470 ; 463.059) | [463.059 ; 472.648) | [472.648 ; 482.238) | [482.238 ; 491.827) | [491.827 ; 501.416) | [501.416 ; 519.289) | [519.289 ; 539.775) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [539.775 ; 558.757) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [558.757 ; 577.935) | [577.935 ; 597.114) | [597.114 ; 616.292) | [616.292 ; 635.471) | [635.471 ; 654.649) | [654.649 ; 672.780) | @ ``` #### System.Memory.ReadOnlySpan.IndexOfString(input: "More Test's", value: "Tests", comparisonType: OrdinalIgnoreCase) ```log [558.309 ; 570.058) | @@@@@@@@@ [570.058 ; 581.823) | @@@@@@@ [581.823 ; 597.041) | @@ [597.041 ; 613.813) | [613.813 ; 633.953) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [633.953 ; 654.472) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [654.472 ; 675.545) | @@@@@@@@@@@@@@@@@@@@@@@@@ [675.545 ; 712.101) | @@@@@@@@@@ ``` #### System.Memory.ReadOnlySpan.GetPinnableReference ```log [14.431 ; 14.726) | @@@@@@@@@@@@@ [14.726 ; 15.272) | @@@ [15.272 ; 15.639) | [15.639 ; 16.250) | @@ [16.250 ; 16.840) | [16.840 ; 17.430) | [17.430 ; 17.907) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17.907 ; 18.330) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18.330 ; 18.762) | @@@@@@@@@@@@@@@ [18.762 ; 19.494) | @@@@@@ [19.494 ; 20.341) | @@@@@@@@@ ``` #### System.Memory.ReadOnlySpan.IndexOfString(input: "Hello WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello Worldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylong!xyz", value: "~", comparisonType: Ordinal) ```log [1141.926 ; 1171.617) | @@@@@@ [1171.617 ; 1204.464) | [1204.464 ; 1234.155) | @@@@@@@@@@@ [1234.155 ; 1263.845) | [1263.845 ; 1293.536) | [1293.536 ; 1323.226) | [1323.226 ; 1352.916) | [1352.916 ; 1382.607) | [1382.607 ; 1412.297) | [1412.297 ; 1441.988) | [1441.988 ; 1471.678) | [1471.678 ; 1519.001) | [1519.001 ; 1563.971) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1563.971 ; 1627.490) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1627.490 ; 1686.871) | [1686.871 ; 1746.252) | [1746.252 ; 1808.164) | [1808.164 ; 1844.693) | @ [1844.693 ; 1896.775) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Globalization.Tests.Perf_NumberCultureInfo Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ToString]() | 5.68 μs | 3.49 μs | 0.61 | | | [ToString]() | 5.70 μs | 3.51 μs | 0.62 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Globalization.Tests.Perf_NumberCultureInfo*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Globalization.Tests.Perf_NumberCultureInfo.ToString(culturestring: ) ```log [3492.926 ; 3651.550) | @@@@@@@@@@@@@@@ [3651.550 ; 3791.397) | @@ [3791.397 ; 3950.022) | [3950.022 ; 4108.646) | [4108.646 ; 4267.270) | [4267.270 ; 4425.894) | [4425.894 ; 4584.518) | [4584.518 ; 4743.143) | [4743.143 ; 4901.767) | [4901.767 ; 5060.391) | [5060.391 ; 5219.015) | [5219.015 ; 5365.647) | [5365.647 ; 5510.924) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5510.924 ; 5669.548) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5669.548 ; 5826.729) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Globalization.Tests.Perf_NumberCultureInfo.ToString(culturestring: fr) ```log [3346.849 ; 3535.942) | @@ [3535.942 ; 3696.939) | @@@@@@@@@@@@@@ [3696.939 ; 3808.135) | @@ [3808.135 ; 3969.132) | [3969.132 ; 4130.129) | [4130.129 ; 4291.126) | [4291.126 ; 4452.123) | [4452.123 ; 4613.120) | [4613.120 ; 4774.116) | [4774.116 ; 4935.113) | [4935.113 ; 5096.110) | [5096.110 ; 5257.107) | [5257.107 ; 5349.919) | [5349.919 ; 5488.230) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5488.230 ; 5649.227) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5649.227 ; 5805.179) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5805.179 ; 5944.180) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Numerics.Tests.Perf_BigInteger Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Multiply]() | 30.91 ms | 24.12 ms | 0.78 | | | [Divide]() | 15.85 μs | 12.09 μs | 0.76 | | | [ToStringX]() | 1.08 μs | 938.98 ns | 0.87 | | | [ModPow]() | 30.21 ms | 24.31 ms | 0.80 | | | [Add]() | 1.48 μs | 1.20 μs | 0.81 | | | [Ctor_ByteArray]() | 2.05 μs | 1.53 μs | 0.75 | | | [Multiply]() | 35.63 μs | 28.05 μs | 0.79 | | | [ToByteArray]() | 207.50 ns | 170.63 ns | 0.82 | | | [Remainder]() | 47.91 ms | 33.89 ms | 0.71 | | | [GreatestCommonDivisor]() | 222.67 ns | 158.50 ns | 0.71 | | | [ToByteArray]() | 1.33 μs | 853.38 ns | 0.64 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Numerics.Tests.Perf_BigInteger*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 65536,65536 bits) ```log [23806570.561 ; 24361834.346) | @@@@@@@@@@@@@@@@@ [24361834.346 ; 24917098.132) | [24917098.132 ; 25858684.284) | [25858684.284 ; 26413948.070) | @ [26413948.070 ; 26969211.855) | [26969211.855 ; 27524475.641) | [27524475.641 ; 28079739.426) | [28079739.426 ; 28635003.212) | [28635003.212 ; 29190266.997) | [29190266.997 ; 29745530.783) | [29745530.783 ; 30389223.835) | [30389223.835 ; 31596281.554) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [31596281.554 ; 32576748.106) | @@@@@@ [32576748.106 ; 33789059.116) | @@@@@ [33789059.116 ; 34961335.955) | @@@@ [34961335.955 ; 36071863.526) | [36071863.526 ; 37182391.097) | [37182391.097 ; 38292918.668) | [38292918.668 ; 39681925.048) | @ ``` #### System.Numerics.Tests.Perf_BigInteger.Divide(arguments: 1024,512 bits) ```log [11812.248 ; 12082.155) | @@@@@@@@@@@ [12082.155 ; 12574.693) | @@@@@@@ [12574.693 ; 12844.599) | [12844.599 ; 13114.506) | [13114.506 ; 13384.412) | [13384.412 ; 13654.319) | [13654.319 ; 13924.225) | [13924.225 ; 14194.132) | [14194.132 ; 14464.038) | [14464.038 ; 14961.261) | @@@@@@@@@@@@@@ [14961.261 ; 15547.965) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [15547.965 ; 16099.779) | @@@@@@@@@@@@@@@ [16099.779 ; 16566.920) | @@@@@@@ ``` #### System.Numerics.Tests.Perf_BigInteger.ToStringX(numberString: -2147483648) ```log [ 861.054 ; 885.799) | @@@@@ [ 885.799 ; 905.885) | @@@@ [ 905.885 ; 933.791) | @@@@ [ 933.791 ; 963.938) | @@@@@ [ 963.938 ; 988.380) | [ 988.380 ; 1023.831) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1023.831 ; 1055.822) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1055.822 ; 1088.993) | @@@@@@@@@@ ``` #### System.Numerics.Tests.Perf_BigInteger.ModPow(arguments: 16384,16384,64 bits) ```log [23633303.695 ; 24523902.222) | @@@@@@@@@@@@@ [24523902.222 ; 25079661.602) | @@@@ [25079661.602 ; 25607845.283) | @ [25607845.283 ; 26611014.342) | [26611014.342 ; 27614183.402) | [27614183.402 ; 28617352.461) | [28617352.461 ; 29278398.117) | @@@@@@@@@@@@@@@@@@@ [29278398.117 ; 30439269.056) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [30439269.056 ; 31925791.498) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Numerics.Tests.Perf_BigInteger.Add(arguments: 1024,1024 bits) ```log [1189.533 ; 1237.148) | @@@@@@@@@@@@@@@@ [1237.148 ; 1276.592) | @ [1276.592 ; 1302.382) | @ [1302.382 ; 1343.249) | [1343.249 ; 1384.117) | [1384.117 ; 1418.576) | [1418.576 ; 1464.748) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1464.748 ; 1515.330) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1515.330 ; 1551.441) | @@ [1551.441 ; 1596.861) | @@@@ ``` #### System.Numerics.Tests.Perf_BigInteger.Ctor_ByteArray(numberString: 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890) ```log [1409.938 ; 1454.612) | @@@ [1454.612 ; 1509.464) | @@@@@@@@ [1509.464 ; 1557.909) | @@@@@@ [1557.909 ; 1599.307) | [1599.307 ; 1640.704) | [1640.704 ; 1682.102) | [1682.102 ; 1723.499) | [1723.499 ; 1764.897) | [1764.897 ; 1806.294) | [1806.294 ; 1847.692) | [1847.692 ; 1910.201) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1910.201 ; 1960.049) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1960.049 ; 2007.904) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2007.904 ; 2073.588) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2073.588 ; 2121.192) | @@ [2121.192 ; 2189.673) | @ [2189.673 ; 2254.594) | @ ``` #### System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 1024,1024 bits) ```log [27552.043 ; 28173.920) | @@@@@@@@@@@@@@@@ [28173.920 ; 28795.796) | [28795.796 ; 29509.685) | [29509.685 ; 30131.562) | @@ [30131.562 ; 30753.438) | [30753.438 ; 31375.314) | [31375.314 ; 31997.190) | [31997.190 ; 32619.066) | [32619.066 ; 33240.942) | [33240.942 ; 33862.818) | [33862.818 ; 34903.621) | [34903.621 ; 36261.654) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [36261.654 ; 37361.622) | @ [37361.622 ; 38400.940) | @@@@@@@ [38400.940 ; 39456.699) | @@ [39456.699 ; 41012.787) | @@@@@ ``` #### System.Numerics.Tests.Perf_BigInteger.ToByteArray(numberString: 123) ```log [166.249 ; 171.764) | @@@@@@@@@@@@ [171.764 ; 176.498) | @ [176.498 ; 181.943) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [181.943 ; 189.029) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [189.029 ; 195.157) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [195.157 ; 203.043) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [203.043 ; 210.636) | @@@@@@@@@@@@@@@@@ [210.636 ; 222.059) | @@@@@@ ``` #### System.Numerics.Tests.Perf_BigInteger.Remainder(arguments: 65536,32768 bits) ```log [33573765.550 ; 34406425.754) | @@@@@@@@@@@@@@@ [34406425.754 ; 35825013.684) | @ [35825013.684 ; 36987730.426) | @ [36987730.426 ; 37820390.630) | [37820390.630 ; 38653050.834) | [38653050.834 ; 39485711.039) | [39485711.039 ; 40318371.243) | [40318371.243 ; 41151031.447) | [41151031.447 ; 41983691.651) | [41983691.651 ; 43377868.238) | [43377868.238 ; 44635265.773) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [44635265.773 ; 46333772.739) | @@@@@@@@@@@@@@@@@ [46333772.739 ; 47674166.931) | @@@@@@@@@@ [47674166.931 ; 49410769.474) | @@ [49410769.474 ; 51433777.340) | @ ``` #### System.Numerics.Tests.Perf_BigInteger.GreatestCommonDivisor(arguments: 16,16 bits) ```log [158.304 ; 163.124) | @@@@@@@@@@@@@@ [163.124 ; 167.266) | @@@@ [167.266 ; 172.086) | [172.086 ; 176.907) | [176.907 ; 181.727) | [181.727 ; 186.547) | [186.547 ; 191.368) | [191.368 ; 196.188) | [196.188 ; 201.009) | [201.009 ; 205.829) | [205.829 ; 210.649) | [210.649 ; 214.203) | [214.203 ; 219.004) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [219.004 ; 223.825) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [223.825 ; 228.635) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [228.635 ; 236.397) | @@@@@@@@@@@@@@@@@@@ [236.397 ; 245.829) | @@@@@@ ``` #### System.Numerics.Tests.Perf_BigInteger.ToByteArray(numberString: 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890) ```log [ 800.625 ; 822.836) | @ [ 822.836 ; 860.034) | @@@@@@@@@@@@@@@ [ 860.034 ; 883.507) | @@ [ 883.507 ; 920.705) | [ 920.705 ; 957.902) | [ 957.902 ; 995.100) | [ 995.100 ; 1032.297) | [1032.297 ; 1069.495) | [1069.495 ; 1106.693) | [1106.693 ; 1143.890) | [1143.890 ; 1182.473) | [1182.473 ; 1240.055) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1240.055 ; 1268.135) | @@@@@@@@@@@@@@@ [1268.135 ; 1305.332) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1305.332 ; 1349.247) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1349.247 ; 1397.838) | @ [1397.838 ; 1435.035) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.EightQueens Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 26.07 μs | 19.34 μs | 0.74 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.EightQueens*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.EightQueens.Test ```log [19322.939 ; 19844.844) | @@@@@@@@@@@@@@ [19844.844 ; 20519.455) | @@@@ [20519.455 ; 21041.360) | [21041.360 ; 21563.265) | [21563.265 ; 22085.170) | [22085.170 ; 22607.075) | [22607.075 ; 23128.980) | [23128.980 ; 23650.885) | [23650.885 ; 24172.790) | [24172.790 ; 24694.695) | [24694.695 ; 25604.166) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [25604.166 ; 26225.550) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [26225.550 ; 27345.744) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [27345.744 ; 28307.115) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Tests.Perf_DateTimes Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [WriteDateTimes]() | 152.53 ms | 123.27 ms | 0.81 | | | [WriteDateTimes]() | 133.95 ms | 113.70 ms | 0.85 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Perf_DateTimes*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_DateTimes.WriteDateTimes(Formatted: True, SkipValidation: True) ```log [114696513.463 ; 117080225.847) | @@ [117080225.847 ; 119925610.253) | @@@@@@@@ [119925610.253 ; 123804418.420) | @@@@@@@ [123804418.420 ; 126649802.826) | [126649802.826 ; 129495187.233) | [129495187.233 ; 132340571.639) | [132340571.639 ; 135185956.046) | [135185956.046 ; 138732434.963) | [138732434.963 ; 144325809.870) | @@@@@@@@@@@@ [144325809.870 ; 147338143.095) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [147338143.095 ; 153228637.552) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [153228637.552 ; 156892388.087) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [156892388.087 ; 160109664.436) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [160109664.436 ; 166845776.243) | @@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_DateTimes.WriteDateTimes(Formatted: False, SkipValidation: False) ```log [105950924.872 ; 110118154.963) | @@@@@@@@ [110118154.963 ; 113960461.939) | @@@@@@@@ [113960461.939 ; 117937095.592) | @ [117937095.592 ; 121594611.036) | [121594611.036 ; 125105010.418) | [125105010.418 ; 128713348.850) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [128713348.850 ; 133717632.741) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [133717632.741 ; 138261512.820) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [138261512.820 ; 141194944.694) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Json_ToString<LoginViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [JsonNet_]() | 16.34 μs | 13.55 μs | 0.83 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Json_ToString<LoginViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Json_ToString.JsonNet_ ```log [13018.525 ; 13304.840) | @@ [13304.840 ; 13800.269) | @@@@@@@@@@@@@@@@ [13800.269 ; 14247.723) | [14247.723 ; 14695.177) | [14695.177 ; 15142.631) | [15142.631 ; 15442.761) | [15442.761 ; 15931.568) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [15931.568 ; 16788.493) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Collections.Tests.Perf_BitArray

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[BitArrayGet](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.Perf_BitArray.BitArrayGet(Size%3a%204).html>) 1.10 μs 912.46 ns 0.83
[BitArrayNot](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.Perf_BitArray.BitArrayNot(Size%3a%20512).html>) 1.37 μs 832.69 ns 0.61
[BitArrayXor](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.Perf_BitArray.BitArrayXor(Size%3a%204).html>) 57.88 ns 46.00 ns 0.79
[BitArrayAnd](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.Perf_BitArray.BitArrayAnd(Size%3a%20512).html>) 1.78 μs 1.18 μs 0.67
[BitArrayCopyToBoolArray](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.Perf_BitArray.BitArrayCopyToBoolArray(Size%3a%20512).html>) 112.26 μs 87.12 μs 0.78
[BitArrayCopyToBoolArray](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.Perf_BitArray.BitArrayCopyToBoolArray(Size%3a%204).html>) 991.87 ns 787.37 ns 0.79
[BitArrayXor](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.Perf_BitArray.BitArrayXor(Size%3a%20512).html>) 1.73 μs 1.19 μs 0.69
[BitArraySet](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Tests.Perf_BitArray.BitArraySet(Size%3a%204).html>) 171.85 ns 150.24 ns 0.87

graph graph graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.Tests.Perf_BitArray*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Tests.Perf_BitArray.BitArrayGet(Size: 4) ```log [ 897.684 ; 927.159) | @@@@@@@@@@@@@@@ [ 927.159 ; 962.213) | @@ [ 962.213 ; 998.093) | @ [ 998.093 ; 1036.417) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1036.417 ; 1061.070) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [1061.070 ; 1093.189) | @@@@@@@@@@@@@ [1093.189 ; 1117.480) | @@ [1117.480 ; 1151.997) | @@ [1151.997 ; 1188.220) | @@ [1188.220 ; 1214.122) | [1214.122 ; 1240.024) | [1240.024 ; 1265.926) | [1265.926 ; 1291.828) | [1291.828 ; 1317.729) | [1317.729 ; 1343.631) | [1343.631 ; 1383.546) | @ ``` #### System.Collections.Tests.Perf_BitArray.BitArrayNot(Size: 512) ```log [ 796.016 ; 836.014) | @@@@@@@@@@@@@@@@@ [ 836.014 ; 876.011) | [ 876.011 ; 916.008) | [ 916.008 ; 956.005) | [ 956.005 ; 996.002) | [ 996.002 ; 1036.000) | [1036.000 ; 1075.997) | [1075.997 ; 1115.994) | [1115.994 ; 1155.991) | [1155.991 ; 1195.988) | [1195.988 ; 1235.986) | [1235.986 ; 1261.245) | [1261.245 ; 1290.303) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1290.303 ; 1330.300) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1330.300 ; 1379.265) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1379.265 ; 1441.866) | @@ [1441.866 ; 1481.863) | [1481.863 ; 1521.860) | [1521.860 ; 1561.857) | [1561.857 ; 1603.103) | [1603.103 ; 1643.100) | @ ``` #### System.Collections.Tests.Perf_BitArray.BitArrayXor(Size: 4) ```log [31.673 ; 32.827) | @ [32.827 ; 33.982) | [33.982 ; 35.136) | [35.136 ; 36.290) | [36.290 ; 37.444) | [37.444 ; 38.598) | [38.598 ; 40.068) | [40.068 ; 41.222) | @ [41.222 ; 42.610) | @@@@ [42.610 ; 43.765) | @@@@@@@@@@@ [43.765 ; 45.139) | @ [45.139 ; 46.293) | @@ [46.293 ; 47.463) | @@@@ [47.463 ; 48.622) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [48.622 ; 49.776) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [49.776 ; 51.270) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [51.270 ; 52.589) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [52.589 ; 53.743) | @@@@@@@@@@@ [53.743 ; 55.089) | @@@@ [55.089 ; 56.896) | @@@@@ [56.896 ; 59.131) | @@@@ [59.131 ; 60.744) | [60.744 ; 62.352) | @@@ [62.352 ; 64.766) | @@@ [64.766 ; 67.074) | [67.074 ; 69.285) | @ ``` #### System.Collections.Tests.Perf_BitArray.BitArrayAnd(Size: 512) ```log [1130.301 ; 1180.736) | @@@@@ [1180.736 ; 1234.131) | @@@@@@@@@@@@@ [1234.131 ; 1287.526) | [1287.526 ; 1340.921) | [1340.921 ; 1394.316) | [1394.316 ; 1447.711) | [1447.711 ; 1501.105) | [1501.105 ; 1554.500) | [1554.500 ; 1607.895) | [1607.895 ; 1665.864) | @@ [1665.864 ; 1719.259) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1719.259 ; 1780.696) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1780.696 ; 1839.378) | @@@@@@@@@@@@@@@@@@@@@ [1839.378 ; 1892.773) | @@ [1892.773 ; 1946.168) | [1946.168 ; 1999.563) | [1999.563 ; 2052.958) | [2052.958 ; 2106.353) | [2106.353 ; 2159.748) | [2159.748 ; 2213.143) | [2213.143 ; 2266.537) | [2266.537 ; 2319.932) | [2319.932 ; 2373.327) | [2373.327 ; 2426.722) | [2426.722 ; 2480.117) | [2480.117 ; 2558.348) | [2558.348 ; 2611.743) | @@@@ ``` #### System.Collections.Tests.Perf_BitArray.BitArrayCopyToBoolArray(Size: 512) ```log [ 86958.346 ; 90493.421) | @@@@@@@@@@@@@@@@@@ [ 90493.421 ; 94028.497) | [ 94028.497 ; 97563.573) | [ 97563.573 ; 101098.649) | [101098.649 ; 104633.724) | [104633.724 ; 108168.800) | [108168.800 ; 111187.528) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [111187.528 ; 117689.836) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Collections.Tests.Perf_BitArray.BitArrayCopyToBoolArray(Size: 4) ```log [ 778.231 ; 801.954) | @@@@@@@@@@@@@@@@ [ 801.954 ; 831.220) | @@ [ 831.220 ; 861.564) | [ 861.564 ; 891.907) | [ 891.907 ; 922.251) | [ 922.251 ; 952.595) | [ 952.595 ; 981.392) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 981.392 ; 1005.044) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1005.044 ; 1027.992) | @@@@@@@@@ [1027.992 ; 1063.931) | @@@@@@ [1063.931 ; 1106.911) | @ ``` #### System.Collections.Tests.Perf_BitArray.BitArrayXor(Size: 512) ```log [1159.362 ; 1203.395) | @@@@@@@@@@@ [1203.395 ; 1264.263) | @@@@@ [1264.263 ; 1308.297) | @ [1308.297 ; 1371.372) | @ [1371.372 ; 1415.406) | [1415.406 ; 1459.439) | [1459.439 ; 1503.473) | [1503.473 ; 1547.507) | [1547.507 ; 1591.540) | [1591.540 ; 1635.574) | [1635.574 ; 1693.214) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1693.214 ; 1754.274) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1754.274 ; 1809.067) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1809.067 ; 1868.528) | @@ [1868.528 ; 1912.562) | @ [1912.562 ; 1956.306) | [1956.306 ; 2000.340) | @ ``` #### System.Collections.Tests.Perf_BitArray.BitArraySet(Size: 4) ```log [146.600 ; 152.434) | @@@@@@@@@@@@@@@@ [152.434 ; 156.268) | @ [156.268 ; 160.513) | [160.513 ; 164.758) | [164.758 ; 170.587) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [170.587 ; 174.436) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [174.436 ; 180.249) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [180.249 ; 186.123) | @@@@ [186.123 ; 190.215) | @ [190.215 ; 195.038) | @ [195.038 ; 200.298) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_DateTime Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ToString]() | 6.13 μs | 4.24 μs | 0.69 | | | [ToString]() | 751.19 ns | 655.74 ns | 0.87 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_DateTime*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_DateTime.ToString(format: null) ```log [4073.836 ; 4225.619) | @@@ [4225.619 ; 4363.410) | @@@@@@@@@@ [4363.410 ; 4514.785) | @@@@ [4514.785 ; 4652.576) | [4652.576 ; 4790.366) | [4790.366 ; 4928.157) | [4928.157 ; 5065.947) | [5065.947 ; 5203.737) | [5203.737 ; 5341.528) | [5341.528 ; 5479.318) | [5479.318 ; 5617.109) | [5617.109 ; 5723.275) | [5723.275 ; 5865.890) | @@@@@@@ [5865.890 ; 6000.393) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6000.393 ; 6138.183) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6138.183 ; 6276.547) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6276.547 ; 6417.682) | @@@@@@@@@@@@@ ``` #### System.Tests.Perf_DateTime.ToString(format: "r") ```log [651.473 ; 671.998) | @@@@@@@@@@ [671.998 ; 694.377) | @@@@@@@ [694.377 ; 711.428) | [711.428 ; 727.416) | [727.416 ; 750.701) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [750.701 ; 777.737) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [777.737 ; 801.880) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Microsoft.Extensions.DependencyInjection.TimeToFirstService Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Transient]() | 48.69 μs | 41.37 μs | 0.85 | | | [Scoped]() | 59.36 μs | 50.91 μs | 0.86 | | | [Transient]() | 48.58 μs | 40.73 μs | 0.84 | | | [Singleton]() | 53.29 μs | 44.75 μs | 0.84 | | | [Singleton]() | 53.20 μs | 45.98 μs | 0.86 | | | [Scoped]() | 58.88 μs | 50.99 μs | 0.87 | | | [BuildProvider]() | 7.98 μs | 6.96 μs | 0.87 | | | [BuildProvider]() | 7.98 μs | 7.00 μs | 0.88 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Microsoft.Extensions.DependencyInjection.TimeToFirstService*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Microsoft.Extensions.DependencyInjection.TimeToFirstService.Transient(Mode: "Runtime") ```log [39798.534 ; 40905.023) | @@@ [40905.023 ; 41878.947) | @@@@@@@@@@@@@ [41878.947 ; 43565.097) | @ [43565.097 ; 44539.021) | [44539.021 ; 46316.647) | [46316.647 ; 47303.041) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [47303.041 ; 48276.964) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [48276.964 ; 49929.933) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [49929.933 ; 51068.766) | [51068.766 ; 53874.883) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### Microsoft.Extensions.DependencyInjection.TimeToFirstService.Scoped(Mode: "ILEmit") ```log [48877.458 ; 50065.275) | @@@@ [50065.275 ; 51104.911) | @@@@@@@@@@@@@ [51104.911 ; 52389.793) | @ [52389.793 ; 53429.430) | [53429.430 ; 54469.067) | [54469.067 ; 55508.703) | [55508.703 ; 57434.701) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [57434.701 ; 59706.599) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59706.599 ; 61247.175) | @@@@ [61247.175 ; 64567.254) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### Microsoft.Extensions.DependencyInjection.TimeToFirstService.Transient(Mode: "ILEmit") ```log [39804.556 ; 40788.792) | @@@ [40788.792 ; 41783.146) | @@@@@@@@@@@@@@@ [41783.146 ; 42777.500) | [42777.500 ; 43771.853) | [43771.853 ; 44766.207) | [44766.207 ; 45674.342) | [45674.342 ; 47370.487) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [47370.487 ; 48364.840) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [48364.840 ; 49987.962) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [49987.962 ; 51054.358) | [51054.358 ; 53905.485) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### Microsoft.Extensions.DependencyInjection.TimeToFirstService.Singleton(Mode: "Expressions") ```log [43974.357 ; 45689.172) | @@@@@@@@@@@@@@@ [45689.172 ; 46680.678) | @@@ [46680.678 ; 47698.033) | [47698.033 ; 48715.389) | [48715.389 ; 49732.745) | [49732.745 ; 51172.952) | @ [51172.952 ; 53123.298) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [53123.298 ; 55107.353) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [55107.353 ; 56798.225) | @@@@@@@@@@@@@@@@@@@ [56798.225 ; 58529.972) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### Microsoft.Extensions.DependencyInjection.TimeToFirstService.Singleton(Mode: "Dynamic") ```log [44208.107 ; 45239.840) | @@@@ [45239.840 ; 46251.727) | @@@@@@@@@@@@@ [46251.727 ; 47926.633) | @ [47926.633 ; 48938.520) | [48938.520 ; 49950.407) | [49950.407 ; 51001.483) | [51001.483 ; 53018.047) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [53018.047 ; 54881.034) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [54881.034 ; 56713.928) | @@@@@@@@@@@@@@ [56713.928 ; 58551.142) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### Microsoft.Extensions.DependencyInjection.TimeToFirstService.Scoped(Mode: "Expressions") ```log [49381.925 ; 51176.195) | @@@@@@@@@@@@@@@@@ [51176.195 ; 52977.496) | @ [52977.496 ; 55026.004) | [55026.004 ; 56736.502) | @@@ [56736.502 ; 58972.163) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [58972.163 ; 60982.319) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [60982.319 ; 62300.136) | @@@@@@@@@@@@@@@@@@ [62300.136 ; 64462.130) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### Microsoft.Extensions.DependencyInjection.TimeToFirstService.BuildProvider(Mode: "Expressions") ```log [6809.251 ; 7010.110) | @@@@@@@@@@@@@@ [7010.110 ; 7311.566) | @@@@ [7311.566 ; 7596.754) | @@@@@@@@@@@@@@ [7596.754 ; 7798.296) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7798.296 ; 7999.155) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7999.155 ; 8180.536) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8180.536 ; 8389.420) | @@@ [8389.420 ; 8590.279) | @@@@@@@ [8590.279 ; 8849.038) | @@@@@@@@@@@@@@@@@ [8849.038 ; 9049.896) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9049.896 ; 9389.650) | @@@@@@@@@@@@@@@ ``` #### Microsoft.Extensions.DependencyInjection.TimeToFirstService.BuildProvider(Mode: "Dynamic") ```log [6749.224 ; 7074.469) | @@@@@@@@@@@@@@@@@@ [7074.469 ; 7301.807) | [7301.807 ; 7613.911) | @@@@@@@@@@@@@@@@ [7613.911 ; 7810.638) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7810.638 ; 8011.341) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8011.341 ; 8178.426) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8178.426 ; 8381.888) | @@@ [8381.888 ; 8582.591) | @@@@@@@@@@ [8582.591 ; 8810.584) | @@@@@@@ [8810.584 ; 9011.288) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9011.288 ; 9204.835) | @@@@@@@@@@@@@@@@ [9204.835 ; 9440.535) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in ByteMark Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [BenchEmFloatClass]() | 7.36 secs | 5.58 secs | 0.76 | | | [BenchNumericSortJagged]() | 9.37 secs | 5.44 secs | 0.58 | | | [BenchNeuralJagged]() | 7.47 secs | 6.30 secs | 0.84 | | | [BenchStringSort]() | 9.74 secs | 8.06 secs | 0.83 | | | [BenchNumericSortRectangular]() | 8.09 secs | 6.49 secs | 0.80 | | | [BenchLUDecomp]() | 16.86 secs | 10.38 secs | 0.62 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'ByteMark*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### ByteMark.BenchEmFloatClass ```log [5315511024.469 ; 5460639681.593) | @@@@@@@@@@ [5460639681.593 ; 5626212240.447) | @@@@@@@ [5626212240.447 ; 5771340897.571) | [5771340897.571 ; 5916469554.695) | [5916469554.695 ; 6061598211.819) | [6061598211.819 ; 6206726868.943) | [6206726868.943 ; 6351855526.067) | [6351855526.067 ; 6496984183.191) | [6496984183.191 ; 6642112840.315) | [6642112840.315 ; 6787241497.439) | [6787241497.439 ; 6932370154.563) | [6932370154.563 ; 7215510602.276) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7215510602.276 ; 7436418741.673) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7436418741.673 ; 7864482474.627) | @@@@@@@ ``` #### ByteMark.BenchNumericSortJagged ```log [ 5348597945.219 ; 5631171113.533) | @@@@@@@@@@@@@@@@ [ 5631171113.533 ; 5876257967.542) | @ [ 5876257967.542 ; 6027172990.129) | [ 6027172990.129 ; 6309746158.443) | @ [ 6309746158.443 ; 6592319326.757) | [ 6592319326.757 ; 6874892495.071) | [ 6874892495.071 ; 7157465663.385) | [ 7157465663.385 ; 7440038831.699) | [ 7440038831.699 ; 7722612000.013) | [ 7722612000.013 ; 8005185168.327) | [ 8005185168.327 ; 8287758336.641) | [ 8287758336.641 ; 8570331504.956) | [ 8570331504.956 ; 8848440859.310) | [ 8848440859.310 ; 9131014027.624) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 9131014027.624 ; 9430889675.443) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 9430889675.443 ; 9641946633.414) | @@@@@@@@@@@@@@@ [ 9641946633.414 ; 9935059295.892) | @ [ 9935059295.892 ; 10217632464.206) | @@@@@@@ [10217632464.206 ; 10528383514.243) | [10528383514.243 ; 10810956682.557) | @ ``` #### ByteMark.BenchNeuralJagged ```log [6185337919.672 ; 6381144810.193) | @@@@@@@@@@@@@@@@ [6381144810.193 ; 6559433418.944) | @@ [6559433418.944 ; 6774019631.972) | [6774019631.972 ; 6988605845.000) | [6988605845.000 ; 7174086004.482) | [7174086004.482 ; 7398221959.037) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7398221959.037 ; 7661483836.206) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7661483836.206 ; 7865428031.769) | @@@@@ [7865428031.769 ; 8137994558.938) | @@@@@@@@ [8137994558.938 ; 8409691595.935) | @@@ [8409691595.935 ; 8641311433.124) | @ ``` #### ByteMark.BenchStringSort ```log [ 7807998092.922 ; 8125260230.927) | @@@@@@@@@@@@@@@@@ [ 8125260230.927 ; 8295848734.102) | @ [ 8295848734.102 ; 8576669684.154) | [ 8576669684.154 ; 8857490634.205) | [ 8857490634.205 ; 9054566915.446) | @@@@@@@@@ [ 9054566915.446 ; 9408903113.883) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 9408903113.883 ; 9652205817.774) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 9652205817.774 ; 10004422052.973) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [10004422052.973 ; 10440635830.305) | @@@ ``` #### ByteMark.BenchNumericSortRectangular ```log [6388331336.353 ; 6621438579.132) | @@@@@@@@@@@@@@@@ [6621438579.132 ; 6879842427.492) | @@ [6879842427.492 ; 7020906801.642) | [7020906801.642 ; 7161971175.792) | [7161971175.792 ; 7428132776.085) | [7428132776.085 ; 7723951255.126) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7723951255.126 ; 7888760231.150) | @@@@@@@@@ [7888760231.150 ; 8152617134.248) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8152617134.248 ; 8435118250.176) | @@@@@@ [8435118250.176 ; 8794618841.979) | @@@@@@@ ``` #### ByteMark.BenchLUDecomp ```log [10249953119.071 ; 10780333557.124) | @@@@@@@@@@@@@@@@@ [10780333557.124 ; 11498775198.426) | @ [11498775198.426 ; 12029155636.479) | [12029155636.479 ; 12559536074.532) | [12559536074.532 ; 13089916512.584) | [13089916512.584 ; 13620296950.637) | [13620296950.637 ; 14150677388.690) | [14150677388.690 ; 14681057826.743) | [14681057826.743 ; 15211438264.796) | [15211438264.796 ; 15741818702.848) | [15741818702.848 ; 16035117473.724) | [16035117473.724 ; 16565497911.776) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [16565497911.776 ; 17314098687.301) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17314098687.301 ; 17969418907.524) | @@@@@@@@@ [17969418907.524 ; 18545190595.493) | @ [18545190595.493 ; 19075571033.546) | [19075571033.546 ; 19605951471.598) | [19605951471.598 ; 20136331909.651) | [20136331909.651 ; 20666712347.704) | [20666712347.704 ; 21197092785.757) | [21197092785.757 ; 21727473223.809) | [21727473223.809 ; 22257853661.862) | [22257853661.862 ; 22788234099.915) | [22788234099.915 ; 23212370934.507) | [23212370934.507 ; 23742751372.560) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromString]() | 43.71 μs | 31.90 μs | 0.73 | | | [DeserializeFromStream]() | 54.98 μs | 41.70 μs | 0.76 | | | [DeserializeFromUtf8Bytes]() | 36.58 μs | 26.63 μs | 0.73 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromString ```log [31453.992 ; 32351.664) | @@@@@@@@@@@@@@@ [32351.664 ; 33029.741) | @@@ [33029.741 ; 33927.413) | [33927.413 ; 34825.085) | [34825.085 ; 35722.758) | [35722.758 ; 36620.430) | [36620.430 ; 37518.102) | [37518.102 ; 38415.774) | [38415.774 ; 39313.446) | [39313.446 ; 40211.119) | [40211.119 ; 41108.791) | [41108.791 ; 42006.463) | [42006.463 ; 43215.302) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [43215.302 ; 44112.974) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [44112.974 ; 45996.382) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromStream ```log [41510.720 ; 42439.336) | @@@@@@@@@@@@@@@@ [42439.336 ; 44021.201) | @ [44021.201 ; 44949.817) | [44949.817 ; 45878.433) | [45878.433 ; 46807.049) | [46807.049 ; 47735.665) | [47735.665 ; 48664.281) | [48664.281 ; 49592.897) | [49592.897 ; 50521.513) | [50521.513 ; 51450.129) | [51450.129 ; 52378.745) | [52378.745 ; 53745.852) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [53745.852 ; 56322.757) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromUtf8Bytes ```log [25600.930 ; 26312.867) | @@@@@@@@@@@ [26312.867 ; 27009.500) | @@@@@ [27009.500 ; 27712.439) | @@ [27712.439 ; 28424.375) | [28424.375 ; 29136.312) | [29136.312 ; 29848.248) | [29848.248 ; 30560.184) | [30560.184 ; 31272.121) | [31272.121 ; 31984.057) | [31984.057 ; 32695.994) | [32695.994 ; 33407.930) | [33407.930 ; 34424.775) | @ [34424.775 ; 35135.520) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [35135.520 ; 37050.439) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Buffers.Text.Tests.Utf8ParserTests Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [TryParseDouble]() | 593.63 ns | 516.62 ns | 0.87 | | | [TryParseUInt16]() | 167.14 ns | 133.09 ns | 0.80 | | | [TryParseUInt32]() | 158.30 ns | 123.66 ns | 0.78 | | | [TryParseInt64]() | 171.81 ns | 150.94 ns | 0.88 | | | [TryParseSingle]() | 7.38 μs | 4.62 μs | 0.63 | | | [TryParseDecimal]() | 950.43 ns | 817.74 ns | 0.86 | | | [TryParseUInt64]() | 412.67 ns | 344.45 ns | 0.83 | | | [TryParseUInt32]() | 69.04 ns | 58.73 ns | 0.85 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Buffers.Text.Tests.Utf8ParserTests*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Buffers.Text.Tests.Utf8ParserTests.TryParseDouble(value: 12345) ```log [491.037 ; 505.808) | @@@ [505.808 ; 522.317) | @@@@@@@@@@ [522.317 ; 540.230) | @@@@@ [540.230 ; 554.953) | [554.953 ; 568.781) | @@@@@@@@@@@ [568.781 ; 582.550) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [582.550 ; 603.458) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [603.458 ; 623.450) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [623.450 ; 639.740) | @@@@@ ``` #### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt16(value: 65535) ```log [129.066 ; 134.484) | @@@@@@@@@@@@@@@ [134.484 ; 138.546) | @ [138.546 ; 143.457) | @ [143.457 ; 147.491) | [147.491 ; 152.138) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [152.138 ; 157.898) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [157.898 ; 162.007) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [162.007 ; 165.534) | @@@@@@@@@@@@@@@@@@@@@ [165.534 ; 171.427) | @@@@@@@@@@@@@@@@ [171.427 ; 177.730) | @@@ ``` #### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt32(value: 12345) ```log [119.831 ; 123.935) | @@@@@@@@@@ [123.935 ; 128.632) | @@@@@ [128.632 ; 133.171) | @ [133.171 ; 136.980) | @ [136.980 ; 140.264) | [140.264 ; 145.594) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [145.594 ; 149.708) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [149.708 ; 155.428) | @@@@@@@@@@@@@@@@@@@@@@@@@ [155.428 ; 160.782) | @@@@@@@@@@@@@@@@@@@@@@ [160.782 ; 164.821) | @@ ``` #### System.Buffers.Text.Tests.Utf8ParserTests.TryParseInt64(value: 12345) ```log [142.955 ; 148.753) | @@@@@@@@@ [148.753 ; 154.369) | @@@@@@@@ [154.369 ; 157.674) | @ [157.674 ; 162.251) | [162.251 ; 168.018) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [168.018 ; 174.325) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [174.325 ; 178.390) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [178.390 ; 185.260) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [185.260 ; 191.506) | @@ [191.506 ; 197.981) | @ [197.981 ; 203.194) | [203.194 ; 208.505) | @ ``` #### System.Buffers.Text.Tests.Utf8ParserTests.TryParseSingle(value: 3.4028235E+38) ```log [4553.880 ; 4763.771) | @@@@@@@@@@@@@@@ [4763.771 ; 4922.778) | @@ [4922.778 ; 5132.669) | [5132.669 ; 5342.560) | [5342.560 ; 5552.450) | [5552.450 ; 5762.341) | [5762.341 ; 5972.232) | [5972.232 ; 6182.123) | [6182.123 ; 6392.014) | [6392.014 ; 6601.904) | [6601.904 ; 6811.795) | [6811.795 ; 7063.619) | [7063.619 ; 7215.638) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7215.638 ; 7425.529) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7425.529 ; 7610.537) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Buffers.Text.Tests.Utf8ParserTests.TryParseDecimal(value: 123456.789) ```log [ 798.841 ; 831.046) | @@@@@@@@@@@@@@ [ 831.046 ; 855.717) | @@@@ [ 855.717 ; 877.744) | [ 877.744 ; 899.771) | [ 899.771 ; 929.196) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 929.196 ; 962.860) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 962.860 ; 992.830) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 992.830 ; 1019.775) | @@ [1019.775 ; 1041.802) | [1041.802 ; 1083.652) | @ ``` #### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt64(value: 18446744073709551615) ```log [338.219 ; 346.349) | @@@@@@@@@@@@@@ [346.349 ; 356.152) | @@@ [356.152 ; 363.646) | [363.646 ; 371.776) | @ [371.776 ; 379.907) | [379.907 ; 388.037) | [388.037 ; 398.177) | @@@@ [398.177 ; 406.307) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [406.307 ; 415.837) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [415.837 ; 427.607) | @@@@@@@@@@@@@@@@ [427.607 ; 444.352) | @@@@ [444.352 ; 461.460) | @ [461.460 ; 477.721) | [477.721 ; 491.416) | [491.416 ; 509.475) | @@ [509.475 ; 525.736) | [525.736 ; 541.996) | [541.996 ; 558.257) | [558.257 ; 575.970) | [575.970 ; 595.736) | @ [595.736 ; 624.319) | @ ``` #### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt32(value: 0) ```log [58.299 ; 60.611) | @@@@@@@@@@@@@@@@@ [60.611 ; 61.861) | [61.861 ; 63.110) | [63.110 ; 64.360) | [64.360 ; 66.552) | @@@ [66.552 ; 69.039) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [69.039 ; 71.847) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71.847 ; 74.504) | @@@@@@@@@@@@ [74.504 ; 76.293) | @@@@@ [76.293 ; 78.400) | @@ [78.400 ; 80.557) | @@@@ [80.557 ; 82.335) | @@ [82.335 ; 84.881) | @ [84.881 ; 87.845) | @ [87.845 ; 90.189) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.IndexerSetReverse<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Array]() | 8.66 μs | 5.83 μs | 0.67 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.IndexerSetReverse<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.IndexerSetReverse.Array(Size: 512) ```log [5798.138 ; 6021.657) | @@@@@@@@@@@@@@@@@ [6021.657 ; 6245.176) | [6245.176 ; 6396.412) | [6396.412 ; 6619.931) | @ [6619.931 ; 6843.450) | [6843.450 ; 7066.969) | [7066.969 ; 7290.488) | [7290.488 ; 7514.007) | [7514.007 ; 7737.526) | [7737.526 ; 7961.045) | [7961.045 ; 8184.564) | [8184.564 ; 8408.083) | [8408.083 ; 8573.870) | [8573.870 ; 8797.389) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8797.389 ; 9009.710) | @ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Collections.Sort<Int32>

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[Array_ComparerClass](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Sort(Int32).Array_ComparerClass(Size%3a%20512).html>) 204.37 μs 181.46 μs 0.89
[Array_ComparerStruct](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Collections.Sort(Int32).Array_ComparerStruct(Size%3a%20512).html>) 203.08 μs 182.43 μs 0.90

graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.Sort&lt;Int32&gt;*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Sort.Array_ComparerClass(Size: 512) ```log [174341.776 ; 179266.674) | @@@@@@@@@@ [179266.674 ; 183014.723) | @@@@@@@@ [183014.723 ; 186837.150) | [186837.150 ; 190659.577) | [190659.577 ; 195572.900) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [195572.900 ; 202435.810) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [202435.810 ; 208508.624) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [208508.624 ; 214827.401) | @@@@@ ``` #### System.Collections.Sort.Array_ComparerStruct(Size: 512) ```log [176167.113 ; 180199.544) | @@@@@@@@@@@ [180199.544 ; 186744.601) | @@@@@@ [186744.601 ; 192623.121) | @ [192623.121 ; 199419.883) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [199419.883 ; 205454.086) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [205454.086 ; 211227.680) | @@@@@@@@@ [211227.680 ; 217553.357) | @@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.IO.Pipes.Tests.Perf_NamedPipeStream_ServerIn_ClientOut Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ReadWrite]() | 181.52 μs | 167.60 μs | 0.92 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.IO.Pipes.Tests.Perf_NamedPipeStream_ServerIn_ClientOut*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.IO.Pipes.Tests.Perf_NamedPipeStream_ServerIn_ClientOut.ReadWrite(size: 1000000) ```log [164727.526 ; 170287.840) | @@@@@@@@@@@@@@@@@ [170287.840 ; 174486.306) | @ [174486.306 ; 179486.275) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [179486.275 ; 187899.365) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.CreateAddAndClear<Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Span]() | 6.52 μs | 5.83 μs | 0.89 | | | [Array]() | 6.02 μs | 4.80 μs | 0.80 | | | [ICollection]() | 22.97 μs | 17.78 μs | 0.77 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.CreateAddAndClear<Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.CreateAddAndClear.Span(Size: 512) ```log [5801.232 ; 5966.403) | @@@@@@@@@@@@@@@@@ [5966.403 ; 6131.074) | [6131.074 ; 6295.745) | [6295.745 ; 6430.047) | [6430.047 ; 6586.873) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6586.873 ; 6825.248) | @@@@@@@@ [6825.248 ; 7107.997) | @@@ ``` #### System.Collections.CreateAddAndClear.Array(Size: 512) ```log [4749.118 ; 4857.595) | @@ [4857.595 ; 5051.997) | @@@@@@@@@@@@@@@@ [5051.997 ; 5244.534) | [5244.534 ; 5437.072) | [5437.072 ; 5629.609) | [5629.609 ; 5822.147) | [5822.147 ; 5951.958) | [5951.958 ; 6154.776) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6154.776 ; 6302.247) | @@ [6302.247 ; 6553.958) | @@@@@@@ [6553.958 ; 6752.743) | @@@ ``` #### System.Collections.CreateAddAndClear.ICollection(Size: 512) ```log [17490.342 ; 17976.523) | @@@@@@@@@@@@@@@@ [17976.523 ; 18339.685) | @ [18339.685 ; 18744.580) | @ [18744.580 ; 19456.103) | [19456.103 ; 20167.626) | [20167.626 ; 20879.149) | [20879.149 ; 21502.308) | @@@@@@ [21502.308 ; 22353.652) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22353.652 ; 23051.618) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [23051.618 ; 24022.544) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.ContainsKeyFalse<String, String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Dictionary]() | 179.79 μs | 129.96 μs | 0.72 | | | [ConcurrentDictionary]() | 168.21 μs | 130.17 μs | 0.77 | | | [IDictionary]() | 183.80 μs | 133.77 μs | 0.73 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.ContainsKeyFalse<String, String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.ContainsKeyFalse.Dictionary(Size: 512) ```log [129853.010 ; 133447.459) | @@@@@@@@@@@@@@ [133447.459 ; 136717.947) | @@@@ [136717.947 ; 140312.397) | [140312.397 ; 143906.846) | [143906.846 ; 147501.296) | [147501.296 ; 151095.746) | [151095.746 ; 154690.195) | [154690.195 ; 158284.645) | [158284.645 ; 161879.094) | [161879.094 ; 165473.544) | [165473.544 ; 170575.332) | @@@@@@@@@@@@@@@@@@@@@@@ [170575.332 ; 174169.781) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [174169.781 ; 178758.377) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [178758.377 ; 185997.009) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [185997.009 ; 191266.590) | @@ [191266.590 ; 196517.482) | @ [196517.482 ; 200724.045) | @@ ``` #### System.Collections.ContainsKeyFalse.ConcurrentDictionary(Size: 512) ```log [129954.635 ; 133354.312) | @@@@@@@@@@ [133354.312 ; 136310.590) | @@@@@@@ [136310.590 ; 141242.394) | @ [141242.394 ; 144198.672) | [144198.672 ; 147154.950) | [147154.950 ; 150111.228) | [150111.228 ; 153067.507) | [153067.507 ; 156023.785) | [156023.785 ; 158980.063) | [158980.063 ; 163465.931) | @@@@@@@@@@@@@@@@@@ [163465.931 ; 169922.532) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [169922.532 ; 174542.751) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [174542.751 ; 179322.950) | @@@@@@@@@@ [179322.950 ; 182945.636) | @ [182945.636 ; 188868.666) | @ ``` #### System.Collections.ContainsKeyFalse.IDictionary(Size: 512) ```log [131940.474 ; 135486.898) | @@@@@@@@@@@@@@@@@ [135486.898 ; 141255.632) | [141255.632 ; 144802.056) | @ [144802.056 ; 148348.479) | [148348.479 ; 151894.903) | [151894.903 ; 155441.327) | [155441.327 ; 158987.750) | [158987.750 ; 162534.174) | [162534.174 ; 166080.597) | [166080.597 ; 169627.021) | [169627.021 ; 176034.254) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [176034.254 ; 181623.163) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [181623.163 ; 191989.449) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_String Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Remove_Int]() | 261.09 ns | 226.33 ns | 0.87 | | | [Concat_str_str_str_str]() | 9.83 μs | 8.68 μs | 0.88 | | | [TrimEnd_CharArr]() | 340.95 ns | 285.49 ns | 0.84 | | | [Trim_CharArr]() | 149.69 ns | 115.48 ns | 0.77 | | | [Substring_Int]() | 45.04 ns | 33.20 ns | 0.74 | | | [GetChars]() | 1.08 μs | 773.46 ns | 0.72 | | | [Format_OneArg]() | 62.65 μs | 44.55 μs | 0.71 | | | [Concat_str_str_str_str]() | 1.02 μs | 823.08 ns | 0.81 | | | [Split]() | 10.16 μs | 9.38 μs | 0.92 | | | [Interpolation_MultipleArgs]() | 4.52 μs | 3.87 μs | 0.86 | | | [Remove_IntInt]() | 317.72 ns | 263.86 ns | 0.83 | | | [Replace_Char]() | 336.39 ns | 291.25 ns | 0.87 | | | [Concat_str_str_str]() | 3.14 μs | 2.21 μs | 0.71 | | | [Split]() | 8.53 μs | 7.70 μs | 0.90 | | | [ToLowerInvariant]() | 663.21 ns | 566.10 ns | 0.85 | | | [ToLowerInvariant]() | 663.94 ns | 578.61 ns | 0.87 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_String*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_String.Remove_Int(s: "dzsdzsDDZSDZSDZSddsz", i: 7) ```log [225.197 ; 233.617) | @@@@@@@@@@@@@@@@@ [233.617 ; 241.788) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [241.788 ; 250.560) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [250.560 ; 257.734) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [257.734 ; 266.953) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [266.953 ; 274.742) | @@@ ``` #### System.Tests.Perf_String.Concat_str_str_str_str(size: 1000) ```log [8557.657 ; 8816.474) | @@@@@@@@@@@@@ [8816.474 ; 9013.266) | @@@@@ [9013.266 ; 9191.279) | [9191.279 ; 9369.293) | [9369.293 ; 9614.688) | @ [9614.688 ; 9950.677) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9950.677 ; 10187.895) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_String.TrimEnd_CharArr(s: "Test ", c: [' ', ' ']) ```log [277.679 ; 284.059) | @@@@@@@@@@@@ [284.059 ; 295.572) | @@@@@ [295.572 ; 304.127) | [304.127 ; 314.779) | @@@@@@@@@@@@@@@@@@@@@ [314.779 ; 326.602) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [326.602 ; 333.693) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [333.693 ; 345.123) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [345.123 ; 360.398) | @@@@@@@@@@@@@ ``` #### System.Tests.Perf_String.Trim_CharArr(s: "Test", c: [' ', ' ']) ```log [105.479 ; 108.885) | @ [108.885 ; 111.269) | [111.269 ; 113.553) | @@ [113.553 ; 116.958) | @@@@@@@@@@@ [116.958 ; 121.173) | @@ [121.173 ; 124.578) | @ [124.578 ; 128.432) | @ [128.432 ; 131.837) | [131.837 ; 135.257) | [135.257 ; 138.662) | @@ [138.662 ; 142.068) | [142.068 ; 145.567) | @@@@@@@@@@@@@@@@@ [145.567 ; 148.972) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [148.972 ; 153.254) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [153.254 ; 156.660) | @@@@@@@@@@@@@@@@@@@@@@@@@ [156.660 ; 160.309) | @@@@@@@@@@@@@@@@@@@@ [160.309 ; 163.723) | @@@@@@@@@@@ [163.723 ; 169.620) | @@@@@@@@@@@@@@@ [169.620 ; 180.416) | @@@@@@ ``` #### System.Tests.Perf_String.Substring_Int(s: "dzsdzsDDZSDZSDZSddsz", i: 0) ```log [32.653 ; 33.902) | @@@@ [33.902 ; 35.385) | @@@@@@@@@@@@@ [35.385 ; 36.484) | @ [36.484 ; 38.024) | @ [38.024 ; 39.324) | @@ [39.324 ; 40.479) | @@@@@ [40.479 ; 41.511) | @@@@@@@@@@@@@@@@@@@@@ [41.511 ; 42.611) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [42.611 ; 43.813) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [43.813 ; 45.697) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [45.697 ; 46.897) | @@@@@@@@@@@@@@ [46.897 ; 48.335) | @@@@@@@@ [48.335 ; 49.359) | @@@@@ [49.359 ; 50.459) | [50.459 ; 51.558) | [51.558 ; 52.653) | [52.653 ; 53.753) | @@@ [53.753 ; 55.112) | [55.112 ; 58.081) | @@@ ``` #### System.Tests.Perf_String.GetChars(size: 1000) ```log [ 756.233 ; 783.278) | @@@@@@@ [ 783.278 ; 807.303) | @@@@@@@@@@ [ 807.303 ; 845.597) | @ [ 845.597 ; 869.622) | [ 869.622 ; 893.648) | [ 893.648 ; 917.673) | [ 917.673 ; 941.699) | [ 941.699 ; 965.724) | [ 965.724 ; 989.750) | [ 989.750 ; 1013.775) | [1013.775 ; 1039.913) | @@@@@@ [1039.913 ; 1064.425) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1064.425 ; 1088.451) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1088.451 ; 1112.631) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1112.631 ; 1136.100) | @@@@@@@@ [1136.100 ; 1160.125) | @ ``` #### System.Tests.Perf_String.Format_OneArg(s: "Testing {0}, {0:C}, {0:E} - {0:F4}{0:G}{0:N} , !!", o: 3.14159) ```log [43792.400 ; 45174.666) | @@@@@@@@@@@@@@@@@ [45174.666 ; 46556.931) | [46556.931 ; 47939.197) | [47939.197 ; 49321.463) | [49321.463 ; 50703.729) | [50703.729 ; 52085.994) | [52085.994 ; 53468.260) | [53468.260 ; 54850.526) | [54850.526 ; 56232.791) | [56232.791 ; 57615.057) | [57615.057 ; 58997.323) | [58997.323 ; 60455.561) | [60455.561 ; 63861.958) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_String.Concat_str_str_str_str(size: 100) ```log [ 807.581 ; 838.604) | @@@@@@@@@@@@@ [ 838.604 ; 867.559) | @@@@ [ 867.559 ; 884.834) | [ 884.834 ; 902.709) | @ [ 902.709 ; 933.241) | [ 933.241 ; 963.773) | [ 963.773 ; 988.250) | [ 988.250 ; 1024.911) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1024.911 ; 1060.860) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1060.860 ; 1090.543) | @@@@@@@@ ``` #### System.Tests.Perf_String.Split(s: "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z", arr: [' '], options: RemoveEmptyEntries) ```log [ 9103.567 ; 9353.639) | @@@@@@@@@@@@@@ [ 9353.639 ; 9659.032) | @@@@ [ 9659.032 ; 9985.863) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 9985.863 ; 10273.485) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [10273.485 ; 10809.844) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_String.Interpolation_MultipleArgs(c: '1', s: "Foo") ```log [3746.375 ; 3889.494) | @@@@@@@@@@@@@ [3889.494 ; 4035.205) | @@@@@ [4035.205 ; 4144.816) | [4144.816 ; 4280.547) | [4280.547 ; 4402.662) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4402.662 ; 4564.436) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4564.436 ; 4703.786) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [4703.786 ; 4814.549) | @ ``` #### System.Tests.Perf_String.Remove_IntInt(s: "dzsdzsDDZSDZSDZSddsz", i1: 7, i2: 4) ```log [258.390 ; 268.375) | @@@@@@@@@@@ [268.375 ; 274.032) | @@@@@ [274.032 ; 280.941) | [280.941 ; 286.617) | @ [286.617 ; 295.441) | [295.441 ; 305.745) | @@ [305.745 ; 316.656) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [316.656 ; 327.577) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [327.577 ; 338.938) | @@@@@@@@@@@@@@@@@@@@@@@@ [338.938 ; 355.359) | @@@@ ``` #### System.Tests.Perf_String.Replace_Char(text: "Hello", oldChar: 'l', newChar: '!') ```log [289.383 ; 299.877) | @@@@@@@@@@@ [299.877 ; 311.798) | @@@@@ [311.798 ; 322.629) | @@ [322.629 ; 334.575) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [334.575 ; 346.258) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [346.258 ; 357.872) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [357.872 ; 368.541) | @@@@@@ ``` #### System.Tests.Perf_String.Concat_str_str_str(size: 1000) ```log [2158.199 ; 2211.529) | @@ [2211.529 ; 2282.316) | @@@@@@@@@@@@@@@@ [2282.316 ; 2353.103) | [2353.103 ; 2423.890) | [2423.890 ; 2494.676) | [2494.676 ; 2565.463) | [2565.463 ; 2636.250) | [2636.250 ; 2707.037) | [2707.037 ; 2777.824) | [2777.824 ; 2848.611) | [2848.611 ; 2927.199) | [2927.199 ; 2996.189) | @ [2996.189 ; 3062.942) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [3062.942 ; 3133.729) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3133.729 ; 3205.657) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3205.657 ; 3281.029) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_String.Split(s: "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z", arr: [' '], options: None) ```log [7536.937 ; 7801.523) | @@@@@@@@@@@@@@ [7801.523 ; 8027.223) | @@@@ [8027.223 ; 8238.127) | @@@@@@@@@@@@@@@@@ [8238.127 ; 8526.317) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8526.317 ; 8843.315) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8843.315 ; 9186.233) | @@@@ ``` #### System.Tests.Perf_String.ToLowerInvariant(s: "TEST") ```log [527.633 ; 548.111) | @@@@@@@ [548.111 ; 562.151) | @@@@ [562.151 ; 584.431) | @@@@@@ [584.431 ; 600.801) | @ [600.801 ; 622.549) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [622.549 ; 645.382) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [645.382 ; 666.194) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [666.194 ; 687.906) | @@@@@@ ``` #### System.Tests.Perf_String.ToLowerInvariant(s: "TeSt") ```log [529.465 ; 540.942) | @@@@@@ [540.942 ; 556.181) | @@@@@ [556.181 ; 570.879) | @@@@ [570.879 ; 592.251) | @@ [592.251 ; 612.757) | @@@ [612.757 ; 635.322) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [635.322 ; 657.072) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [657.072 ; 676.234) | @@@@@@@@@@@@@ [676.234 ; 695.060) | @@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in CscBench

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[CompileTest](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/CscBench.CompileTest.html>) 2.42 secs 1.95 secs 0.81

graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'CscBench*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### CscBench.CompileTest ```log [1901700267.075 ; 1967715601.302) | @@ [1967715601.302 ; 2033270550.439) | @ [2033270550.439 ; 2082572340.354) | @@ [2082572340.354 ; 2135694917.381) | @@@@@@@@@ [2135694917.381 ; 2202879735.845) | @@@@ [2202879735.845 ; 2250010465.461) | @ [2250010465.461 ; 2324538106.674) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2324538106.674 ; 2446238024.959) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SerializeObjectProperty]() | 20.66 ms | 15.97 ms | 0.77 | | | [SerializeToString]() | 20.59 ms | 15.91 ms | 0.77 | | | [SerializeToStream]() | 20.67 ms | 16.06 ms | 0.78 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.WriteJson.SerializeObjectProperty ```log [15622136.093 ; 15977324.162) | @@@@@@@@@@@@@@@@@@ [15977324.162 ; 16332512.231) | [16332512.231 ; 16687700.300) | [16687700.300 ; 17042888.370) | [17042888.370 ; 17398076.439) | [17398076.439 ; 17753264.508) | [17753264.508 ; 18108452.578) | [18108452.578 ; 18463640.647) | [18463640.647 ; 18818828.716) | [18818828.716 ; 19174016.785) | [19174016.785 ; 19529204.855) | [19529204.855 ; 20224812.858) | @@@@@@@@@@@@@@@@@@@ [20224812.858 ; 20964411.413) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToString ```log [15649179.652 ; 16004074.294) | @@@@@@@@@@@@@@@@@ [16004074.294 ; 16675718.568) | @ [16675718.568 ; 17030613.210) | [17030613.210 ; 17385507.851) | [17385507.851 ; 17740402.493) | [17740402.493 ; 18095297.135) | [18095297.135 ; 18450191.777) | [18450191.777 ; 18805086.419) | [18805086.419 ; 19159981.061) | [19159981.061 ; 19514875.703) | [19514875.703 ; 20227805.553) | @@@@@@@@@@@@@@@@@@@ [20227805.553 ; 20922757.754) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToStream ```log [15525458.604 ; 16103471.736) | @@@@@@@@@@@@@@@@@ [16103471.736 ; 16657184.729) | @ [16657184.729 ; 17016223.222) | [17016223.222 ; 17375261.714) | [17375261.714 ; 17734300.206) | [17734300.206 ; 18093338.698) | [18093338.698 ; 18452377.190) | [18452377.190 ; 18811415.682) | [18811415.682 ; 19170454.174) | [19170454.174 ; 19529492.666) | [19529492.666 ; 19888531.159) | [19888531.159 ; 20363492.370) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20363492.370 ; 21042053.574) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Memory.Span<Char> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SequenceEqual]() | 1.81 μs | 1.10 μs | 0.61 | | | [IndexOfAnyTwoValues]() | 3.92 μs | 1.96 μs | 0.50 | | | [LastIndexOfAnyValues]() | 7.27 μs | 5.40 μs | 0.74 | | | [IndexOfAnyThreeValues]() | 4.16 μs | 2.90 μs | 0.70 | | | [GetPinnableReference]() | 22.14 ns | 19.68 ns | 0.89 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Memory.Span<Char>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.Span.SequenceEqual(Size: 512) ```log [1074.917 ; 1134.351) | @@@@@@@@@@@@@@@@@ [1134.351 ; 1193.785) | [1193.785 ; 1226.348) | [1226.348 ; 1285.782) | @ [1285.782 ; 1345.216) | [1345.216 ; 1404.649) | [1404.649 ; 1464.083) | [1464.083 ; 1523.517) | [1523.517 ; 1582.950) | [1582.950 ; 1642.384) | [1642.384 ; 1701.818) | [1701.818 ; 1757.822) | [1757.822 ; 1817.255) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1817.255 ; 1874.421) | @@@@@@@@@@@@@@@@ [1874.421 ; 1933.855) | @@@@@@@@@@@@@ [1933.855 ; 1986.864) | @@ [1986.864 ; 2046.298) | [2046.298 ; 2105.731) | [2105.731 ; 2165.165) | [2165.165 ; 2224.599) | [2224.599 ; 2284.032) | [2284.032 ; 2343.466) | [2343.466 ; 2402.900) | [2402.900 ; 2462.333) | [2462.333 ; 2521.767) | [2521.767 ; 2581.201) | [2581.201 ; 2651.664) | [2651.664 ; 2736.281) | @ [2736.281 ; 2795.715) | @ ``` #### System.Memory.Span.IndexOfAnyTwoValues(Size: 512) ```log [1866.378 ; 2015.143) | @@@@@@@@@@@@@@@@ [2015.143 ; 2127.630) | @@ [2127.630 ; 2276.394) | [2276.394 ; 2425.159) | [2425.159 ; 2573.923) | [2573.923 ; 2722.687) | [2722.687 ; 2871.452) | [2871.452 ; 3020.216) | [3020.216 ; 3168.981) | [3168.981 ; 3317.745) | [3317.745 ; 3464.619) | [3464.619 ; 3602.750) | @@ [3602.750 ; 3758.269) | @@@@@@@@@@@@@@@@@ [3758.269 ; 3907.033) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3907.033 ; 4056.420) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4056.420 ; 4187.528) | @ [4187.528 ; 4336.292) | @@@ [4336.292 ; 4492.262) | @ ``` #### System.Memory.Span.LastIndexOfAnyValues(Size: 512) ```log [5308.939 ; 5438.827) | @@@ [5438.827 ; 5561.538) | [5561.538 ; 5691.426) | @@@@@@@@ [5691.426 ; 5834.973) | @@ [5834.973 ; 6051.831) | @@@ [6051.831 ; 6181.719) | [6181.719 ; 6313.581) | [6313.581 ; 6443.468) | @ [6443.468 ; 6573.356) | [6573.356 ; 6703.244) | [6703.244 ; 6833.132) | [6833.132 ; 6963.020) | [6963.020 ; 7129.682) | @@@@@@@@ [7129.682 ; 7412.063) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7412.063 ; 7703.893) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7703.893 ; 7950.940) | @@@@@@ ``` #### System.Memory.Span.IndexOfAnyThreeValues(Size: 512) ```log [2750.359 ; 2843.416) | @@ [2843.416 ; 2986.506) | @@@@@@@@@@@@@@ [2986.506 ; 3065.078) | @@ [3065.078 ; 3158.135) | [3158.135 ; 3251.192) | [3251.192 ; 3344.249) | [3344.249 ; 3437.306) | [3437.306 ; 3530.362) | [3530.362 ; 3623.419) | [3623.419 ; 3716.476) | [3716.476 ; 3793.916) | [3793.916 ; 3884.184) | @@@@@@@@@@@@@@ [3884.184 ; 3977.241) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3977.241 ; 4060.081) | [4060.081 ; 4229.834) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4229.834 ; 4323.316) | @@ [4323.316 ; 4416.373) | @@@@ [4416.373 ; 4509.430) | [4509.430 ; 4711.060) | @@@ ``` #### System.Memory.Span.GetPinnableReference(Size: 512) ```log [19.528 ; 20.008) | @@@@@@ [20.008 ; 20.697) | @@@@@@@@@@ [20.697 ; 21.115) | @ [21.115 ; 21.751) | @ [21.751 ; 22.584) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.584 ; 23.214) | @@@@@@@@@@@@@@@@@@@@@@@@ [23.214 ; 23.975) | @@@@@@@@@@@@ [23.975 ; 24.551) | @@@ [24.551 ; 25.254) | @@ [25.254 ; 25.757) | [25.757 ; 26.473) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.Pi Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 32.28 ms | 22.47 ms | 0.70 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.Pi*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.Pi.Test ```log [20826835.520 ; 21690616.005) | @@@@@@@@@@@@ [21690616.005 ; 22843407.585) | @@@@@@ [22843407.585 ; 23653089.819) | [23653089.819 ; 24462772.052) | [24462772.052 ; 25272454.285) | [25272454.285 ; 26082136.519) | [26082136.519 ; 26891818.752) | [26891818.752 ; 27701500.985) | [27701500.985 ; 28511183.219) | [28511183.219 ; 29685327.828) | @@@@@ [29685327.828 ; 30495010.062) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [30495010.062 ; 31203001.429) | [31203001.429 ; 32012683.662) | @@@ [32012683.662 ; 32716984.318) | @@ [32716984.318 ; 33526666.551) | [33526666.551 ; 34588661.257) | @@ [34588661.257 ; 35360520.452) | [35360520.452 ; 36170202.685) | @ [36170202.685 ; 36979884.919) | [36979884.919 ; 37789567.152) | [37789567.152 ; 39005406.806) | @ [39005406.806 ; 39815089.039) | [39815089.039 ; 40721591.779) | [40721591.779 ; 41592488.728) | @@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchF.Trap Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 657.75 ms | 461.87 ms | 0.70 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchF.Trap*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchF.Trap.Test ```log [460738979.852 ; 476305408.238) | @@@@@@@@@@@@@@@@@@ [476305408.238 ; 491871836.624) | [491871836.624 ; 507438265.009) | [507438265.009 ; 523004693.395) | [523004693.395 ; 538571121.780) | [538571121.780 ; 554137550.166) | [554137550.166 ; 569703978.552) | [569703978.552 ; 585270406.937) | [585270406.937 ; 600836835.323) | [600836835.323 ; 616403263.708) | [616403263.708 ; 639150208.355) | [639150208.355 ; 654716636.740) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [654716636.740 ; 671930935.142) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [671930935.142 ; 697067593.493) | @@@@@@@@@@@ [697067593.493 ; 721969426.978) | @ [721969426.978 ; 748475360.926) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Numerics.Tests.Perf_Plane Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [CreateFromVerticesBenchmark]() | 240.70 ns | 162.55 ns | 0.68 | | | [TransformByMatrix4x4Benchmark]() | 686.63 ns | 360.14 ns | 0.52 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Numerics.Tests.Perf_Plane*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Perf_Plane.CreateFromVerticesBenchmark ```log [159.482 ; 165.652) | @@@@@@@@@@@@@@@ [165.652 ; 169.622) | @@ [169.622 ; 175.792) | [175.792 ; 181.961) | [181.961 ; 188.131) | [188.131 ; 194.301) | [194.301 ; 200.471) | [200.471 ; 206.640) | [206.640 ; 212.810) | [212.810 ; 218.980) | [218.980 ; 225.149) | [225.149 ; 229.126) | [229.126 ; 234.092) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [234.092 ; 240.262) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [240.262 ; 246.504) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [246.504 ; 252.846) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [252.846 ; 258.958) | @@@@@@@@@@ [258.958 ; 264.764) | @ [264.764 ; 272.341) | @@ [272.341 ; 278.511) | @ ``` #### System.Numerics.Tests.Perf_Plane.TransformByMatrix4x4Benchmark ```log [350.892 ; 374.219) | @@@@@@@@@@@@@@@@ [374.219 ; 393.349) | @@ [393.349 ; 416.676) | [416.676 ; 440.003) | [440.003 ; 463.330) | [463.330 ; 486.656) | [486.656 ; 509.983) | [509.983 ; 533.310) | [533.310 ; 556.637) | [556.637 ; 579.964) | [579.964 ; 603.290) | [603.290 ; 627.929) | [627.929 ; 643.594) | @@@@@@@@@@@@@@@@@ [643.594 ; 666.921) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [666.921 ; 690.106) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [690.106 ; 711.285) | @@@@@@@@@@@@@@ [711.285 ; 727.527) | @@ [727.527 ; 751.337) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchF.Secant Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 1.28 secs | 846.41 ms | 0.66 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchF.Secant*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchF.Secant.Test ```log [ 834909808.088 ; 856735126.378) | @@@@@@@@@@@@@@@@ [ 856735126.378 ; 877935757.478) | @@ [ 877935757.478 ; 899761075.768) | [ 899761075.768 ; 921586394.059) | [ 921586394.059 ; 943411712.349) | [ 943411712.349 ; 965237030.639) | [ 965237030.639 ; 987062348.929) | [ 987062348.929 ; 1008887667.219) | [1008887667.219 ; 1030712985.509) | [1030712985.509 ; 1072284756.130) | @ [1072284756.130 ; 1117057020.298) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1117057020.298 ; 1156629792.962) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1156629792.962 ; 1184781993.942) | @@@@ [1184781993.942 ; 1210287971.208) | @ [1210287971.208 ; 1238321347.230) | @ [1238321347.230 ; 1287959340.411) | @@ [1287959340.411 ; 1328021933.212) | @ [1328021933.212 ; 1398008484.212) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SerializeToStream]() | 27.61 μs | 21.88 μs | 0.79 | | | [SerializeToString]() | 22.85 μs | 17.79 μs | 0.78 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToStream ```log [21202.643 ; 21639.275) | @@@@@@@@@@@@@ [21639.275 ; 22082.583) | @@@@@ [22082.583 ; 22955.846) | [22955.846 ; 23829.110) | [23829.110 ; 24702.374) | [24702.374 ; 25575.638) | [25575.638 ; 26402.548) | [26402.548 ; 27398.409) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [27398.409 ; 28164.280) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToString ```log [16988.976 ; 17374.654) | @@@@@@@@@ [17374.654 ; 17909.551) | @@@@@@@ [17909.551 ; 18443.332) | @ [18443.332 ; 18829.010) | [18829.010 ; 19214.687) | [19214.687 ; 19600.365) | [19600.365 ; 19986.043) | [19986.043 ; 20371.721) | [20371.721 ; 20757.399) | [20757.399 ; 21143.076) | [21143.076 ; 21585.442) | [21585.442 ; 22315.522) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22315.522 ; 23154.474) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.ContainsTrue<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [HashSet]() | 190.12 μs | 139.84 μs | 0.74 | | | [Span]() | 4.03 ms | 3.44 ms | 0.85 | | | [ImmutableArray]() | 6.23 ms | 5.48 ms | 0.88 | | | [ICollection]() | 6.17 ms | 5.44 ms | 0.88 | | | [Stack]() | 6.20 ms | 5.35 ms | 0.86 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.ContainsTrue<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.ContainsTrue.HashSet(Size: 512) ```log [137712.201 ; 141631.996) | @@@@@@@@@@@@@@@ [141631.996 ; 146460.276) | @@@ [146460.276 ; 150380.072) | [150380.072 ; 154299.867) | [154299.867 ; 158219.663) | [158219.663 ; 162139.458) | [162139.458 ; 166059.253) | [166059.253 ; 169979.049) | [169979.049 ; 173898.844) | [173898.844 ; 178308.401) | [178308.401 ; 184581.133) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [184581.133 ; 189712.762) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [189712.762 ; 193648.461) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [193648.461 ; 197709.553) | @@@@@@@@@@@@ [197709.553 ; 203930.262) | @@@ ``` #### System.Collections.ContainsTrue.Span(Size: 512) ```log [3406321.791 ; 3542909.534) | @@@@@@@@@@@@@@@ [3542909.534 ; 3644893.064) | @@@ [3644893.064 ; 3759869.600) | [3759869.600 ; 3874846.136) | [3874846.136 ; 3990053.484) | [3990053.484 ; 4135694.445) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4135694.445 ; 4275455.883) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4275455.883 ; 4438965.551) | @@@@@@@@@@@@@@@@@ [4438965.551 ; 4630902.265) | @@ ``` #### System.Collections.ContainsTrue.ImmutableArray(Size: 512) ```log [5404356.782 ; 5559946.765) | @@@@@@@@@@@ [5559946.765 ; 5698454.429) | @@@@@ [5698454.429 ; 5851471.502) | [5851471.502 ; 6015584.302) | [6015584.302 ; 6223777.923) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6223777.923 ; 6434176.592) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6434176.592 ; 6587419.251) | @@@@@@@@@@@@@@ [6587419.251 ; 6777125.766) | @@@@@@@@@@ [6777125.766 ; 7016864.068) | @@ [7016864.068 ; 7351646.557) | @@ ``` #### System.Collections.ContainsTrue.ICollection(Size: 512) ```log [5384586.729 ; 5590387.821) | @@@@@@@@@@@@@@ [5590387.821 ; 5744281.977) | @@ [5744281.977 ; 5919171.915) | @ [5919171.915 ; 6054497.310) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6054497.310 ; 6283729.032) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6283729.032 ; 6503108.719) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6503108.719 ; 6660909.419) | @@@@ [6660909.419 ; 6864104.028) | @@ [6864104.028 ; 7042046.219) | [7042046.219 ; 7284974.135) | @ [7284974.135 ; 7462916.326) | [7462916.326 ; 7721918.922) | @ [7721918.922 ; 7883076.396) | @@ ``` #### System.Collections.ContainsTrue.Stack(Size: 512) ```log [5304297.568 ; 5505868.584) | @@@@@@@@@@@@@ [5505868.584 ; 5634397.295) | @@ [5634397.295 ; 5759540.380) | @@ [5759540.380 ; 5966797.562) | [5966797.562 ; 6157323.989) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6157323.989 ; 6382488.057) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6382488.057 ; 6628089.356) | @@@@@@@@@@@@@@@@@@@@ [6628089.356 ; 6785704.125) | @@ [6785704.125 ; 6983811.820) | @@ [6983811.820 ; 7124898.928) | @ [7124898.928 ; 7329026.659) | [7329026.659 ; 7582716.862) | @@ [7582716.862 ; 7837015.672) | @@ [7837015.672 ; 8229082.327) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Linq.Tests.Perf_OrderBy Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [OrderByValueType]() | 1.10 ms | 968.48 μs | 0.88 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Linq.Tests.Perf_OrderBy*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Linq.Tests.Perf_OrderBy.OrderByValueType(NumberOfPeople: 512) ```log [ 944467.942 ; 977122.021) | @@@@@@@@@@@@@@@@@@ [ 977122.021 ; 1002295.498) | [1002295.498 ; 1033963.267) | @@@@@@@@@@@@@@@@ [1033963.267 ; 1069519.573) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1069519.573 ; 1110619.828) | @@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.ContainsFalse<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Queue]() | 12.93 ms | 10.87 ms | 0.84 | | | [HashSet]() | 178.53 μs | 129.35 μs | 0.72 | | | [Array]() | 12.42 ms | 10.65 ms | 0.86 | | | [ICollection]() | 13.00 ms | 10.80 ms | 0.83 | | | [ImmutableHashSet]() | 279.12 μs | 232.73 μs | 0.83 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.ContainsFalse<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.ContainsFalse.Queue(Size: 512) ```log [10743834.131 ; 11040645.698) | @@@@@@@@@@@@@@ [11040645.698 ; 11474945.291) | @@@@ [11474945.291 ; 11837297.081) | [11837297.081 ; 12101553.194) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12101553.194 ; 12559742.947) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12559742.947 ; 13025895.721) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [13025895.721 ; 13289264.046) | @@@ [13289264.046 ; 13738909.921) | @@@ [13738909.921 ; 14244093.056) | @@ [14244093.056 ; 14606444.846) | [14606444.846 ; 15087653.539) | @ [15087653.539 ; 15450005.329) | [15450005.329 ; 15993805.241) | @ [15993805.241 ; 16671790.597) | @ ``` #### System.Collections.ContainsFalse.HashSet(Size: 512) ```log [127180.350 ; 131025.579) | @@@@@@@@@@@@@@@ [131025.579 ; 134543.277) | @@@ [134543.277 ; 138388.505) | [138388.505 ; 142233.733) | [142233.733 ; 146078.962) | [146078.962 ; 149924.190) | [149924.190 ; 153769.418) | [153769.418 ; 157614.646) | [157614.646 ; 161459.874) | [161459.874 ; 165305.103) | [165305.103 ; 171004.244) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [171004.244 ; 174836.668) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [174836.668 ; 178681.897) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [178681.897 ; 182647.073) | @@@@@@@@@@@@@@@@@@ [182647.073 ; 186900.918) | @ [186900.918 ; 193052.302) | @@ [193052.302 ; 201825.224) | @@ ``` #### System.Collections.ContainsFalse.Array(Size: 512) ```log [10552580.523 ; 10949917.983) | @@@@@@@@@@@@@@@@ [10949917.983 ; 11192112.687) | @ [11192112.687 ; 11587739.640) | @ [11587739.640 ; 11908962.357) | [11908962.357 ; 12310158.766) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12310158.766 ; 12736702.709) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12736702.709 ; 13129610.759) | @@@@@@@@@@@@@ [13129610.759 ; 13438268.322) | @@@ [13438268.322 ; 13777315.654) | [13777315.654 ; 14134758.198) | [14134758.198 ; 14589832.535) | @@@ [14589832.535 ; 14928879.867) | [14928879.867 ; 15267927.199) | [15267927.199 ; 15955856.516) | @ ``` #### System.Collections.ContainsFalse.ICollection(Size: 512) ```log [10726563.378 ; 11016249.475) | @@@@@@@@@@@@@ [11016249.475 ; 11279703.425) | @ [11279703.425 ; 11590320.928) | @@ [11590320.928 ; 11824468.826) | @ [11824468.826 ; 12133686.176) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12133686.176 ; 12600128.817) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12600128.817 ; 13059806.744) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [13059806.744 ; 13406724.650) | @@@ [13406724.650 ; 13835802.186) | @ [13835802.186 ; 14152271.415) | [14152271.415 ; 14468740.644) | [14468740.644 ; 14753414.619) | [14753414.619 ; 15051463.399) | @ [15051463.399 ; 15588757.649) | @ ``` #### System.Collections.ContainsFalse.ImmutableHashSet(Size: 512) ```log [223750.995 ; 228838.641) | @@@@@@@@@@@ [228838.641 ; 237305.987) | @@@@@@@ [237305.987 ; 244300.017) | [244300.017 ; 251294.046) | [251294.046 ; 258288.076) | [258288.076 ; 266962.439) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [266962.439 ; 277178.083) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [277178.083 ; 285429.207) | @@@@@@@@@@@@@@@@@@@@@@@@ [285429.207 ; 298736.999) | @ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Numerics.Tests.Perf_Vector3

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[DotBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.DotBenchmark.html>) 32.85 ns 16.17 ns 0.49
[CrossBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.CrossBenchmark.html>) 78.59 ns 45.38 ns 0.58
[EqualsBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.EqualsBenchmark.html>) 22.11 ns 12.46 ns 0.56
[NegateBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.NegateBenchmark.html>) 81.60 ns 54.80 ns 0.67
[SubtractOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.SubtractOperatorBenchmark.html>) 62.48 ns 35.42 ns 0.57
[MaxBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.MaxBenchmark.html>) 59.67 ns 40.46 ns 0.68
[DistanceBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.DistanceBenchmark.html>) 120.66 ns 71.54 ns 0.59
[DivideByVector3OperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.DivideByVector3OperatorBenchmark.html>) 63.05 ns 34.10 ns 0.54
[ReflectBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.ReflectBenchmark.html>) 226.01 ns 141.42 ns 0.63
[NormalizeBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.NormalizeBenchmark.html>) 135.92 ns 89.67 ns 0.66
[DivideByVector3Benchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.DivideByVector3Benchmark.html>) 72.35 ns 45.38 ns 0.63
[LerpBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.LerpBenchmark.html>) 283.59 ns 192.51 ns 0.68
[DivideByScalarBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.DivideByScalarBenchmark.html>) 103.87 ns 75.22 ns 0.72
[MultiplyOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.MultiplyOperatorBenchmark.html>) 62.42 ns 35.04 ns 0.56
[NegateOperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.NegateOperatorBenchmark.html>) 76.84 ns 45.85 ns 0.60
[ClampBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.ClampBenchmark.html>) 162.95 ns 87.97 ns 0.54
[SubtractFunctionBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.SubtractFunctionBenchmark.html>) 72.18 ns 45.48 ns 0.63
[LengthBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.LengthBenchmark.html>) 35.53 ns 17.93 ns 0.50
[TransformNormalByMatrix4x4Benchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector3.TransformNormalByMatrix4x4Benchmark.html>) 114.36 ns 63.01 ns 0.55

graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Numerics.Tests.Perf_Vector3*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Perf_Vector3.DotBenchmark ```log [14.308 ; 15.395) | @ [15.395 ; 16.664) | @@@@@@@@@@@@@@ [16.664 ; 17.610) | @ [17.610 ; 18.879) | [18.879 ; 20.148) | [20.148 ; 21.417) | [21.417 ; 23.089) | [23.089 ; 24.358) | @ [24.358 ; 25.627) | [25.627 ; 26.896) | [26.896 ; 27.586) | [27.586 ; 28.855) | @@ [28.855 ; 29.777) | [29.777 ; 31.082) | @@@ [31.082 ; 32.319) | @@@@@@@@@@ [32.319 ; 33.588) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [33.588 ; 34.882) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [34.882 ; 35.697) | @@ [35.697 ; 36.966) | [36.966 ; 37.755) | [37.755 ; 39.024) | @@ [39.024 ; 40.325) | @ ``` #### System.Numerics.Tests.Perf_Vector3.CrossBenchmark ```log [ 44.545 ; 47.059) | @@@@@@@@@@@@@@@@@ [ 47.059 ; 49.113) | @ [ 49.113 ; 51.627) | [ 51.627 ; 54.141) | [ 54.141 ; 56.655) | [ 56.655 ; 59.169) | [ 59.169 ; 61.682) | [ 61.682 ; 64.196) | [ 64.196 ; 66.710) | [ 66.710 ; 67.910) | [ 67.910 ; 70.424) | @ [ 70.424 ; 72.495) | [ 72.495 ; 74.882) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 74.882 ; 77.396) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 77.396 ; 80.431) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 80.431 ; 82.945) | @@@@@@@ [ 82.945 ; 85.636) | @ [ 85.636 ; 88.150) | @@ [ 88.150 ; 91.099) | @ [ 91.099 ; 93.613) | [ 93.613 ; 96.127) | [ 96.127 ; 98.641) | [ 98.641 ; 101.155) | [101.155 ; 103.669) | @ ``` #### System.Numerics.Tests.Perf_Vector3.EqualsBenchmark ```log [11.221 ; 11.985) | @@ [11.985 ; 12.941) | @@@@@@@@@@@ [12.941 ; 13.464) | @ [13.464 ; 14.216) | @@@@ [14.216 ; 14.969) | [14.969 ; 15.721) | [15.721 ; 16.474) | [16.474 ; 17.227) | [17.227 ; 17.979) | [17.979 ; 18.503) | [18.503 ; 19.256) | @ [19.256 ; 20.168) | @@@@@@ [20.168 ; 20.975) | @@@@@@@@@@ [20.975 ; 21.727) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [21.727 ; 22.818) | @@@@@@@@@@@@@@@@@@@@@@@ [22.818 ; 23.570) | @@@@@@@ [23.570 ; 24.351) | @@ [24.351 ; 25.104) | [25.104 ; 25.856) | [25.856 ; 26.609) | [26.609 ; 27.362) | [27.362 ; 28.436) | [28.436 ; 29.188) | @ [29.188 ; 29.941) | [29.941 ; 30.950) | [30.950 ; 31.703) | @ ``` #### System.Numerics.Tests.Perf_Vector3.NegateBenchmark ```log [52.470 ; 54.483) | @ [54.483 ; 56.910) | @@@@@@@@@@@@@@@@@ [56.910 ; 59.336) | [59.336 ; 61.763) | [61.763 ; 64.189) | [64.189 ; 66.616) | [66.616 ; 69.043) | [69.043 ; 72.354) | [72.354 ; 74.781) | @@ [74.781 ; 76.776) | [76.776 ; 78.569) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [78.569 ; 80.996) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [80.996 ; 83.412) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [83.412 ; 86.003) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [86.003 ; 88.991) | @@@@@ [88.991 ; 91.858) | @@@@ [91.858 ; 95.800) | @@@@@@ [95.800 ; 99.401) | @@@@ ``` #### System.Numerics.Tests.Perf_Vector3.SubtractOperatorBenchmark ```log [32.479 ; 34.362) | @ [34.362 ; 36.346) | @@@@@@@@@@@@@@ [36.346 ; 38.329) | @@ [38.329 ; 40.314) | [40.314 ; 42.299) | [42.299 ; 44.284) | [44.284 ; 46.269) | [46.269 ; 48.254) | [48.254 ; 50.871) | @ [50.871 ; 53.833) | [53.833 ; 56.208) | @ [56.208 ; 57.885) | @@@ [57.885 ; 59.840) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59.840 ; 61.824) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61.824 ; 63.830) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [63.830 ; 65.752) | @@@@@@ [65.752 ; 67.922) | [67.922 ; 69.907) | @ [69.907 ; 71.943) | @ ``` #### System.Numerics.Tests.Perf_Vector3.MaxBenchmark ```log [36.625 ; 38.274) | @ [38.274 ; 39.916) | @@@@@@@@@@@ [39.916 ; 41.667) | @@@@@ [41.667 ; 43.309) | [43.309 ; 45.362) | @ [45.362 ; 47.003) | [47.003 ; 48.645) | [48.645 ; 50.712) | @@ [50.712 ; 52.583) | @ [52.583 ; 54.563) | @@@@@@@@@@ [54.563 ; 56.205) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [56.205 ; 58.072) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [58.072 ; 59.713) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59.713 ; 61.378) | @@@@@@@@@@@@@@@@@ [61.378 ; 63.229) | @@@@ [63.229 ; 64.871) | [64.871 ; 66.512) | [66.512 ; 68.670) | @@@ [68.670 ; 71.210) | [71.210 ; 72.852) | @ ``` #### System.Numerics.Tests.Perf_Vector3.DistanceBenchmark ```log [ 67.571 ; 71.064) | @@ [ 71.064 ; 74.318) | @@@@@@@@@@@@@@@@ [ 74.318 ; 77.573) | [ 77.573 ; 80.827) | [ 80.827 ; 84.082) | [ 84.082 ; 87.336) | [ 87.336 ; 90.590) | [ 90.590 ; 93.845) | [ 93.845 ; 97.099) | [ 97.099 ; 100.354) | [100.354 ; 103.608) | [103.608 ; 106.675) | [106.675 ; 109.782) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [109.782 ; 113.036) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [113.036 ; 116.198) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [116.198 ; 119.409) | @@@@@@@@@@@@@@ [119.409 ; 122.858) | @@@@@@@@ [122.858 ; 127.687) | @@@@ [127.687 ; 130.975) | @ ``` #### System.Numerics.Tests.Perf_Vector3.DivideByVector3OperatorBenchmark ```log [33.506 ; 35.632) | @@@@@@@@@@@ [35.632 ; 36.408) | [36.408 ; 38.534) | @@@@@@@ [38.534 ; 40.660) | [40.660 ; 42.786) | [42.786 ; 44.912) | [44.912 ; 47.038) | [47.038 ; 49.164) | [49.164 ; 51.290) | [51.290 ; 53.074) | [53.074 ; 55.200) | @ [55.200 ; 57.838) | @@@ [57.838 ; 59.733) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59.733 ; 61.859) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61.859 ; 64.025) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [64.025 ; 66.530) | @@@@@@@@@@@@ [66.530 ; 69.434) | @ [69.434 ; 71.976) | [71.976 ; 74.102) | @ ``` #### System.Numerics.Tests.Perf_Vector3.ReflectBenchmark ```log [138.102 ; 144.635) | @@@@@@@@@@@@@ [144.635 ; 152.015) | @@@@ [152.015 ; 161.228) | @ [161.228 ; 167.761) | [167.761 ; 174.294) | [174.294 ; 180.826) | [180.826 ; 187.359) | [187.359 ; 193.892) | [193.892 ; 200.425) | [200.425 ; 204.501) | [204.501 ; 211.889) | @@@@@ [211.889 ; 218.297) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [218.297 ; 224.830) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [224.830 ; 231.247) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [231.247 ; 238.387) | @@@@@@@@@@@@@@@@@@@@@ [238.387 ; 244.015) | @@ ``` #### System.Numerics.Tests.Perf_Vector3.NormalizeBenchmark ```log [ 86.838 ; 89.007) | @ [ 89.007 ; 92.943) | @@@@@@@@@@@@@@@ [ 92.943 ; 96.601) | @@ [ 96.601 ; 100.537) | [100.537 ; 104.473) | [104.473 ; 108.409) | [108.409 ; 112.345) | [112.345 ; 116.281) | [116.281 ; 120.217) | [120.217 ; 124.153) | [124.153 ; 128.089) | [128.089 ; 130.597) | [130.597 ; 133.448) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [133.448 ; 137.384) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [137.384 ; 143.448) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [143.448 ; 147.384) | @@@@@@@@@@@@@ [147.384 ; 151.751) | @@@@@@@@ [151.751 ; 156.727) | @@ ``` #### System.Numerics.Tests.Perf_Vector3.DivideByVector3Benchmark ```log [43.009 ; 45.024) | @ [45.024 ; 47.067) | @@@@@@@@@@@@@ [47.067 ; 49.561) | @@@ [49.561 ; 51.604) | [51.604 ; 53.647) | [53.647 ; 55.690) | [55.690 ; 57.733) | [57.733 ; 59.776) | [59.776 ; 61.819) | [61.819 ; 63.571) | [63.571 ; 65.614) | @ [65.614 ; 66.998) | [66.998 ; 69.010) | @@@@@@@@@@ [69.010 ; 71.285) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71.285 ; 73.328) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [73.328 ; 75.408) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [75.408 ; 78.832) | @@@@@@@ [78.832 ; 80.875) | [80.875 ; 82.729) | [82.729 ; 84.772) | @ [84.772 ; 86.815) | [86.815 ; 89.527) | [89.527 ; 91.570) | @ ``` #### System.Numerics.Tests.Perf_Vector3.LerpBenchmark ```log [190.784 ; 197.668) | @@@@@@@@@@@@@ [197.668 ; 205.578) | @@@ [205.578 ; 211.611) | [211.611 ; 218.495) | @ [218.495 ; 225.379) | [225.379 ; 232.264) | [232.264 ; 239.148) | [239.148 ; 246.032) | [246.032 ; 252.917) | [252.917 ; 258.212) | [258.212 ; 265.096) | @ [265.096 ; 274.425) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [274.425 ; 281.310) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [281.310 ; 288.220) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [288.220 ; 295.359) | @@@@@@@@@@@@@@@@@@@@@@ [295.359 ; 302.870) | @@@@@@@ ``` #### System.Numerics.Tests.Perf_Vector3.DivideByScalarBenchmark ```log [ 71.897 ; 73.730) | @ [ 73.730 ; 76.053) | @@@@@@@@@@@@@ [ 76.053 ; 78.376) | [ 78.376 ; 80.699) | [ 80.699 ; 83.022) | [ 83.022 ; 86.064) | @@@ [ 86.064 ; 88.387) | [ 88.387 ; 90.710) | [ 90.710 ; 94.344) | [ 94.344 ; 96.947) | @ [ 96.947 ; 101.140) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [101.140 ; 103.463) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [103.463 ; 105.797) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [105.797 ; 108.171) | @@@@@@@@@@@@@@@ [108.171 ; 110.629) | @@@@@@@@@ [110.629 ; 112.935) | @@ [112.935 ; 115.524) | @@@@@ [115.524 ; 120.192) | @@@@@@@@ ``` #### System.Numerics.Tests.Perf_Vector3.MultiplyOperatorBenchmark ```log [31.706 ; 32.984) | @ [32.984 ; 35.107) | @@@@@@@@@@@@@ [35.107 ; 36.757) | @@@ [36.757 ; 37.878) | [37.878 ; 40.001) | @ [40.001 ; 42.124) | [42.124 ; 44.247) | [44.247 ; 46.370) | [46.370 ; 48.493) | [48.493 ; 50.616) | [50.616 ; 52.739) | [52.739 ; 54.862) | [54.862 ; 57.369) | [57.369 ; 59.474) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59.474 ; 61.597) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61.597 ; 63.656) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [63.656 ; 65.773) | @@@@@@@@ [65.773 ; 68.342) | @@@@ [68.342 ; 71.304) | @@ [71.304 ; 73.427) | @ ``` #### System.Numerics.Tests.Perf_Vector3.NegateOperatorBenchmark ```log [44.906 ; 46.987) | @@@@@@@@@@@@ [46.987 ; 48.757) | @@@@@ [48.757 ; 50.838) | [50.838 ; 52.919) | [52.919 ; 53.913) | [53.913 ; 55.994) | @ [55.994 ; 58.074) | [58.074 ; 60.155) | [60.155 ; 62.236) | [62.236 ; 64.099) | [64.099 ; 67.127) | @ [67.127 ; 69.263) | @@@@@@@ [69.263 ; 71.385) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71.385 ; 73.466) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [73.466 ; 75.695) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [75.695 ; 77.609) | @@@@@@@ [77.609 ; 79.339) | @@ [79.339 ; 81.259) | @ [81.259 ; 83.340) | @@@ [83.340 ; 85.183) | @ ``` #### System.Numerics.Tests.Perf_Vector3.ClampBenchmark ```log [ 83.318 ; 88.960) | @@@@@@@@@@@@@@@@ [ 88.960 ; 94.283) | @ [ 94.283 ; 99.924) | [ 99.924 ; 105.566) | [105.566 ; 111.207) | [111.207 ; 116.849) | [116.849 ; 122.490) | [122.490 ; 128.132) | [128.132 ; 133.774) | [133.774 ; 139.415) | [139.415 ; 146.776) | [146.776 ; 152.467) | @@@ [152.467 ; 158.233) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [158.233 ; 163.875) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [163.875 ; 169.598) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [169.598 ; 175.982) | @@@@@@@ [175.982 ; 184.169) | @ ``` #### System.Numerics.Tests.Perf_Vector3.SubtractFunctionBenchmark ```log [43.523 ; 45.182) | @ [45.182 ; 47.307) | @@@@@@@@@@@@@ [47.307 ; 49.745) | @@@ [49.745 ; 51.870) | @ [51.870 ; 53.995) | [53.995 ; 56.120) | [56.120 ; 58.245) | [58.245 ; 60.369) | [60.369 ; 62.494) | [62.494 ; 64.619) | [64.619 ; 65.989) | [65.989 ; 68.238) | @ [68.238 ; 70.075) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [70.075 ; 72.200) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [72.200 ; 74.338) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [74.338 ; 76.442) | @@@@@@@@@@@@@@ [76.442 ; 78.343) | [78.343 ; 80.468) | @@ [80.468 ; 83.729) | @ [83.729 ; 85.613) | [85.613 ; 87.738) | @ ``` #### System.Numerics.Tests.Perf_Vector3.LengthBenchmark ```log [16.530 ; 17.559) | @@ [17.559 ; 18.958) | @@@@@@@@@@@@@@ [18.958 ; 19.517) | [19.517 ; 20.915) | @ [20.915 ; 22.314) | [22.314 ; 23.712) | [23.712 ; 25.110) | [25.110 ; 26.508) | [26.508 ; 27.907) | [27.907 ; 29.305) | [29.305 ; 31.140) | @@ [31.140 ; 32.355) | [32.355 ; 33.760) | @@ [33.760 ; 35.046) | @@@@@@@ [35.046 ; 36.444) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [36.444 ; 38.097) | @@@@@@@@@@@@@@ [38.097 ; 39.495) | @@@@@ [39.495 ; 40.893) | [40.893 ; 42.111) | [42.111 ; 44.029) | @ [44.029 ; 45.428) | @ ``` #### System.Numerics.Tests.Perf_Vector3.TransformNormalByMatrix4x4Benchmark ```log [ 61.344 ; 64.758) | @@@@@@@@@@@@@@@ [ 64.758 ; 67.687) | @@@ [ 67.687 ; 71.101) | [ 71.101 ; 74.515) | [ 74.515 ; 77.929) | [ 77.929 ; 81.343) | [ 81.343 ; 84.757) | [ 84.757 ; 88.171) | [ 88.171 ; 91.585) | [ 91.585 ; 94.999) | [ 94.999 ; 97.731) | [ 97.731 ; 101.121) | @ [101.121 ; 103.481) | @@@@@@@@ [103.481 ; 106.895) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [106.895 ; 110.127) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [110.127 ; 113.765) | @@@@@@@@@@ [113.765 ; 116.850) | @@ [116.850 ; 120.264) | @@@ [120.264 ; 125.133) | @ [125.133 ; 128.547) | [128.547 ; 131.961) | [131.961 ; 134.724) | [134.724 ; 138.138) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.Sort<IntStruct> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Array]() | 850.02 μs | 700.47 μs | 0.82 | | | [List]() | 849.47 μs | 711.17 μs | 0.84 | | | [Array_Comparison]() | 349.43 μs | 239.75 μs | 0.69 | | | [Array_ComparerStruct]() | 352.38 μs | 243.54 μs | 0.69 | | | [LinqOrderByExtension]() | 972.33 μs | 839.30 μs | 0.86 | | | [LinqQuery]() | 965.81 μs | 830.04 μs | 0.86 | | | [Array_ComparerClass]() | 350.99 μs | 243.04 μs | 0.69 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.Sort<IntStruct>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Sort.Array(Size: 512) ```log [685067.050 ; 706040.102) | @@@@@@@ [706040.102 ; 728162.826) | @@@@@@@@@@ [728162.826 ; 750156.347) | [750156.347 ; 772149.868) | [772149.868 ; 794143.389) | [794143.389 ; 818137.663) | [818137.663 ; 846484.726) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [846484.726 ; 873449.241) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [873449.241 ; 893814.863) | @ [893814.863 ; 915808.384) | [915808.384 ; 937801.905) | [937801.905 ; 967002.824) | @ ``` #### System.Collections.Sort.List(Size: 512) ```log [689296.956 ; 708461.594) | @@@@@ [708461.594 ; 735097.128) | @@@@@@@@@@@@@ [735097.128 ; 756419.008) | [756419.008 ; 777740.888) | [777740.888 ; 799062.767) | [799062.767 ; 818330.688) | [818330.688 ; 846603.764) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [846603.764 ; 867349.248) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Collections.Sort.Array_Comparison(Size: 512) ```log [235895.054 ; 243430.613) | @ [243430.613 ; 251148.464) | @@@@@@@@@@@@@@@ [251148.464 ; 256744.175) | @@ [256744.175 ; 264462.027) | [264462.027 ; 272179.878) | [272179.878 ; 279897.730) | [279897.730 ; 287615.581) | [287615.581 ; 295333.433) | [295333.433 ; 303051.284) | [303051.284 ; 310769.136) | [310769.136 ; 318486.987) | [318486.987 ; 327645.264) | @@@@@@ [327645.264 ; 335363.116) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [335363.116 ; 346799.478) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [346799.478 ; 353917.273) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [353917.273 ; 362059.294) | @@@@ ``` #### System.Collections.Sort.Array_ComparerStruct(Size: 512) ```log [243071.315 ; 255615.947) | @@@@@@@@@@@@@@@@@ [255615.947 ; 263264.150) | [263264.150 ; 270912.353) | [270912.353 ; 278560.557) | [278560.557 ; 286208.760) | [286208.760 ; 293856.963) | [293856.963 ; 301505.166) | [301505.166 ; 309153.369) | [309153.369 ; 316801.572) | [316801.572 ; 328992.170) | @@@@ [328992.170 ; 336640.373) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [336640.373 ; 347731.391) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [347731.391 ; 355585.230) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [355585.230 ; 364409.732) | @@@@@@@@@@ ``` #### System.Collections.Sort.LinqOrderByExtension(Size: 512) ```log [816510.521 ; 847995.377) | @@@@@@@@@@@@@@@@@@ [847995.377 ; 868812.207) | [868812.207 ; 889629.036) | [889629.036 ; 910445.866) | [910445.866 ; 932342.465) | [932342.465 ; 963963.963) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [963963.963 ; 1008248.800) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Collections.Sort.LinqQuery(Size: 512) ```log [808321.680 ; 836190.186) | @@@@@@@@@@@@@@@@@ [836190.186 ; 857552.497) | @ [857552.497 ; 878772.135) | [878772.135 ; 899991.774) | [899991.774 ; 921211.412) | [921211.412 ; 945270.206) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [945270.206 ; 979446.688) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [979446.688 ; 1010223.759) | @@@@@@@@@@@@@ ``` #### System.Collections.Sort.Array_ComparerClass(Size: 512) ```log [240988.869 ; 248709.856) | @@@@@@@@@@@@@@@ [248709.856 ; 256441.092) | @@@ [256441.092 ; 264162.080) | [264162.080 ; 271883.067) | [271883.067 ; 279604.055) | [279604.055 ; 287325.042) | [287325.042 ; 295046.030) | [295046.030 ; 302767.017) | [302767.017 ; 310488.005) | [310488.005 ; 318208.992) | [318208.992 ; 327479.251) | @@@ [327479.251 ; 335200.238) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [335200.238 ; 347376.077) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [347376.077 ; 361693.837) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [361693.837 ; 369414.824) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_Environment Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetEnvironmentVariable]() | 1.01 μs | 815.13 ns | 0.81 | | | [SetEnvironmentVariable]() | 1.51 μs | 1.25 μs | 0.83 | | | [ExpandEnvironmentVariables]() | 3.54 μs | 2.42 μs | 0.68 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Environment*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Environment.GetEnvironmentVariable ```log [ 771.149 ; 786.962) | @@ [ 786.962 ; 806.364) | @@@@ [ 806.364 ; 838.105) | @@@@@@@@@@@ [ 838.105 ; 869.006) | [ 869.006 ; 899.907) | [ 899.907 ; 930.809) | [ 930.809 ; 964.942) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 964.942 ; 1002.439) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1002.439 ; 1039.520) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1039.520 ; 1075.431) | @@@@@ ``` #### System.Tests.Perf_Environment.SetEnvironmentVariable ```log [1184.274 ; 1214.960) | @@@@@@ [1214.960 ; 1244.942) | @@@@@@@@@ [1244.942 ; 1276.519) | @@ [1276.519 ; 1302.307) | @ [1302.307 ; 1346.695) | [1346.695 ; 1391.083) | [1391.083 ; 1434.362) | [1434.362 ; 1486.683) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1486.683 ; 1537.089) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1537.089 ; 1612.274) | @@@@@@@ ``` #### System.Tests.Perf_Environment.ExpandEnvironmentVariables ```log [2271.057 ; 2377.132) | @@@@@@@@@ [2377.132 ; 2468.234) | @@@@@@@@ [2468.234 ; 2555.330) | @ [2555.330 ; 2646.432) | [2646.432 ; 2737.535) | [2737.535 ; 2828.638) | [2828.638 ; 2919.740) | [2919.740 ; 3010.843) | [3010.843 ; 3101.945) | [3101.945 ; 3193.048) | [3193.048 ; 3324.014) | @@@@ [3324.014 ; 3412.363) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3412.363 ; 3503.466) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3503.466 ; 3598.194) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3598.194 ; 3673.176) | @@@@@@@ [3673.176 ; 3752.816) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<Hashtable> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromStream]() | 1.29 ms | 938.81 μs | 0.73 | | | [DeserializeFromUtf8Bytes]() | 1.22 ms | 889.87 μs | 0.73 | | | [DeserializeFromString]() | 1.31 ms | 964.46 μs | 0.74 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<Hashtable>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromStream ```log [ 933476.446 ; 958907.517) | @@@@@@@@@@@@@@@@@@ [ 958907.517 ; 984338.588) | [ 984338.588 ; 1009769.660) | [1009769.660 ; 1035200.731) | [1035200.731 ; 1060631.803) | [1060631.803 ; 1086062.874) | [1086062.874 ; 1111493.945) | [1111493.945 ; 1136925.017) | [1136925.017 ; 1162356.088) | [1162356.088 ; 1187787.160) | [1187787.160 ; 1213218.231) | [1213218.231 ; 1243712.145) | [1243712.145 ; 1287076.864) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1287076.864 ; 1325893.683) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromUtf8Bytes ```log [ 881061.891 ; 905996.158) | @@@@@@@@@@@@@@@@@@ [ 905996.158 ; 930930.425) | [ 930930.425 ; 955864.692) | [ 955864.692 ; 980798.959) | [ 980798.959 ; 1005733.226) | [1005733.226 ; 1030667.493) | [1030667.493 ; 1055601.760) | [1055601.760 ; 1080536.027) | [1080536.027 ; 1105470.294) | [1105470.294 ; 1130404.562) | [1130404.562 ; 1155338.829) | [1155338.829 ; 1184377.499) | [1184377.499 ; 1249234.599) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromString ```log [ 946338.929 ; 972264.842) | @@@@@@@@@@@@@@@@@@ [ 972264.842 ; 998190.756) | [ 998190.756 ; 1024116.670) | [1024116.670 ; 1050042.583) | [1050042.583 ; 1075968.497) | [1075968.497 ; 1101894.410) | [1101894.410 ; 1127820.324) | [1127820.324 ; 1153746.238) | [1153746.238 ; 1179672.151) | [1179672.151 ; 1205598.065) | [1205598.065 ; 1231523.978) | [1231523.978 ; 1257449.892) | [1257449.892 ; 1332760.084) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Memory.ReadOnlySequence Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Slice_Start_And_EndPosition]() | 160.09 ns | 115.17 ns | 0.72 | | | [Slice_Repeat]() | 802.17 ns | 648.29 ns | 0.81 | | | [Slice_Start_And_Length]() | 124.76 ns | 90.37 ns | 0.72 | | | [Slice_Repeat_StartPosition_And_EndPosition]() | 772.12 ns | 585.52 ns | 0.76 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Memory.ReadOnlySequence*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.ReadOnlySequence.Slice_Start_And_EndPosition(Segment: Single) ```log [110.152 ; 112.856) | @@@@@@@@@@ [112.856 ; 116.456) | @@@@@@ [116.456 ; 120.891) | @ [120.891 ; 124.864) | [124.864 ; 127.568) | @ [127.568 ; 130.272) | [130.272 ; 132.976) | [132.976 ; 135.772) | [135.772 ; 140.621) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [140.621 ; 146.031) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [146.031 ; 151.997) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [151.997 ; 161.444) | @@@@@@@@@@@@@@@@@@ ``` #### System.Memory.ReadOnlySequence.Slice_Repeat(Segment: Multiple) ```log [634.022 ; 646.944) | @ [646.944 ; 661.740) | @@@@@@@@@@@ [661.740 ; 688.098) | @@@@@@ [688.098 ; 713.998) | [713.998 ; 739.899) | [739.899 ; 765.799) | [765.799 ; 788.414) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [788.414 ; 819.016) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [819.016 ; 848.666) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [848.666 ; 881.569) | @@@ ``` #### System.Memory.ReadOnlySequence.Slice_Start_And_Length(Segment: Single) ```log [ 86.384 ; 90.576) | @@@@@@@@@@@@@@@ [ 90.576 ; 92.828) | @ [ 92.828 ; 95.481) | @@ [ 95.481 ; 98.135) | [ 98.135 ; 100.789) | [100.789 ; 103.443) | [103.443 ; 106.097) | [106.097 ; 108.750) | [108.750 ; 112.242) | @@@@@ [112.242 ; 114.896) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [114.896 ; 117.421) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [117.421 ; 120.215) | @@@@@@@@@@@@@@@ [120.215 ; 124.441) | @@@@@@@@@@@@@@ [124.441 ; 127.232) | @@@@@@@@@@@@@ [127.232 ; 129.886) | @@@@@@@@@@@@@@@@@@@@ [129.886 ; 133.742) | @@@@ [133.742 ; 139.097) | @ [139.097 ; 142.372) | @ ``` #### System.Memory.ReadOnlySequence.Slice_Repeat_StartPosition_And_EndPosition(Segment: Multiple) ```log [572.545 ; 586.065) | @@@@@@@@@@ [586.065 ; 601.999) | @@@@@@ [601.999 ; 615.519) | [615.519 ; 639.690) | @ [639.690 ; 654.337) | @ [654.337 ; 667.858) | [667.858 ; 681.378) | [681.378 ; 698.185) | @@@ [698.185 ; 726.732) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [726.732 ; 754.144) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [754.144 ; 779.395) | @@@@@@@@@@@@@@@@@@@@@@@ [779.395 ; 807.095) | @@@@@@@@ [807.095 ; 839.998) | @@ [839.998 ; 880.431) | @ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Numerics.Tests.Perf_Vector2

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[DistanceBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector2.DistanceBenchmark.html>) 52.40 ns 31.99 ns 0.61
[DotBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector2.DotBenchmark.html>) 24.49 ns 12.44 ns 0.51
[ReflectBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector2.ReflectBenchmark.html>) 106.18 ns 59.44 ns 0.56
[DivideByVector2OperatorBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector2.DivideByVector2OperatorBenchmark.html>) 34.97 ns 22.45 ns 0.64
[NormalizeBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector2.NormalizeBenchmark.html>) 76.60 ns 51.08 ns 0.67
[LengthBenchmark](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Numerics.Tests.Perf_Vector2.LengthBenchmark.html>) 26.95 ns 14.91 ns 0.55

graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Numerics.Tests.Perf_Vector2*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Perf_Vector2.DistanceBenchmark ```log [31.041 ; 32.687) | @@@@@@@@@@@@@@@@@ [32.687 ; 34.117) | @ [34.117 ; 35.763) | [35.763 ; 37.410) | [37.410 ; 39.057) | [39.057 ; 40.704) | [40.704 ; 42.350) | [42.350 ; 43.997) | [43.997 ; 46.067) | [46.067 ; 47.714) | @ [47.714 ; 49.558) | @ [49.558 ; 51.039) | @@@@@@ [51.039 ; 52.685) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [52.685 ; 54.071) | @@@@@@@@@@@@@@@ [54.071 ; 55.770) | @@@ [55.770 ; 57.561) | @ [57.561 ; 59.491) | @@ [59.491 ; 61.138) | [61.138 ; 62.784) | [62.784 ; 64.431) | [64.431 ; 66.490) | [66.490 ; 68.137) | @ ``` #### System.Numerics.Tests.Perf_Vector2.DotBenchmark ```log [10.780 ; 11.731) | @@@ [11.731 ; 12.586) | @@@@@@@@@@@ [12.586 ; 13.334) | @@ [13.334 ; 14.249) | @ [14.249 ; 15.103) | @ [15.103 ; 15.958) | [15.958 ; 16.813) | [16.813 ; 17.668) | [17.668 ; 18.523) | [18.523 ; 19.378) | [19.378 ; 20.233) | [20.233 ; 20.642) | [20.642 ; 21.497) | @@@ [21.497 ; 21.949) | [21.949 ; 22.567) | @@@@@@@@@@@@@@ [22.567 ; 23.422) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.422 ; 24.317) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [24.317 ; 25.122) | @@@@@@@@@@ [25.122 ; 26.007) | @@@@@ ``` #### System.Numerics.Tests.Perf_Vector2.ReflectBenchmark ```log [ 58.095 ; 61.713) | @@@@@@@@@@@@@@@@@ [ 61.713 ; 63.628) | [ 63.628 ; 67.246) | @ [ 67.246 ; 70.865) | [ 70.865 ; 74.483) | [ 74.483 ; 78.101) | [ 78.101 ; 81.720) | [ 81.720 ; 85.338) | [ 85.338 ; 88.956) | [ 88.956 ; 92.575) | [ 92.575 ; 96.193) | [ 96.193 ; 98.962) | [ 98.962 ; 101.752) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [101.752 ; 105.371) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [105.371 ; 109.252) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [109.252 ; 113.496) | @@@@@@@@@@@ [113.496 ; 117.114) | @@@@@@@@@@@@ [117.114 ; 121.300) | @@@@@ ``` #### System.Numerics.Tests.Perf_Vector2.DivideByVector2OperatorBenchmark ```log [20.891 ; 21.831) | @@ [21.831 ; 22.854) | @@@@@@@@@@@@@ [22.854 ; 23.387) | @ [23.387 ; 24.410) | @@ [24.410 ; 25.434) | [25.434 ; 26.457) | [26.457 ; 27.480) | [27.480 ; 28.503) | [28.503 ; 29.527) | [29.527 ; 30.550) | [30.550 ; 31.306) | [31.306 ; 32.329) | @@@ [32.329 ; 33.245) | [33.245 ; 34.241) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [34.241 ; 35.264) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [35.264 ; 36.195) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [36.195 ; 37.278) | @@@@@ [37.278 ; 38.645) | @ [38.645 ; 39.669) | @@@ [39.669 ; 40.620) | @ ``` #### System.Numerics.Tests.Perf_Vector2.NormalizeBenchmark ```log [49.350 ; 51.505) | @@@@@@@@@@@@@@@ [51.505 ; 53.057) | @@ [53.057 ; 54.394) | [54.394 ; 56.549) | @ [56.549 ; 58.703) | [58.703 ; 60.858) | [60.858 ; 63.012) | [63.012 ; 65.167) | [65.167 ; 67.322) | [67.322 ; 68.535) | [68.535 ; 70.690) | @@ [70.690 ; 72.276) | [72.276 ; 74.196) | @@@@@@@@@@@@@@ [74.196 ; 76.351) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [76.351 ; 78.486) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [78.486 ; 81.241) | @@@@@@@@@ [81.241 ; 83.396) | @@@@ [83.396 ; 85.934) | @@@ [85.934 ; 88.089) | @@@@@@@@ [88.089 ; 90.171) | @@@@ ``` #### System.Numerics.Tests.Perf_Vector2.LengthBenchmark ```log [14.298 ; 15.276) | @@@@@@@@@@@@@@@@@ [15.276 ; 15.882) | @ [15.882 ; 16.860) | [16.860 ; 17.838) | [17.838 ; 18.816) | [18.816 ; 19.793) | [19.793 ; 20.771) | [20.771 ; 21.749) | [21.749 ; 23.044) | [23.044 ; 24.021) | @ [24.021 ; 25.120) | @@ [25.120 ; 26.095) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [26.095 ; 27.073) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [27.073 ; 28.034) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [28.034 ; 29.037) | @@@@@@@@ [29.037 ; 30.320) | @ [30.320 ; 31.705) | @@ [31.705 ; 32.682) | [32.682 ; 33.660) | [33.660 ; 34.638) | [34.638 ; 35.616) | [35.616 ; 36.594) | [36.594 ; 37.571) | [37.571 ; 38.549) | [38.549 ; 39.527) | [39.527 ; 40.882) | [40.882 ; 41.860) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.CtorGivenSize<Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [HashSet]() | 856.19 ns | 704.83 ns | 0.82 | | | [ConcurrentDictionary]() | 719.12 ns | 679.56 ns | 0.94 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.CtorGivenSize<Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.CtorGivenSize.HashSet(Size: 512) ```log [690.687 ; 715.590) | @@@@@@@@@@@@@@@@@@ [715.590 ; 732.646) | [732.646 ; 749.702) | [749.702 ; 773.699) | @ [773.699 ; 801.577) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [801.577 ; 825.008) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [825.008 ; 847.152) | @@@@@ [847.152 ; 873.962) | @@@ ``` #### System.Collections.CtorGivenSize.ConcurrentDictionary(Size: 512) ```log [650.689 ; 671.887) | @@ [671.887 ; 698.938) | @@@@@@@@@@@@@@@@@ [698.938 ; 722.243) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [722.243 ; 741.301) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [741.301 ; 760.429) | @@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Tests.Perf_Basic Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [WriteBasicUtf8]() | 30.79 μs | 23.90 μs | 0.78 | | | [WriteBasicUtf16]() | 41.32 ms | 35.34 ms | 0.86 | | | [WriteBasicUtf8]() | 40.75 ms | 35.63 ms | 0.87 | | | [WriteBasicUtf8]() | 37.16 μs | 29.13 μs | 0.78 | | | [WriteBasicUtf16]() | 55.41 ms | 47.00 ms | 0.85 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Perf_Basic*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf8(Formatted: False, SkipValidation: False, DataSize: 10) ```log [23268.143 ; 23824.234) | @@@@@@@@@@@@@ [23824.234 ; 24318.233) | @@@@ [24318.233 ; 24818.366) | @ [24818.366 ; 25374.456) | [25374.456 ; 25930.547) | [25930.547 ; 26486.638) | [26486.638 ; 27042.729) | [27042.729 ; 27598.820) | [27598.820 ; 28154.910) | [28154.910 ; 28711.001) | [28711.001 ; 29267.092) | [29267.092 ; 30217.275) | @@@@@@@@@@@@@@@@@@@@@@@@@ [30217.275 ; 31372.642) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf16(Formatted: False, SkipValidation: True, DataSize: 100000) ```log [33735454.976 ; 34991375.037) | @@@@@@@@@ [34991375.037 ; 35774815.393) | @@@@@ [35774815.393 ; 36755295.695) | @@ [36755295.695 ; 38228257.309) | @@ [38228257.309 ; 39567234.329) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [39567234.329 ; 40847214.081) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [40847214.081 ; 42105580.518) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [42105580.518 ; 43514108.631) | @@@ ``` #### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf8(Formatted: False, SkipValidation: True, DataSize: 100000) ```log [34007189.302 ; 34726977.290) | @@ [34726977.290 ; 36006654.966) | @@@@@@@@@@@@@@@@ [36006654.966 ; 36935168.549) | [36935168.549 ; 37863682.131) | [37863682.131 ; 38984677.908) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [38984677.908 ; 40450520.009) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [40450520.009 ; 41855488.572) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [41855488.572 ; 42784732.979) | @@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf8(Formatted: True, SkipValidation: False, DataSize: 10) ```log [27714.730 ; 28918.999) | @@@@@@@@@@@@ [28918.999 ; 29755.596) | @@@@@ [29755.596 ; 30409.971) | @ [30409.971 ; 31064.346) | [31064.346 ; 31718.721) | [31718.721 ; 32373.096) | [32373.096 ; 33027.471) | [33027.471 ; 33681.846) | [33681.846 ; 34336.221) | [34336.221 ; 34990.596) | [34990.596 ; 35644.971) | [35644.971 ; 36498.340) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [36498.340 ; 37858.936) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf16(Formatted: True, SkipValidation: True, DataSize: 100000) ```log [44482705.404 ; 45839164.504) | @@@@@ [45839164.504 ; 47709295.521) | @@@@@@@@ [47709295.521 ; 49333018.594) | @@@ [49333018.594 ; 50674312.676) | @ [50674312.676 ; 52240774.790) | @@@@@@@@@@@@@@@@@@@@@@@@@ [52240774.790 ; 54196959.644) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [54196959.644 ; 56965021.746) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromStream]() | 13.89 ms | 10.62 ms | 0.76 | | | [DeserializeFromString]() | 13.25 ms | 9.97 ms | 0.75 | | | [DeserializeFromUtf8Bytes]() | 12.26 ms | 9.13 ms | 0.74 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromStream ```log [10314940.734 ; 10776759.464) | @@@@@@@@@@@@@@@@@@ [10776759.464 ; 11039805.846) | [11039805.846 ; 11302852.229) | [11302852.229 ; 11565898.612) | [11565898.612 ; 11828944.994) | [11828944.994 ; 12091991.377) | [12091991.377 ; 12355037.760) | [12355037.760 ; 12618084.143) | [12618084.143 ; 12881130.525) | [12881130.525 ; 13144176.908) | [13144176.908 ; 13407223.291) | [13407223.291 ; 13743632.532) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [13743632.532 ; 14269865.351) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromString ```log [ 9685146.413 ; 10080502.603) | @@@@@@@@@@@@@@@ [10080502.603 ; 10508067.015) | @@ [10508067.015 ; 10753755.461) | [10753755.461 ; 10999443.906) | [10999443.906 ; 11245132.351) | [11245132.351 ; 11490820.797) | [11490820.797 ; 11736509.242) | [11736509.242 ; 11982197.687) | [11982197.687 ; 12227886.133) | [12227886.133 ; 12473574.578) | [12473574.578 ; 12719263.023) | [12719263.023 ; 13078476.779) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [13078476.779 ; 13763276.645) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromUtf8Bytes ```log [ 9015923.462 ; 9376587.178) | @@@@@@@@@@@@@@@@@ [ 9376587.178 ; 9604628.008) | [ 9604628.008 ; 9832668.838) | [ 9832668.838 ; 10060709.668) | [10060709.668 ; 10288750.498) | [10288750.498 ; 10516791.327) | [10516791.327 ; 10744832.157) | [10744832.157 ; 10972872.987) | [10972872.987 ; 11200913.817) | [11200913.817 ; 11428954.647) | [11428954.647 ; 11656995.476) | [11656995.476 ; 12101919.110) | @@@@@@@@@@ [12101919.110 ; 12834999.292) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.Array2 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 9.63 secs | 6.63 secs | 0.69 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.Array2*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.Array2.Test ```log [6467063008.600 ; 6706092217.279) | @@@@@@@@@@@@@@@@@ [6706092217.279 ; 6945121425.957) | [6945121425.957 ; 7184150634.636) | [7184150634.636 ; 7423179843.315) | [7423179843.315 ; 7662209051.993) | [7662209051.993 ; 7901238260.672) | [7901238260.672 ; 8140267469.350) | [8140267469.350 ; 8404794508.127) | [8404794508.127 ; 8643823716.806) | @ [8643823716.806 ; 8882852925.485) | [8882852925.485 ; 9199217546.984) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9199217546.984 ; 9492163298.127) | @@@ [9492163298.127 ; 9731192506.806) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9731192506.806 ; 9996485646.073) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Tests.Perf_Get Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetInt16]() | 16.85 μs | 14.24 μs | 0.85 | | | [GetUInt16]() | 15.42 μs | 13.60 μs | 0.88 | | | [GetDouble]() | 90.36 μs | 79.64 μs | 0.88 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Perf_Get*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Get.GetInt16 ```log [14026.925 ; 14584.410) | @@@@@@@@@@@@@@ [14584.410 ; 14938.226) | @ [14938.226 ; 15409.597) | @@ [15409.597 ; 15737.858) | @ [15737.858 ; 16126.077) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [16126.077 ; 16671.823) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [16671.823 ; 17278.913) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17278.913 ; 17867.911) | @@@@@@@@@@@@ [17867.911 ; 18748.874) | @@@ ``` #### System.Text.Json.Tests.Perf_Get.GetUInt16 ```log [13398.916 ; 13871.718) | @@@@@@@@@@ [13871.718 ; 14347.300) | @@@ [14347.300 ; 14672.206) | @@ [14672.206 ; 15186.725) | @@@ [15186.725 ; 15732.938) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [15732.938 ; 16256.402) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [16256.402 ; 16610.840) | @@@@@@@@@@@@@@@@ [16610.840 ; 17024.222) | @@@ [17024.222 ; 17720.699) | @@@@@@@ ``` #### System.Text.Json.Tests.Perf_Get.GetDouble ```log [76743.931 ; 78376.210) | @@@@@@@ [78376.210 ; 80323.443) | @@@@@@@ [80323.443 ; 82849.635) | @@@ [82849.635 ; 84656.629) | [84656.629 ; 87279.480) | @@@@ [87279.480 ; 90452.099) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [90452.099 ; 93839.875) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_UInt64 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [TryParse]() | 234.14 ns | 199.07 ns | 0.85 | | | [TryParse]() | 123.33 ns | 109.52 ns | 0.89 | | | [ParseSpan]() | 287.73 ns | 246.35 ns | 0.86 | | | [TryFormat]() | 356.39 ns | 282.67 ns | 0.79 | | | [ToString]() | 446.48 ns | 365.61 ns | 0.82 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_UInt64*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_UInt64.TryParse(value: "12345") ```log [194.133 ; 200.761) | @@@@@ [200.761 ; 206.501) | @@@@@@@@ [206.501 ; 213.091) | @@@ [213.091 ; 221.489) | @ [221.489 ; 228.832) | @@@@@@@ [228.832 ; 237.514) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [237.514 ; 242.845) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [242.845 ; 252.314) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [252.314 ; 259.177) | @@@@ [259.177 ; 266.144) | @@@@ [266.144 ; 272.009) | @ ``` #### System.Tests.Perf_UInt64.TryParse(value: "0") ```log [108.502 ; 112.848) | @@@@@@@ [112.848 ; 116.037) | @@@@@@@@ [116.037 ; 119.971) | @@ [119.971 ; 124.413) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [124.413 ; 128.940) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [128.940 ; 133.583) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [133.583 ; 138.681) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [138.681 ; 142.472) | @@@@@@@@@@@ ``` #### System.Tests.Perf_UInt64.ParseSpan(value: "12345") ```log [237.611 ; 245.427) | @@ [245.427 ; 253.536) | @@@@@@ [253.536 ; 262.464) | @@@@@@@@@ [262.464 ; 269.102) | @@@@@@ [269.102 ; 279.506) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [279.506 ; 288.436) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [288.436 ; 299.377) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [299.377 ; 314.256) | @@@@@@@@@@@@ ``` #### System.Tests.Perf_UInt64.TryFormat(value: 12345) ```log [265.219 ; 272.528) | @@@ [272.528 ; 285.207) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [285.207 ; 297.951) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [297.951 ; 309.726) | @@@@@@@@ [309.726 ; 322.406) | [322.406 ; 334.429) | [334.429 ; 341.330) | @@ [341.330 ; 354.010) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [354.010 ; 365.935) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [365.935 ; 378.871) | @@@ ``` #### System.Tests.Perf_UInt64.ToString(value: 12345) ```log [344.033 ; 352.624) | @ [352.624 ; 365.284) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [365.284 ; 377.829) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [377.829 ; 390.719) | @@@@@@ [390.719 ; 403.379) | [403.379 ; 422.979) | @@@@ [422.979 ; 435.639) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [435.639 ; 456.776) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [456.776 ; 470.924) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Reflection.Activator<EmptyStruct> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [CreateInstanceNames]() | 30.11 μs | 24.49 μs | 0.81 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Reflection.Activator<EmptyStruct>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Reflection.Activator.CreateInstanceNames ```log [23987.779 ; 24849.987) | @@@@@@@@@@@@@@@@@ [24849.987 ; 25712.194) | [25712.194 ; 26574.402) | [26574.402 ; 27436.610) | [27436.610 ; 28298.817) | [28298.817 ; 29401.986) | @@@@ [29401.986 ; 30264.193) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [30264.193 ; 31713.243) | @ [31713.243 ; 33179.684) | @@@@@@@@@@@@@@@@@@@@ [33179.684 ; 34041.892) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [34041.892 ; 35419.333) | @@@@@@@@@ [35419.333 ; 36281.540) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Diagnostics.Perf_Activity Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ActivityAllocations]() | 3.19 μs | 2.29 μs | 0.72 | | | [EnumerateActivityLinksLarge]() | 61.04 μs | 50.38 μs | 0.83 | | | [EnumerateActivityTagObjectsSmall]() | 374.58 ns | 333.06 ns | 0.89 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Diagnostics.Perf_Activity*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Diagnostics.Perf_Activity.ActivityAllocations(idFormat: Hierarchical) ```log [2129.705 ; 2174.330) | @ [2174.330 ; 2240.564) | @@@@@@@@@@@ [2240.564 ; 2308.329) | @@@@@@ [2308.329 ; 2374.563) | [2374.563 ; 2440.797) | [2440.797 ; 2507.031) | [2507.031 ; 2573.266) | [2573.266 ; 2639.500) | [2639.500 ; 2751.493) | @ [2751.493 ; 2820.418) | @@@@@@@@@@@@@@ [2820.418 ; 2887.700) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2887.700 ; 2958.364) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2958.364 ; 3024.598) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3024.598 ; 3099.895) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3099.895 ; 3167.756) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3167.756 ; 3281.920) | @@@@@@@ ``` #### System.Diagnostics.Perf_Activity.EnumerateActivityLinksLarge ```log [50223.278 ; 51901.466) | @@@@@@@@@@@@@@@@@@ [51901.466 ; 53656.503) | [53656.503 ; 55411.541) | [55411.541 ; 57128.121) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [57128.121 ; 59314.936) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59314.936 ; 61704.646) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61704.646 ; 63730.702) | @@@@@@@@@@@@@ [63730.702 ; 65174.481) | @@@@@ [65174.481 ; 66929.519) | [66929.519 ; 68894.330) | @ [68894.330 ; 70649.367) | [70649.367 ; 72374.540) | @ ``` #### System.Diagnostics.Perf_Activity.EnumerateActivityTagObjectsSmall ```log [328.626 ; 336.958) | @@@@@ [336.958 ; 344.124) | @@@@@@@@@ [344.124 ; 355.364) | @@@ [355.364 ; 365.526) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [365.526 ; 378.376) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [378.376 ; 387.281) | @@@@@@@@@@@@@@@@@@@ [387.281 ; 399.899) | @@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.Sort<IntClass> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Array]() | 253.49 μs | 217.07 μs | 0.86 | | | [Array_Comparison]() | 233.68 μs | 194.64 μs | 0.83 | | | [Array_ComparerStruct]() | 239.58 μs | 196.67 μs | 0.82 | | | [LinqOrderByExtension]() | 441.11 μs | 394.72 μs | 0.89 | | | [Array_ComparerClass]() | 229.90 μs | 196.53 μs | 0.85 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.Sort<IntClass>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Sort.Array(Size: 512) ```log [209907.086 ; 216166.797) | @@@@@@@@@@ [216166.797 ; 222679.430) | @@@@@@@@ [222679.430 ; 228955.035) | [228955.035 ; 235230.640) | [235230.640 ; 242101.577) | @@@@ [242101.577 ; 251137.500) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [251137.500 ; 261309.335) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [261309.335 ; 272570.825) | @@@@@@@@@ ``` #### System.Collections.Sort.Array_Comparison(Size: 512) ```log [188507.629 ; 195924.632) | @@@@ [195924.632 ; 202854.157) | @@@@@@ [202854.157 ; 207547.273) | @@@@@@ [207547.273 ; 213795.554) | @@ [213795.554 ; 219640.656) | [219640.656 ; 226130.806) | @@@@@@@@@@@@@@@@@@@@@@@ [226130.806 ; 234876.084) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [234876.084 ; 240442.731) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [240442.731 ; 249312.009) | @@@@@@@@@@@@@@@@@@@ [249312.009 ; 256020.978) | @@ ``` #### System.Collections.Sort.Array_ComparerStruct(Size: 512) ```log [187037.907 ; 190991.563) | @@@@ [190991.563 ; 197832.352) | @@@@@@@@@@@@@@ [197832.352 ; 204852.321) | [204852.321 ; 211872.290) | [211872.290 ; 218892.259) | [218892.259 ; 224177.066) | [224177.066 ; 231887.945) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [231887.945 ; 238360.980) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [238360.980 ; 247712.339) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [247712.339 ; 255159.525) | @@ ``` #### System.Collections.Sort.LinqOrderByExtension(Size: 512) ```log [377177.131 ; 390148.072) | @@@@@@@@@@@@@@@ [390148.072 ; 401010.400) | @@@ [401010.400 ; 414333.619) | [414333.619 ; 428831.287) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [428831.287 ; 443307.892) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [443307.892 ; 461630.075) | @@@@ ``` #### System.Collections.Sort.Array_ComparerClass(Size: 512) ```log [193565.344 ; 201457.988) | @@@@@@@@ [201457.988 ; 208054.802) | @@@@@@@@ [208054.802 ; 215153.154) | @@ [215153.154 ; 220943.603) | [220943.603 ; 227961.097) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [227961.097 ; 236485.192) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [236485.192 ; 242239.188) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [242239.188 ; 251397.404) | @@@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.MathBenchmarks.MathTests

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[DivRemInt64](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.MathBenchmarks.MathTests.DivRemInt64.html>) 21.58 ns 13.94 ns 0.65
[DivRemInt32](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.MathBenchmarks.MathTests.DivRemInt32.html>) 18.94 ns 11.89 ns 0.63

graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.MathBenchmarks.MathTests*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.MathBenchmarks.MathTests.DivRemInt64 ```log [ 5.236 ; 5.996) | @@ [ 5.996 ; 6.828) | [ 6.828 ; 7.568) | @ [ 7.568 ; 8.308) | [ 8.308 ; 9.048) | [ 9.048 ; 9.788) | [ 9.788 ; 10.528) | [10.528 ; 11.268) | [11.268 ; 12.008) | [12.008 ; 12.748) | [12.748 ; 13.569) | [13.569 ; 14.309) | @ [14.309 ; 14.733) | [14.733 ; 15.473) | @@@@@@@@@@@@@@@ [15.473 ; 16.102) | @ [16.102 ; 16.842) | [16.842 ; 17.161) | [17.161 ; 17.901) | @@ [17.901 ; 18.950) | @@@ [18.950 ; 19.938) | @@@@@@@ [19.938 ; 20.685) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20.685 ; 21.425) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [21.425 ; 22.175) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.175 ; 22.924) | @@@@@@@@@@@@@@ [22.924 ; 23.664) | @@@@@ [23.664 ; 24.421) | @@@ [24.421 ; 25.161) | [25.161 ; 25.696) | [25.696 ; 26.436) | @ ``` #### System.MathBenchmarks.MathTests.DivRemInt32 ```log [ 7.057 ; 7.581) | @ [ 7.581 ; 8.104) | [ 8.104 ; 8.628) | [ 8.628 ; 9.152) | [ 9.152 ; 9.675) | [ 9.675 ; 10.199) | [10.199 ; 10.796) | [10.796 ; 11.483) | @@ [11.483 ; 12.006) | @@@@@@@@@@@@@ [12.006 ; 12.504) | @@ [12.504 ; 13.028) | [13.028 ; 13.552) | [13.552 ; 14.154) | [14.154 ; 14.678) | @@@@@ [14.678 ; 15.303) | @@ [15.303 ; 16.054) | @@@@@@@@ [16.054 ; 16.542) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [16.542 ; 17.066) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [17.066 ; 17.599) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [17.599 ; 18.092) | @@@@@@@@@@@@@@@ [18.092 ; 18.647) | @@@@@@@@ [18.647 ; 19.199) | @@@@ [19.199 ; 19.782) | @ [19.782 ; 20.687) | @@@@ [20.687 ; 21.236) | @ [21.236 ; 22.123) | [22.123 ; 22.647) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Memory.Slice<Byte> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [MemoryStartLengthSpan]() | 105.85 ns | 81.26 ns | 0.77 | | | [ReadOnlyMemorySpanStart]() | 99.44 ns | 79.75 ns | 0.80 | | | [MemoryStart]() | 42.84 ns | 37.72 ns | 0.88 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Memory.Slice<Byte>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.Slice.MemoryStartLengthSpan ```log [ 77.145 ; 80.240) | @@@@@@@@@@@@@@ [ 80.240 ; 82.167) | @@ [ 82.167 ; 84.143) | @ [ 84.143 ; 86.065) | [ 86.065 ; 87.988) | [ 87.988 ; 89.910) | [ 89.910 ; 91.832) | [ 91.832 ; 93.755) | [ 93.755 ; 95.811) | @@@@@@@@@@@@@@@@@@@@@ [ 95.811 ; 99.665) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 99.665 ; 103.408) | @@@@@@@@@@@@ [103.408 ; 105.515) | @@@@ [105.515 ; 108.754) | @@@@@@@@ [108.754 ; 113.019) | @@@@@@@@@@@@@@@ [113.019 ; 117.866) | @ ``` #### System.Memory.Slice.ReadOnlyMemorySpanStart ```log [ 74.289 ; 76.107) | @@@@@ [ 76.107 ; 77.698) | @@@@@@@@@@ [ 77.698 ; 79.861) | @@@ [ 79.861 ; 83.043) | [ 83.043 ; 86.226) | [ 86.226 ; 89.409) | [ 89.409 ; 91.720) | @@@ [ 91.720 ; 95.272) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 95.272 ; 97.724) | @@@@@@@@@@@ [ 97.724 ; 101.504) | @@@@@@@@@@@@@@ [101.504 ; 103.641) | @ [103.641 ; 105.942) | @@ [105.942 ; 109.188) | @@@@ ``` #### System.Memory.Slice.MemoryStart ```log [36.804 ; 38.229) | @@@@@@@@@@@@@@@@@ [38.229 ; 39.412) | @ [39.412 ; 40.385) | [40.385 ; 41.816) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [41.816 ; 43.398) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [43.398 ; 44.741) | @@@@@@@@@@@@@@@@@@@@@@@@@ [44.741 ; 46.052) | @@@ [46.052 ; 47.594) | @ [47.594 ; 49.053) | [49.053 ; 50.780) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Xml_ToStream<IndexViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [XmlSerializer_]() | 1.50 ms | 1.20 ms | 0.80 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream<IndexViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Xml_ToStream.XmlSerializer_ ```log [1133687.545 ; 1159720.408) | @@ [1159720.408 ; 1189740.664) | @@@@@@ [1189740.664 ; 1238059.078) | @@@@@@@@@@ [1238059.078 ; 1284022.611) | [1284022.611 ; 1329986.144) | [1329986.144 ; 1375949.677) | [1375949.677 ; 1414178.609) | [1414178.609 ; 1465298.073) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1465298.073 ; 1498738.699) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1498738.699 ; 1560530.681) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Net.Primitives.Tests.CredentialCacheTests Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetCredential_Uri]() | 4.74 μs | 3.24 μs | 0.68 | | | [GetCredential_Uri]() | 26.17 μs | 21.90 μs | 0.84 | | | [GetCredential_Uri]() | 20.95 μs | 17.67 μs | 0.84 | | | [GetCredential_HostPort]() | 1.71 μs | 1.56 μs | 0.91 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Net.Primitives.Tests.CredentialCacheTests*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_Uri(uriString: "http://notfound", uriCount: 0) ```log [2938.529 ; 3047.107) | @@@ [3047.107 ; 3158.488) | @@@@@@@@@@@ [3158.488 ; 3316.418) | @@@ [3316.418 ; 3427.798) | [3427.798 ; 3539.179) | [3539.179 ; 3650.560) | [3650.560 ; 3761.941) | [3761.941 ; 3873.322) | [3873.322 ; 3984.702) | [3984.702 ; 4096.083) | [4096.083 ; 4207.464) | [4207.464 ; 4351.768) | @@ [4351.768 ; 4463.388) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4463.388 ; 4574.769) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4574.769 ; 4689.281) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4689.281 ; 4893.485) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_Uri(uriString: "http://name5", uriCount: 10) ```log [21346.705 ; 22003.422) | @@@@@@@@@@@@@@@ [22003.422 ; 22635.457) | @@@ [22635.457 ; 23268.049) | [23268.049 ; 23900.642) | [23900.642 ; 24533.234) | [24533.234 ; 25376.162) | @@@@@@@@@@@@@@@@@@@@@@@ [25376.162 ; 26390.299) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_Uri(uriString: "http://notfound", uriCount: 10) ```log [17326.366 ; 17829.995) | @@@@@@@@@@@@@@@@@ [17829.995 ; 18384.369) | @ [18384.369 ; 18912.406) | [18912.406 ; 19440.443) | [19440.443 ; 19968.480) | [19968.480 ; 20664.446) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20664.446 ; 21568.151) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_HostPort(host: "name5", hostPortCount: 10) ```log [1533.762 ; 1582.278) | @@@@@@@@@@@@@ [1582.278 ; 1628.489) | @@@@ [1628.489 ; 1672.974) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1672.974 ; 1730.990) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1730.990 ; 1784.965) | @@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.IO.Pipelines.Tests.Perf_Pipe Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ReadAsyncWithCancellationToken]() | 114.17 ms | 86.83 ms | 0.76 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.IO.Pipelines.Tests.Perf_Pipe*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.IO.Pipelines.Tests.Perf_Pipe.ReadAsyncWithCancellationToken ```log [ 84567518.130 ; 86647212.840) | @@@ [ 86647212.840 ; 88614574.662) | @@@@@@@@@@@@@ [ 88614574.662 ; 92312706.721) | @@ [ 92312706.721 ; 94280068.543) | [ 94280068.543 ; 96247430.365) | [ 96247430.365 ; 98214792.188) | [ 98214792.188 ; 100182154.010) | [100182154.010 ; 102149515.833) | [102149515.833 ; 104116877.655) | [104116877.655 ; 106084239.477) | [106084239.477 ; 108051601.300) | [108051601.300 ; 111807386.196) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [111807386.196 ; 116162852.847) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_Byte Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Parse]() | 225.89 ns | 187.17 ns | 0.83 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Byte*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Byte.Parse(value: "255") ```log [185.659 ; 191.785) | @@@@@ [191.785 ; 195.937) | @@ [195.937 ; 203.632) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [203.632 ; 211.292) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [211.292 ; 217.843) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [217.843 ; 223.950) | @@@@@@@@@@@@@@@@@@@ [223.950 ; 228.991) | @@@@@@@ [228.991 ; 233.981) | @@@@@@ [233.981 ; 247.302) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<ImmutableSortedDictionary<String, String>> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromUtf8Bytes]() | 930.12 μs | 736.17 μs | 0.79 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<ImmutableSortedDictionary<String, String>>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson>.DeserializeFromUtf8Bytes ```log [709108.745 ; 724681.090) | @@@@@@ [724681.090 ; 739864.235) | @@@@@@@@@@@ [739864.235 ; 766850.813) | @ [766850.813 ; 782033.958) | [782033.958 ; 797217.104) | [797217.104 ; 812400.249) | [812400.249 ; 827583.394) | [827583.394 ; 842766.539) | [842766.539 ; 857949.685) | [857949.685 ; 874637.237) | [874637.237 ; 901385.977) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [901385.977 ; 953620.513) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Tests.Utf8JsonReaderCommentsTests Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Utf8JsonReaderCommentParsing]() | 1.44 μs | 1.25 μs | 0.87 | | | [Utf8JsonReaderCommentParsing]() | 51.14 μs | 32.87 μs | 0.64 | | | [Utf8JsonReaderCommentParsing]() | 30.80 μs | 15.62 μs | 0.51 | | | [Utf8JsonReaderCommentParsing]() | 30.70 μs | 15.82 μs | 0.52 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Utf8JsonReaderCommentsTests*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Allow, SegmentSize: 0, TestCase: ShortMultiLine) ```log [1205.033 ; 1230.466) | @@@@@@ [1230.466 ; 1271.856) | @@@@@@@@@ [1271.856 ; 1311.147) | @@@ [1311.147 ; 1340.375) | [1340.375 ; 1376.277) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1376.277 ; 1426.350) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1426.350 ; 1472.031) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Skip, SegmentSize: 100, TestCase: LongSingleLine) ```log [30778.553 ; 32225.416) | @@@@@@@@@@@@@@@@ [32225.416 ; 33588.503) | @ [33588.503 ; 35035.366) | [35035.366 ; 36482.228) | [36482.228 ; 37929.091) | [37929.091 ; 39375.954) | [39375.954 ; 40822.817) | [40822.817 ; 42269.680) | [42269.680 ; 43716.543) | [43716.543 ; 45163.406) | [45163.406 ; 46629.360) | [46629.360 ; 48970.868) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [48970.868 ; 50956.411) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [50956.411 ; 52049.542) | @@@@@@@@@ [52049.542 ; 53496.405) | [53496.405 ; 55435.506) | [55435.506 ; 56882.369) | @ ``` #### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Allow, SegmentSize: 0, TestCase: LongSingleLine) ```log [15313.435 ; 16474.350) | @@@@@@@@@@@@@@@@@@ [16474.350 ; 17635.266) | [17635.266 ; 18796.181) | [18796.181 ; 19957.096) | [19957.096 ; 21118.012) | [21118.012 ; 22278.927) | [22278.927 ; 23439.843) | [23439.843 ; 24600.758) | [24600.758 ; 25761.673) | [25761.673 ; 26922.589) | [26922.589 ; 28083.504) | [28083.504 ; 29604.346) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [29604.346 ; 31032.204) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [31032.204 ; 32420.630) | @@@ ``` #### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Skip, SegmentSize: 0, TestCase: LongSingleLine) ```log [15283.528 ; 16437.011) | @@@@@@@@@@@@@@@@@ [16437.011 ; 16864.932) | [16864.932 ; 18018.415) | @ [18018.415 ; 19171.898) | [19171.898 ; 20325.380) | [20325.380 ; 21478.863) | [21478.863 ; 22632.346) | [22632.346 ; 23785.829) | [23785.829 ; 24939.312) | [24939.312 ; 26092.795) | [26092.795 ; 27246.278) | [27246.278 ; 28018.461) | [28018.461 ; 29171.944) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [29171.944 ; 29810.641) | [29810.641 ; 30964.124) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [30964.124 ; 32556.548) | @@@@@ [32556.548 ; 33843.937) | [33843.937 ; 34997.420) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Globalization.Tests.StringHash Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetHashCode]() | 1.01 μs | 727.59 ns | 0.72 | | | [GetHashCode]() | 1.80 ms | 1.64 ms | 0.91 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Globalization.Tests.StringHash*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Globalization.Tests.StringHash.GetHashCode(Count: 128, Options: (en-US, Ordinal)) ```log [ 717.918 ; 741.002) | @@@@@@@@@@@@@@@@ [ 741.002 ; 764.854) | @ [ 764.854 ; 787.938) | [ 787.938 ; 811.021) | [ 811.021 ; 834.105) | [ 834.105 ; 857.189) | [ 857.189 ; 880.273) | [ 880.273 ; 903.357) | [ 903.357 ; 926.441) | [ 926.441 ; 949.525) | [ 949.525 ; 972.609) | [ 972.609 ; 995.693) | [ 995.693 ; 1028.810) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1028.810 ; 1070.630) | @@@@@@ [1070.630 ; 1093.714) | [1093.714 ; 1116.798) | [1116.798 ; 1151.415) | [1151.415 ; 1197.760) | @ [1197.760 ; 1232.324) | @ ``` #### System.Globalization.Tests.StringHash.GetHashCode(Count: 131072, Options: (en-US, IgnoreCase)) ```log [1617371.974 ; 1671907.438) | @@@@@@@@@@@@@@@@@ [1671907.438 ; 1730554.548) | @ [1730554.548 ; 1773470.824) | [1773470.824 ; 1833102.645) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1833102.645 ; 1896213.515) | [1896213.515 ; 1947630.587) | @@ [1947630.587 ; 2009104.706) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Xml.Linq.Perf_XElement Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetValue]() | 770.00 ns | 645.56 ns | 0.84 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Xml.Linq.Perf_XElement*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Xml.Linq.Perf_XElement.GetValue ```log [640.690 ; 656.431) | @ [656.431 ; 680.511) | @@@@@@@@@@@@@@ [680.511 ; 701.698) | @@ [701.698 ; 728.703) | @ [728.703 ; 750.889) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [750.889 ; 778.591) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [778.591 ; 803.567) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [803.567 ; 827.652) | @@@@@@@ [827.652 ; 847.114) | [847.114 ; 867.869) | [867.869 ; 885.401) | @ [885.401 ; 912.380) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Security.Cryptography.Primitives.Tests.Performance.Perf_FixedTimeEquals Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [FixedTimeEquals_256Bit_VersusZero]() | 550.00 ns | 406.60 ns | 0.74 | | | [FixedTimeEquals_256Bit_LastBitDifferent]() | 550.33 ns | 406.78 ns | 0.74 | | | [FixedTimeEquals_256Bit_Equal]() | 550.49 ns | 407.27 ns | 0.74 | | | [FixedTimeEquals_256Bit_AllBitsDifferent]() | 549.73 ns | 406.82 ns | 0.74 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Security.Cryptography.Primitives.Tests.Performance.Perf_FixedTimeEquals*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Security.Cryptography.Primitives.Tests.Performance.Perf_FixedTimeEquals.FixedTimeEquals_256Bit_VersusZero ```log [397.102 ; 408.266) | @@@@@ [408.266 ; 419.270) | @@@@@@@@@@@@@ [419.270 ; 430.273) | [430.273 ; 441.277) | [441.277 ; 452.280) | [452.280 ; 463.284) | [463.284 ; 474.287) | [474.287 ; 485.291) | [485.291 ; 496.294) | [496.294 ; 507.298) | [507.298 ; 518.301) | [518.301 ; 529.305) | [529.305 ; 541.439) | @@@@ [541.439 ; 563.340) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [563.340 ; 581.069) | @@@@ [581.069 ; 592.807) | @ [592.807 ; 611.580) | @ ``` #### System.Security.Cryptography.Primitives.Tests.Performance.Perf_FixedTimeEquals.FixedTimeEquals_256Bit_LastBitDifferent ```log [399.682 ; 409.576) | @@@@@ [409.576 ; 423.727) | @@@@@@@@@@@ [423.727 ; 433.621) | [433.621 ; 450.247) | @ [450.247 ; 460.141) | [460.141 ; 470.035) | [470.035 ; 479.929) | [479.929 ; 489.823) | [489.823 ; 499.717) | [499.717 ; 509.611) | [509.611 ; 519.505) | [519.505 ; 529.399) | [529.399 ; 540.759) | @@@@ [540.759 ; 561.487) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [561.487 ; 585.439) | @@@@@ ``` #### System.Security.Cryptography.Primitives.Tests.Performance.Perf_FixedTimeEquals.FixedTimeEquals_256Bit_Equal ```log [400.128 ; 410.161) | @@@@ [410.161 ; 422.279) | @@@@@@@@@@@@ [422.279 ; 432.312) | [432.312 ; 442.345) | [442.345 ; 452.378) | [452.378 ; 462.411) | [462.411 ; 472.901) | [472.901 ; 482.934) | @ [482.934 ; 492.967) | [492.967 ; 503.000) | [503.000 ; 513.033) | [513.033 ; 523.066) | [523.066 ; 534.060) | [534.060 ; 551.308) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [551.308 ; 572.575) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [572.575 ; 589.497) | @@ [589.497 ; 604.869) | @ ``` #### System.Security.Cryptography.Primitives.Tests.Performance.Perf_FixedTimeEquals.FixedTimeEquals_256Bit_AllBitsDifferent ```log [399.527 ; 411.814) | @@@@@ [411.814 ; 422.472) | @@@@@@@@@@@ [422.472 ; 434.091) | @ [434.091 ; 444.748) | [444.748 ; 455.406) | [455.406 ; 466.064) | [466.064 ; 476.722) | [476.722 ; 487.379) | [487.379 ; 498.037) | [498.037 ; 508.695) | [508.695 ; 519.352) | [519.352 ; 530.010) | [530.010 ; 552.056) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [552.056 ; 563.878) | @@@@@@@@@@@@@@@@@@@@@@@@@ [563.878 ; 583.151) | @@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.LogicArray Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 3.67 secs | 3.12 secs | 0.85 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.LogicArray*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.LogicArray.Test ```log [3109158016.567 ; 3235814210.204) | @@@@@@@@@@@@@@@@@ [3235814210.204 ; 3362470403.840) | [3362470403.840 ; 3433338863.328) | [3433338863.328 ; 3566027341.224) | @ [3566027341.224 ; 3648362292.724) | [3648362292.724 ; 3782177776.751) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3782177776.751 ; 3924808929.816) | @@@@@@ [3924808929.816 ; 4082786666.504) | @ [4082786666.504 ; 4222236762.271) | @ [4222236762.271 ; 4348892955.907) | [4348892955.907 ; 4475549149.544) | [4475549149.544 ; 4602205343.181) | [4602205343.181 ; 4728861536.817) | [4728861536.817 ; 4855517730.454) | [4855517730.454 ; 4962802900.968) | [4962802900.968 ; 5063061545.432) | @ [5063061545.432 ; 5189717739.069) | [5189717739.069 ; 5316373932.705) | [5316373932.705 ; 5443030126.342) | [5443030126.342 ; 5569686319.978) | [5569686319.978 ; 5696342513.615) | [5696342513.615 ; 5923509894.476) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchF.SqMtx Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 6.60 secs | 4.04 secs | 0.61 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchF.SqMtx*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchF.SqMtx.Test ```log [3897530426.719 ; 4105977813.638) | @@@@@@@@@@@@@@@@@ [4105977813.638 ; 4297070062.103) | @ [4297070062.103 ; 4505517449.022) | [4505517449.022 ; 4713964835.942) | [4713964835.942 ; 4922412222.861) | [4922412222.861 ; 5130859609.781) | [5130859609.781 ; 5339306996.700) | [5339306996.700 ; 5547754383.620) | [5547754383.620 ; 5756201770.539) | [5756201770.539 ; 6006769296.940) | [6006769296.940 ; 6215216683.860) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6215216683.860 ; 6524684458.490) | @ [6524684458.490 ; 6768503784.627) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Tests.Perf_UInt16

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[Parse](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_UInt16.Parse(value%3a%20%2265535%22).html>) 255.42 ns 222.88 ns 0.87
[Parse](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_UInt16.Parse(value%3a%20%2212345%22).html>) 254.89 ns 227.77 ns 0.89
[TryParse](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_UInt16.TryParse(value%3a%20%2265535%22).html>) 295.21 ns 239.94 ns 0.81
[Parse](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_UInt16.Parse(value%3a%20%220%22).html>) 154.80 ns 137.92 ns 0.89

graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_UInt16*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_UInt16.Parse(value: "65535") ```log [220.288 ; 225.350) | @@ [225.350 ; 230.281) | @@ [230.281 ; 239.785) | @@@@@@@@@@@@@ [239.785 ; 246.730) | [246.730 ; 251.853) | @@@@@@@@@ [251.853 ; 261.266) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [261.266 ; 270.035) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [270.035 ; 275.616) | @@@@@@@@@@@@@@ [275.616 ; 282.252) | @@@@ [282.252 ; 296.027) | @@@@@@@@@ ``` #### System.Tests.Perf_UInt16.Parse(value: "12345") ```log [223.344 ; 230.867) | @@@@@@ [230.867 ; 238.491) | @@ [238.491 ; 247.596) | @@@@@@@ [247.596 ; 256.598) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [256.598 ; 263.816) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [263.816 ; 273.750) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [273.750 ; 281.407) | @@@@@@@@@@@@@ [281.407 ; 294.953) | @@@@@@@@@@@@ ``` #### System.Tests.Perf_UInt16.TryParse(value: "65535") ```log [225.090 ; 232.579) | @@@@@ [232.579 ; 239.212) | @@@@@@ [239.212 ; 245.415) | @@@@@ [245.415 ; 252.783) | @ [252.783 ; 261.007) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [261.007 ; 269.477) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [269.477 ; 275.130) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [275.130 ; 284.942) | @@@@@@@@@@@@@@@@@@@@@@@ [284.942 ; 295.056) | @@@@@@@@@@@@ [295.056 ; 307.990) | @@@ ``` #### System.Tests.Perf_UInt16.Parse(value: "0") ```log [135.915 ; 141.188) | @@@@@ [141.188 ; 144.321) | @@@@@ [144.321 ; 148.832) | @@@@@@@@@@@@@@@@@@@@ [148.832 ; 154.481) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [154.481 ; 158.035) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [158.035 ; 161.813) | @@@@@@@@@@@@@@@@@@@@ [161.813 ; 167.799) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [167.799 ; 172.021) | @@@@@@ [172.021 ; 181.205) | @@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SerializeToUtf8Bytes]() | 901.68 μs | 650.84 μs | 0.72 | | | [SerializeToString]() | 943.70 μs | 691.52 μs | 0.73 | | | [SerializeObjectProperty]() | 946.30 μs | 697.86 μs | 0.74 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToUtf8Bytes ```log [645166.875 ; 663010.639) | @@@@@@@@@@@@@@@@ [663010.639 ; 686480.653) | @ [686480.653 ; 704324.417) | [704324.417 ; 722168.181) | [722168.181 ; 740011.945) | [740011.945 ; 757855.710) | [757855.710 ; 775699.474) | [775699.474 ; 793543.238) | [793543.238 ; 811387.002) | [811387.002 ; 829230.766) | [829230.766 ; 847074.530) | [847074.530 ; 864918.294) | [864918.294 ; 902548.664) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [902548.664 ; 923771.654) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToString ```log [676130.287 ; 696262.772) | @@@@@@@@@@@@@@@@@ [696262.772 ; 722234.834) | @ [722234.834 ; 742367.319) | [742367.319 ; 762499.805) | [762499.805 ; 782632.290) | [782632.290 ; 802764.775) | [802764.775 ; 822897.260) | [822897.260 ; 843029.745) | [843029.745 ; 863162.231) | [863162.231 ; 883294.716) | [883294.716 ; 903427.201) | [903427.201 ; 926580.922) | @@@@@@@@@@@ [926580.922 ; 946713.408) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [946713.408 ; 969242.530) | @@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.WriteJson.SerializeObjectProperty ```log [685888.924 ; 704998.858) | @@@@@@@@@@@@@@@@@@ [704998.858 ; 724108.793) | [724108.793 ; 743218.727) | [743218.727 ; 762328.662) | [762328.662 ; 781438.597) | [781438.597 ; 800548.531) | [800548.531 ; 819658.466) | [819658.466 ; 838768.400) | [838768.400 ; 857878.335) | [857878.335 ; 876988.270) | [876988.270 ; 896098.204) | [896098.204 ; 932002.440) | @@@@@@@@@@@@@@@@@@@@@ [932002.440 ; 951112.375) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [951112.375 ; 985976.492) | @@@@@@@@@@@@@@@@@@@ [985976.492 ; 1042624.689) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.TryGetValueTrue<String, String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ConcurrentDictionary]() | 185.12 μs | 142.22 μs | 0.77 | | | [Dictionary]() | 195.00 μs | 144.29 μs | 0.74 | | | [IDictionary]() | 197.82 μs | 147.90 μs | 0.75 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.TryGetValueTrue<String, String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.TryGetValueTrue.ConcurrentDictionary(Size: 512) ```log [138570.578 ; 141617.198) | @@ [141617.198 ; 144721.451) | @@@@@@@@@@@ [144721.451 ; 148275.454) | @@@@ [148275.454 ; 151379.707) | @ [151379.707 ; 154483.960) | [154483.960 ; 157588.213) | [157588.213 ; 160692.467) | [160692.467 ; 163796.720) | [163796.720 ; 166900.973) | [166900.973 ; 170005.226) | [170005.226 ; 175359.178) | @@@@@@@@@@@@@@@@ [175359.178 ; 182338.243) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [182338.243 ; 186832.524) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [186832.524 ; 191393.791) | @@@@@@ [191393.791 ; 197602.298) | [197602.298 ; 203810.804) | [203810.804 ; 212927.750) | @ ``` #### System.Collections.TryGetValueTrue.Dictionary(Size: 512) ```log [141421.825 ; 145519.114) | @@@@@@@@@@@@@@@@@ [145519.114 ; 149219.478) | [149219.478 ; 153316.767) | @ [153316.767 ; 157414.055) | [157414.055 ; 161511.344) | [161511.344 ; 165608.633) | [165608.633 ; 169705.922) | [169705.922 ; 173803.210) | [173803.210 ; 177900.499) | [177900.499 ; 181997.788) | [181997.788 ; 187016.006) | @@@@@@@@@@@@@@@@@@ [187016.006 ; 191113.294) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [191113.294 ; 198139.432) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [198139.432 ; 202283.912) | @@@@@@@@@@@@@@@@@@ [202283.912 ; 206737.541) | @@@@@@@ [206737.541 ; 211217.639) | @@ [211217.639 ; 220880.058) | @@@@@ ``` #### System.Collections.TryGetValueTrue.IDictionary(Size: 512) ```log [144723.707 ; 148774.337) | @@@@@@@@@@@@@@@ [148774.337 ; 155103.310) | @@ [155103.310 ; 159153.940) | [159153.940 ; 163204.570) | [163204.570 ; 167255.200) | [167255.200 ; 171305.830) | [171305.830 ; 175356.460) | [175356.460 ; 179407.091) | [179407.091 ; 183457.721) | [183457.721 ; 188909.977) | @@@@@@@@@@@@@@@@@ [188909.977 ; 192960.607) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [192960.607 ; 197257.375) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [197257.375 ; 201760.343) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [201760.343 ; 206572.469) | @@@@@@@@@@@@@@@ [206572.469 ; 218464.846) | @@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchF.Regula Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 1.92 secs | 1.58 secs | 0.82 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchF.Regula*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchF.Regula.Test ```log [1575230646.295 ; 1619027286.657) | @@@@@@@@@@@@ [1619027286.657 ; 1682059602.913) | @@@@@@ [1682059602.913 ; 1742708991.520) | [1742708991.520 ; 1803358380.127) | [1803358380.127 ; 1864007768.733) | [1864007768.733 ; 1903686483.723) | [1903686483.723 ; 1980551296.073) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1980551296.073 ; 2039131171.440) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2039131171.440 ; 2090627665.319) | @@@@@@@@@@@@@@@ [2090627665.319 ; 2133992295.418) | @@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.IO.Pipes.Tests.Perf_NamedPipeStream_ServerOut_ClientIn Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ReadWrite]() | 183.41 μs | 166.01 μs | 0.91 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.IO.Pipes.Tests.Perf_NamedPipeStream_ServerOut_ClientIn*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.IO.Pipes.Tests.Perf_NamedPipeStream_ServerOut_ClientIn.ReadWrite(size: 1000000) ```log [165332.415 ; 170767.297) | @@@@@@@@@@@@@@@@ [170767.297 ; 175126.442) | @@ [175126.442 ; 180936.544) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [180936.544 ; 184876.472) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [184876.472 ; 190141.181) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Memory.Constructors<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SpanFromMemory]() | 54.31 ns | 40.31 ns | 0.74 | | | [MemoryMarshalCreateSpan]() | 16.11 ns | 12.47 ns | 0.77 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Memory.Constructors<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.Constructors.SpanFromMemory ```log [38.500 ; 39.659) | @@ [39.659 ; 40.993) | @@@@@@@@@@@@@@ [40.993 ; 42.301) | @@ [42.301 ; 43.635) | [43.635 ; 44.969) | [44.969 ; 46.303) | [46.303 ; 47.637) | [47.637 ; 48.971) | [48.971 ; 50.304) | [50.304 ; 51.468) | [51.468 ; 52.655) | @@@@@@@@ [52.655 ; 53.989) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [53.989 ; 55.513) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [55.513 ; 56.847) | @@@@@@@@@@@@@@@@@@@@@@ [56.847 ; 58.420) | @@@@@@@ [58.420 ; 59.754) | @@@@@@@@ [59.754 ; 61.912) | @@ [61.912 ; 63.312) | @ [63.312 ; 65.046) | [65.046 ; 66.551) | @@ [66.551 ; 67.900) | @@ ``` #### System.Memory.Constructors.MemoryMarshalCreateSpan ```log [11.739 ; 12.092) | @@@@@@@@ [12.092 ; 12.386) | [12.386 ; 12.739) | @@@@@@@@ [12.739 ; 13.307) | @ [13.307 ; 13.660) | [13.660 ; 14.012) | [14.012 ; 14.581) | @ [14.581 ; 15.034) | @@@@ [15.034 ; 15.444) | @@@@@@@@@@@@ [15.444 ; 16.084) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [16.084 ; 16.437) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [16.437 ; 16.809) | @@@@@@@@@@@@@ [16.809 ; 17.237) | @@@@ [17.237 ; 17.633) | [17.633 ; 18.074) | @@@ [18.074 ; 18.493) | @@@ [18.493 ; 18.867) | @ [18.867 ; 19.533) | [19.533 ; 20.281) | @ [20.281 ; 20.986) | [20.986 ; 21.691) | [21.691 ; 22.396) | [22.396 ; 23.340) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.MathBenchmarks.Single Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Pow]() | 127.12 μs | 83.87 μs | 0.66 | | | [Acosh]() | 119.68 μs | 88.75 μs | 0.74 | | | [Sinh]() | 169.39 μs | 111.54 μs | 0.66 | | | [Tan]() | 128.02 μs | 90.97 μs | 0.71 | | | [Tanh]() | 176.33 μs | 116.52 μs | 0.66 | | | [Asin]() | 86.36 μs | 60.90 μs | 0.71 | | | [Cos]() | 83.58 μs | 60.41 μs | 0.72 | | | [Sqrt]() | 54.45 μs | 35.68 μs | 0.66 | | | [Sin]() | 75.66 μs | 56.41 μs | 0.75 | | | [Cosh]() | 106.35 μs | 76.06 μs | 0.72 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.MathBenchmarks.Single*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.MathBenchmarks.Single.Pow ```log [ 82451.644 ; 86024.129) | @@@@@@@@@@@@@@@@@ [ 86024.129 ; 90964.828) | @ [ 90964.828 ; 94537.313) | [ 94537.313 ; 98109.798) | [ 98109.798 ; 101682.283) | [101682.283 ; 105254.768) | [105254.768 ; 108827.253) | [108827.253 ; 112399.738) | [112399.738 ; 115972.223) | [115972.223 ; 119544.708) | [119544.708 ; 123117.193) | [123117.193 ; 126319.379) | [126319.379 ; 129891.864) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [129891.864 ; 133464.348) | [133464.348 ; 137036.833) | [137036.833 ; 140609.318) | [140609.318 ; 143802.345) | [143802.345 ; 147374.830) | @ [147374.830 ; 150947.314) | [150947.314 ; 154519.799) | [154519.799 ; 158092.284) | [158092.284 ; 163164.490) | [163164.490 ; 166736.975) | @ ``` #### System.MathBenchmarks.Single.Acosh ```log [ 87314.096 ; 89649.581) | @@@@@@@@@@@@@@@@@@ [ 89649.581 ; 91985.067) | [ 91985.067 ; 94320.552) | [ 94320.552 ; 96656.038) | [ 96656.038 ; 98991.523) | [ 98991.523 ; 101327.009) | [101327.009 ; 103662.494) | [103662.494 ; 105997.980) | [105997.980 ; 108333.465) | [108333.465 ; 110668.951) | [110668.951 ; 113004.436) | [113004.436 ; 115339.922) | [115339.922 ; 117710.527) | [117710.527 ; 121541.907) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [121541.907 ; 126165.951) | @ [126165.951 ; 133235.566) | @ ``` #### System.MathBenchmarks.Single.Sinh ```log [109434.269 ; 114069.584) | @@@@@@@@@@@@@@@@@ [114069.584 ; 119169.740) | @ [119169.740 ; 123805.055) | [123805.055 ; 128440.370) | [128440.370 ; 133075.685) | [133075.685 ; 137711.000) | [137711.000 ; 142346.315) | [142346.315 ; 146981.630) | [146981.630 ; 151616.945) | [151616.945 ; 156252.260) | [156252.260 ; 160887.575) | [160887.575 ; 165522.890) | [165522.890 ; 168677.981) | [168677.981 ; 173313.296) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [173313.296 ; 177828.475) | @@@@@@ ``` #### System.MathBenchmarks.Single.Tan ```log [ 90564.116 ; 93478.047) | @@@@@@@@@@@@@@@@@@ [ 93478.047 ; 96391.979) | [ 96391.979 ; 99305.910) | [ 99305.910 ; 102219.842) | [102219.842 ; 105133.773) | [105133.773 ; 108047.705) | [108047.705 ; 110961.636) | [110961.636 ; 113875.568) | [113875.568 ; 116789.499) | [116789.499 ; 119703.431) | [119703.431 ; 122617.362) | [122617.362 ; 126330.064) | [126330.064 ; 131497.950) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.MathBenchmarks.Single.Tanh ```log [113887.246 ; 118877.903) | @@@@@@@@@@@@@@@@@@ [118877.903 ; 123633.361) | [123633.361 ; 128388.819) | [128388.819 ; 133144.277) | [133144.277 ; 137899.735) | [137899.735 ; 142655.193) | [142655.193 ; 147410.651) | [147410.651 ; 152166.109) | [152166.109 ; 156921.567) | [156921.567 ; 161677.025) | [161677.025 ; 166432.483) | [166432.483 ; 171187.941) | [171187.941 ; 174169.987) | [174169.987 ; 178925.445) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [178925.445 ; 184393.123) | @@@@@@ ``` #### System.MathBenchmarks.Single.Asin ```log [60656.060 ; 62284.231) | @@@@@@@@@@@@@@@@@@ [62284.231 ; 63912.401) | [63912.401 ; 65540.572) | [65540.572 ; 67168.742) | [67168.742 ; 68796.913) | [68796.913 ; 70425.083) | [70425.083 ; 72053.254) | [72053.254 ; 73681.425) | [73681.425 ; 75309.595) | [75309.595 ; 76937.766) | [76937.766 ; 78565.936) | [78565.936 ; 80194.107) | [80194.107 ; 81983.433) | [81983.433 ; 84546.058) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [84546.058 ; 87951.888) | @@@@@@@@@@@@@@@ ``` #### System.MathBenchmarks.Single.Cos ```log [60029.319 ; 61586.642) | @@@@@@@@@@@@@@@@@@ [61586.642 ; 63143.966) | [63143.966 ; 64701.290) | [64701.290 ; 66258.613) | [66258.613 ; 67815.937) | [67815.937 ; 69373.261) | [69373.261 ; 70930.584) | [70930.584 ; 72487.908) | [72487.908 ; 74045.231) | [74045.231 ; 75602.555) | [75602.555 ; 77159.879) | [77159.879 ; 79691.352) | [79691.352 ; 81883.325) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [81883.325 ; 84459.465) | @@@@@@@@@@@@ [84459.465 ; 87232.796) | [87232.796 ; 91670.924) | @@@@@ ``` #### System.MathBenchmarks.Single.Sqrt ```log [35252.012 ; 36729.017) | @@@@@@@@@@@@@@@@@ [36729.017 ; 38185.750) | [38185.750 ; 39662.755) | @ [39662.755 ; 41139.760) | [41139.760 ; 42616.765) | [42616.765 ; 44093.770) | [44093.770 ; 45570.775) | [45570.775 ; 47047.780) | [47047.780 ; 48524.785) | [48524.785 ; 50001.790) | [50001.790 ; 51478.794) | [51478.794 ; 52955.799) | [52955.799 ; 54254.125) | [54254.125 ; 55731.130) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [55731.130 ; 58111.334) | @@@@ [58111.334 ; 59588.339) | [59588.339 ; 61759.148) | [61759.148 ; 63236.153) | @ ``` #### System.MathBenchmarks.Single.Sin ```log [56150.781 ; 57724.449) | @@@@@@@@@@@@@@@@@@ [57724.449 ; 59298.118) | [59298.118 ; 60871.787) | [60871.787 ; 62445.456) | [62445.456 ; 64019.125) | [64019.125 ; 65592.794) | [65592.794 ; 67166.463) | [67166.463 ; 68740.132) | [68740.132 ; 70313.801) | [70313.801 ; 71887.470) | [71887.470 ; 73461.138) | [73461.138 ; 75080.971) | [75080.971 ; 76654.640) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [76654.640 ; 78532.894) | @@@ [78532.894 ; 81693.086) | @@@@ [81693.086 ; 86163.730) | @@ ``` #### System.MathBenchmarks.Single.Cosh ```log [ 75441.809 ; 77726.615) | @@@@@@@@@@@@@@@@@ [ 77726.615 ; 80299.875) | @ [ 80299.875 ; 82584.681) | [ 82584.681 ; 84869.487) | [ 84869.487 ; 87154.293) | [ 87154.293 ; 89439.099) | [ 89439.099 ; 91723.905) | [ 91723.905 ; 94008.712) | [ 94008.712 ; 96293.518) | [ 96293.518 ; 98578.324) | [ 98578.324 ; 100863.130) | [100863.130 ; 103147.936) | [103147.936 ; 104917.744) | [104917.744 ; 107202.550) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [107202.550 ; 111388.409) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [111388.409 ; 115155.634) | @@ [115155.634 ; 117835.610) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.RegularExpressions.Tests.Perf_Regex_Common Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Uri_IsNotMatch]() | 9.21 μs | 7.81 μs | 0.85 | | | [MatchesWord]() | 39.05 μs | 27.51 μs | 0.70 | | | [MatchesWord]() | 39.95 μs | 26.87 μs | 0.67 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.RegularExpressions.Tests.Perf_Regex_Common*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.RegularExpressions.Tests.Perf_Regex_Common.Uri_IsNotMatch(Options: IgnoreCase, Compiled) ```log [7410.657 ; 7684.719) | @@@@@@@@@@@@@ [7684.719 ; 7944.556) | @@@@@ [7944.556 ; 8203.917) | [8203.917 ; 8457.952) | @@@@@@@@@@@@@@@@@@@@@@@@ [8457.952 ; 8798.355) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8798.355 ; 9097.863) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9097.863 ; 9313.899) | @@@@@@ ``` #### System.Text.RegularExpressions.Tests.Perf_Regex_Common.MatchesWord(Options: None) ```log [25328.533 ; 26034.110) | @@@ [26034.110 ; 26913.018) | @@@@@@@@@@@@@@ [26913.018 ; 27945.708) | @ [27945.708 ; 28824.617) | [28824.617 ; 29703.526) | [29703.526 ; 30582.434) | [30582.434 ; 31461.343) | [31461.343 ; 32340.252) | [32340.252 ; 33219.160) | [33219.160 ; 34098.069) | [34098.069 ; 34976.978) | [34976.978 ; 35855.886) | [35855.886 ; 37082.056) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [37082.056 ; 37960.965) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [37960.965 ; 38843.842) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [38843.842 ; 40443.600) | @@@@@@@@@@@@ [40443.600 ; 41708.050) | @ ``` #### System.Text.RegularExpressions.Tests.Perf_Regex_Common.MatchesWord(Options: Compiled) ```log [25130.048 ; 25992.868) | @@@ [25992.868 ; 26885.489) | @@@@@@@@@@@@@ [26885.489 ; 27433.076) | @@ [27433.076 ; 28325.696) | [28325.696 ; 29218.316) | [29218.316 ; 30110.936) | [30110.936 ; 31003.556) | [31003.556 ; 31896.176) | [31896.176 ; 32788.796) | [32788.796 ; 33681.416) | [33681.416 ; 34574.037) | [34574.037 ; 35466.657) | [35466.657 ; 36226.943) | [36226.943 ; 36974.595) | @@@@@@@@@@@@@ [36974.595 ; 37867.215) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [37867.215 ; 38781.463) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [38781.463 ; 39662.925) | @@@@@@@@@@@@@ [39662.925 ; 40720.479) | @ [40720.479 ; 41613.099) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<Dictionary<String, String>> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromUtf8Bytes]() | 498.52 μs | 324.75 μs | 0.65 | | | [DeserializeFromString]() | 573.01 μs | 390.33 μs | 0.68 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<Dictionary<String, String>>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson>.DeserializeFromUtf8Bytes ```log [313376.510 ; 326511.955) | @@@@@@@@@@@@@@@@ [326511.955 ; 339993.929) | @@ [339993.929 ; 353129.373) | [353129.373 ; 366264.818) | [366264.818 ; 379400.262) | [379400.262 ; 392535.706) | [392535.706 ; 405671.150) | [405671.150 ; 418806.594) | [418806.594 ; 431942.039) | [431942.039 ; 445077.483) | [445077.483 ; 458212.927) | [458212.927 ; 474378.666) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [474378.666 ; 487514.110) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [487514.110 ; 500553.162) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [500553.162 ; 511888.615) | @@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson>.DeserializeFromString ```log [371688.270 ; 388237.710) | @@ [388237.710 ; 402404.713) | @@@@@@@@@@@@@@@ [402404.713 ; 416571.716) | [416571.716 ; 430738.720) | [430738.720 ; 444905.723) | [444905.723 ; 459072.726) | [459072.726 ; 473239.729) | [473239.729 ; 487406.733) | [487406.733 ; 501573.736) | [501573.736 ; 515740.739) | [515740.739 ; 529907.743) | [529907.743 ; 544074.746) | [544074.746 ; 562417.096) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [562417.096 ; 576584.099) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [576584.099 ; 590813.700) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [590813.700 ; 605048.981) | @@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in Microsoft.Extensions.Primitives.StringSegmentBenchmark

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[EndsWith](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/Microsoft.Extensions.Primitives.StringSegmentBenchmark.EndsWith.html>) 196.43 ns 147.99 ns 0.75
[Equals_Valid](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/Microsoft.Extensions.Primitives.StringSegmentBenchmark.Equals_Valid.html>) 77.15 ns 67.69 ns 0.88
[StartsWith](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/Microsoft.Extensions.Primitives.StringSegmentBenchmark.StartsWith.html>) 200.17 ns 154.22 ns 0.77
[SubSegment](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/Microsoft.Extensions.Primitives.StringSegmentBenchmark.SubSegment.html>) 67.64 ns 47.08 ns 0.70

graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Microsoft.Extensions.Primitives.StringSegmentBenchmark*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Microsoft.Extensions.Primitives.StringSegmentBenchmark.EndsWith ```log [140.591 ; 143.756) | @ [143.756 ; 147.315) | @@@@@@@@@@@ [147.315 ; 150.453) | @@@ [150.453 ; 155.865) | [155.865 ; 159.424) | @@@ [159.424 ; 162.982) | [162.982 ; 166.541) | [166.541 ; 172.583) | @@@@@@@@ [172.583 ; 176.142) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [176.142 ; 180.404) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [180.404 ; 184.877) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [184.877 ; 192.340) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [192.340 ; 197.547) | @@@@@@@@ [197.547 ; 202.093) | @@@@@ [202.093 ; 212.516) | @@ ``` #### Microsoft.Extensions.Primitives.StringSegmentBenchmark.Equals_Valid ```log [65.166 ; 67.841) | @@@@@@@@@@@@@ [67.841 ; 69.773) | @@@ [69.773 ; 72.163) | [72.163 ; 74.658) | @@@@@@@@@@@@@@@ [74.658 ; 77.554) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [77.554 ; 80.398) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [80.398 ; 82.465) | @@ [82.465 ; 84.396) | @@@@@@@ [84.396 ; 87.251) | @@@@@@@@ [87.251 ; 89.636) | @@ [89.636 ; 91.447) | @ [91.447 ; 93.810) | [93.810 ; 97.728) | @ ``` #### Microsoft.Extensions.Primitives.StringSegmentBenchmark.StartsWith ```log [144.920 ; 149.400) | @@@@@@@ [149.400 ; 153.215) | @@ [153.215 ; 159.704) | @@@@@ [159.704 ; 163.088) | @@ [163.088 ; 167.868) | @ [167.868 ; 171.252) | [171.252 ; 177.340) | @@@@@@@@ [177.340 ; 184.528) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [184.528 ; 190.488) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [190.488 ; 198.230) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [198.230 ; 203.499) | @@@@@@@@@ [203.499 ; 210.147) | @@ [210.147 ; 219.077) | @ ``` #### Microsoft.Extensions.Primitives.StringSegmentBenchmark.SubSegment ```log [45.798 ; 46.810) | @@@@@@@@@@@@@ [46.810 ; 47.919) | @@@ [47.919 ; 49.361) | @ [49.361 ; 50.373) | [50.373 ; 51.906) | [51.906 ; 54.010) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [54.010 ; 56.149) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [56.149 ; 57.506) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [57.506 ; 59.665) | @@@@@@@@@@@ [59.665 ; 61.998) | @ [61.998 ; 64.369) | @@@ [64.369 ; 66.601) | [66.601 ; 69.310) | @@ [69.310 ; 70.774) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Tests.Perf_Base64 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [WriteByteArrayAsBase64_NoEscaping]() | 32.32 μs | 21.88 μs | 0.68 | | | [WriteByteArrayAsBase64_NoEscaping]() | 4.74 μs | 3.15 μs | 0.66 | | | [WriteByteArrayAsBase64_HeavyEscaping]() | 32.37 μs | 22.15 μs | 0.68 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Perf_Base64*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Base64.WriteByteArrayAsBase64_NoEscaping(NumberOfBytes: 1000) ```log [21143.498 ; 21676.317) | @ [21676.317 ; 22492.240) | @@@@@@@@@@@@@@@ [22492.240 ; 23021.542) | @ [23021.542 ; 23837.464) | [23837.464 ; 24653.387) | [24653.387 ; 25469.309) | [25469.309 ; 26285.231) | [26285.231 ; 27101.153) | [27101.153 ; 27917.075) | [27917.075 ; 28732.998) | [28732.998 ; 29548.920) | [29548.920 ; 30521.095) | [30521.095 ; 31780.456) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [31780.456 ; 32605.965) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [32605.965 ; 33430.336) | @@@@@@@@@@@@ [33430.336 ; 34553.334) | @@@@@@@@@ [34553.334 ; 35958.473) | @@ [35958.473 ; 36814.054) | @ ``` #### System.Text.Json.Tests.Perf_Base64.WriteByteArrayAsBase64_NoEscaping(NumberOfBytes: 100) ```log [2950.850 ; 3041.155) | @@ [3041.155 ; 3165.976) | @@@@@@@@@@@@@@ [3165.976 ; 3258.372) | @ [3258.372 ; 3383.193) | @ [3383.193 ; 3508.015) | [3508.015 ; 3632.836) | [3632.836 ; 3757.658) | [3757.658 ; 3882.479) | [3882.479 ; 4007.301) | [4007.301 ; 4132.122) | [4132.122 ; 4256.944) | [4256.944 ; 4339.207) | [4339.207 ; 4438.869) | @@@@ [4438.869 ; 4562.595) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4562.595 ; 4687.417) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4687.417 ; 4812.202) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4812.202 ; 4937.573) | @@@@@@@ ``` #### System.Text.Json.Tests.Perf_Base64.WriteByteArrayAsBase64_HeavyEscaping(NumberOfBytes: 1000) ```log [21477.803 ; 22380.432) | @@@@@@@@@@@@@@@ [22380.432 ; 23179.550) | @ [23179.550 ; 23848.497) | [23848.497 ; 24647.616) | @ [24647.616 ; 25446.734) | [25446.734 ; 26245.853) | [26245.853 ; 27044.971) | [27044.971 ; 27844.089) | [27844.089 ; 28643.208) | [28643.208 ; 29442.326) | [29442.326 ; 30241.445) | [30241.445 ; 30982.196) | @@@ [30982.196 ; 31781.314) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [31781.314 ; 32802.514) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [32802.514 ; 33744.230) | @@@@@@ [33744.230 ; 35141.563) | @@@@@ [35141.563 ; 36504.316) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Net.Http.Tests.SocketsHttpHandlerPerfTest Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Get]() | 383.55 μs | 330.26 μs | 0.86 | | | [Get]() | 190.75 μs | 165.83 μs | 0.87 | | | [Get]() | 194.03 μs | 168.42 μs | 0.87 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Net.Http.Tests.SocketsHttpHandlerPerfTest*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get(ssl: False, chunkedResponse: True, responseLength: 100000) ```log [323737.188 ; 336805.853) | @@@@@@@@@@@@@@@@@ [336805.853 ; 345101.423) | @ [345101.423 ; 352870.753) | [352870.753 ; 362753.113) | [362753.113 ; 374273.084) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [374273.084 ; 395050.848) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get(ssl: False, chunkedResponse: True, responseLength: 1) ```log [164946.484 ; 171412.869) | @@@@@@@ [171412.869 ; 177526.472) | @@@@@@@@@@@@@ [177526.472 ; 181565.931) | @@@@@@@@@@@@@@ [181565.931 ; 188315.584) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [188315.584 ; 195816.869) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [195816.869 ; 202948.850) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [202948.850 ; 209299.434) | @@@@@@@@@@@ ``` #### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get(ssl: False, chunkedResponse: False, responseLength: 1) ```log [159696.157 ; 165258.953) | @@@@ [165258.953 ; 170567.187) | @@@@@@ [170567.187 ; 175565.221) | @@@@@@@@@@@@@@@@@@ [175565.221 ; 180260.150) | @@@@@@@@@@@@@@@@@@@@@@@@ [180260.150 ; 187165.183) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [187165.183 ; 191065.958) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [191065.958 ; 197859.298) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [197859.298 ; 205917.520) | @@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in GuardedDevirtualization.TwoClassVirtual Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Call]() | 21.57 ns | 18.15 ns | 0.84 | | | [Call]() | 21.64 ns | 18.09 ns | 0.84 | | | [Call]() | 21.64 ns | 18.12 ns | 0.84 | | | [Call]() | 22.39 ns | 18.00 ns | 0.80 | | | [Call]() | 23.04 ns | 18.82 ns | 0.82 | | | [Call]() | 21.63 ns | 18.12 ns | 0.84 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'GuardedDevirtualization.TwoClassVirtual*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### GuardedDevirtualization.TwoClassVirtual.Call(testInput: pB = 1.00) ```log [17.897 ; 18.271) | @@@ [18.271 ; 18.706) | @@@@@@@@@@ [18.706 ; 19.403) | @@@@ [19.403 ; 20.147) | @ [20.147 ; 20.785) | [20.785 ; 21.434) | @@@ [21.434 ; 21.943) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [21.943 ; 22.794) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.794 ; 23.673) | @@@@@@@@@@ [23.673 ; 24.449) | @@@ [24.449 ; 25.261) | @@@@ [25.261 ; 26.186) | @ ``` #### GuardedDevirtualization.TwoClassVirtual.Call(testInput: pB = 0.30) ```log [17.936 ; 18.341) | @@@ [18.341 ; 19.049) | @@@@@@@@@@@@ [19.049 ; 19.678) | @@ [19.678 ; 20.307) | [20.307 ; 20.936) | [20.936 ; 21.474) | @@@@@ [21.474 ; 22.288) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.288 ; 23.088) | @@@@@@@@@@@@@@@@@@@@@@@@@ [23.088 ; 23.681) | @@@@@@@@@@@ [23.681 ; 24.289) | @@@@ [24.289 ; 24.918) | @@ [24.918 ; 25.870) | @@ ``` #### GuardedDevirtualization.TwoClassVirtual.Call(testInput: pB = 0.40) ```log [17.853 ; 18.483) | @@@@@@@@@ [18.483 ; 19.107) | @@@@@ [19.107 ; 19.686) | @@@@ [19.686 ; 20.449) | [20.449 ; 21.209) | [21.209 ; 21.929) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [21.929 ; 22.771) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.771 ; 23.627) | @@@@@@@@@@@@@ [23.627 ; 24.279) | @@@@ [24.279 ; 24.818) | @@ [24.818 ; 25.581) | [25.581 ; 26.343) | [26.343 ; 27.106) | [27.106 ; 27.868) | [27.868 ; 28.630) | [28.630 ; 29.393) | [29.393 ; 30.280) | @ [30.280 ; 31.042) | [31.042 ; 32.047) | @ ``` #### GuardedDevirtualization.TwoClassVirtual.Call(testInput: pB = 0.20) ```log [17.910 ; 18.377) | @@@ [18.377 ; 18.994) | @@@@@@@@@@@@@ [18.994 ; 19.622) | @ [19.622 ; 20.168) | @ [20.168 ; 20.836) | [20.836 ; 21.479) | @@@@ [21.479 ; 22.363) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.363 ; 23.159) | @@@@@@@@@@@@@@@@@@@@@@ [23.159 ; 23.677) | @@@@@@@@@@@@ [23.677 ; 24.512) | @@@@ [24.512 ; 25.682) | @@@ ``` #### GuardedDevirtualization.TwoClassVirtual.Call(testInput: pB = 0.50) ```log [17.967 ; 18.342) | @@@ [18.342 ; 19.040) | @@@@@@@@@@@@ [19.040 ; 19.661) | @@ [19.661 ; 20.238) | [20.238 ; 20.815) | [20.815 ; 21.445) | @@ [21.445 ; 22.275) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.275 ; 23.009) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.009 ; 23.908) | @@@@@@@@ [23.908 ; 24.789) | @@@@ ``` #### GuardedDevirtualization.TwoClassVirtual.Call(testInput: pB = 0.90) ```log [17.948 ; 18.440) | @@@@ [18.440 ; 19.202) | @@@@@@@@@@ [19.202 ; 19.691) | @@@@ [19.691 ; 20.359) | [20.359 ; 21.026) | [21.026 ; 21.462) | @@ [21.462 ; 22.155) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.155 ; 22.762) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.762 ; 23.256) | @@@@@@@@@@@@@@@@@@ [23.256 ; 23.964) | @@@@@@@@ [23.964 ; 24.978) | @@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in PerfLabTests.LowLevelPerf Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [TypeReflectionObjectGetType]() | 848.84 μs | 730.68 μs | 0.86 | | | [SealedClassInterfaceMethod]() | 2.33 ms | 2.07 ms | 0.89 | | | [GenericClassGenericInstanceMethod]() | 1.88 ms | 1.65 ms | 0.88 | | | [GenericClassWithIntGenericInstanceField]() | 739.38 μs | 642.49 μs | 0.87 | | | [InterfaceInterfaceMethodLongHierarchy]() | 2.59 ms | 2.28 ms | 0.88 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'PerfLabTests.LowLevelPerf*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### PerfLabTests.LowLevelPerf.TypeReflectionObjectGetType ```log [722436.456 ; 750931.386) | @@@@@@@@@@@@@@@@ [750931.386 ; 775367.308) | @ [775367.308 ; 802686.801) | @ [802686.801 ; 825997.815) | [825997.815 ; 842985.576) | [842985.576 ; 864046.754) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [864046.754 ; 896310.590) | @@@@@@@@@@@@@@ [896310.590 ; 921450.589) | @@@ [921450.589 ; 949227.533) | @ [949227.533 ; 985331.546) | @@@ [985331.546 ; 1024466.630) | @@ ``` #### PerfLabTests.LowLevelPerf.SealedClassInterfaceMethod ```log [2037359.779 ; 2119078.042) | @@@@@@@@@@@@@@@ [2119078.042 ; 2169602.441) | @ [2169602.441 ; 2231157.983) | @@ [2231157.983 ; 2288036.230) | [2288036.230 ; 2355308.170) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2355308.170 ; 2424108.348) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2424108.348 ; 2513192.880) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2513192.880 ; 2639724.907) | @@@@@@@@@@@@@ ``` #### PerfLabTests.LowLevelPerf.GenericClassGenericInstanceMethod ```log [1634774.025 ; 1693683.005) | @@@@@@@@@@@@@@@ [1693683.005 ; 1740132.409) | @ [1740132.409 ; 1802705.158) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1802705.158 ; 1857521.979) | @@@@@@@@@@@@@@@@@@@ [1857521.979 ; 1918932.026) | @@@@@@@@@@@@ [1918932.026 ; 1961380.995) | @@@ [1961380.995 ; 2035506.443) | @@ [2035506.443 ; 2094561.920) | [2094561.920 ; 2153617.397) | [2153617.397 ; 2212672.874) | [2212672.874 ; 2271728.351) | [2271728.351 ; 2365689.938) | @ ``` #### PerfLabTests.LowLevelPerf.GenericClassWithIntGenericInstanceField ```log [638345.150 ; 655225.077) | @@@@@@ [655225.077 ; 675393.432) | [675393.432 ; 695227.937) | @@@@@@@@@@ [695227.937 ; 719626.025) | @ [719626.025 ; 747469.167) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [747469.167 ; 772539.604) | @@@@@@@@@@@ [772539.604 ; 795757.957) | @@@@@ [795757.957 ; 814328.538) | [814328.538 ; 840419.678) | @ ``` #### PerfLabTests.LowLevelPerf.InterfaceInterfaceMethodLongHierarchy ```log [2163625.082 ; 2234262.126) | @@@@@ [2234262.126 ; 2310459.828) | @@@@@@@@@@ [2310459.828 ; 2370260.801) | @@ [2370260.801 ; 2450026.294) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2450026.294 ; 2548868.468) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2548868.468 ; 2639883.967) | @@@@@@@@@@@@@@@@@@@@@@@@ [2639883.967 ; 2703231.499) | @@@@@ [2703231.499 ; 2818297.711) | @@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Perf_Convert Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [FromBase64Chars]() | 2.06 μs | 1.27 μs | 0.62 | | | [ToBase64CharArray]() | 35.28 μs | 30.47 μs | 0.86 | | | [ToDateTime_String]() | 8.40 μs | 6.71 μs | 0.80 | | | [FromBase64String]() | 1.75 μs | 1.27 μs | 0.72 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Perf_Convert*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Perf_Convert.FromBase64Chars ```log [1241.030 ; 1298.556) | @@@@@@@@@@@@@@@@ [1298.556 ; 1358.409) | @@ [1358.409 ; 1395.316) | [1395.316 ; 1432.223) | [1432.223 ; 1469.130) | [1469.130 ; 1506.037) | [1506.037 ; 1542.944) | [1542.944 ; 1579.851) | [1579.851 ; 1616.757) | [1616.757 ; 1671.576) | @@@@@@@@@@@@@@@@@@ [1671.576 ; 1708.483) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1708.483 ; 1745.109) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1745.109 ; 1783.202) | @@@@@@@@@@@@@@@@@@@@ [1783.202 ; 1821.819) | @@@@@@@@@@@@@@@ [1821.819 ; 1890.057) | @@@ [1890.057 ; 1926.964) | [1926.964 ; 1963.871) | [1963.871 ; 2074.112) | @ ``` #### System.Perf_Convert.ToBase64CharArray(binaryDataSize: 1024, formattingOptions: InsertLineBreaks) ```log [30257.054 ; 31511.801) | @@@@@@@@@@@@@@@@ [31511.801 ; 32564.346) | @@ [32564.346 ; 33673.080) | [33673.080 ; 34380.638) | [34380.638 ; 35683.058) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [35683.058 ; 36963.528) | @@@@@@@@@@@ [36963.528 ; 38367.052) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [38367.052 ; 40228.943) | @@@@@@@@@@@@@ ``` #### System.Perf_Convert.ToDateTime_String(value: "February 26, 2009") ```log [6465.886 ; 6713.327) | @@@@@@@@@@@@@ [6713.327 ; 6862.919) | @@@@ [6862.919 ; 7095.815) | @ [7095.815 ; 7362.284) | [7362.284 ; 7628.752) | [7628.752 ; 7895.221) | [7895.221 ; 8066.861) | @@@@@@@@@@@@@@@@ [8066.861 ; 8380.882) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8380.882 ; 8606.523) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Perf_Convert.FromBase64String ```log [1241.988 ; 1278.004) | @@@@@@@@@@@@@@@ [1278.004 ; 1310.526) | @@@ [1310.526 ; 1346.542) | [1346.542 ; 1382.559) | [1382.559 ; 1418.575) | [1418.575 ; 1454.591) | [1454.591 ; 1490.607) | [1490.607 ; 1526.623) | [1526.623 ; 1562.640) | [1562.640 ; 1598.656) | [1598.656 ; 1649.993) | @@@@@@@@@@@@@ [1649.993 ; 1686.009) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1686.009 ; 1723.220) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1723.220 ; 1772.817) | @@@@@@@@@@@@@@@@@@@@@@@@@ [1772.817 ; 1847.606) | @@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Tests.Perf_Encoding Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetString]() | 2.15 μs | 1.61 μs | 0.75 | | | [GetChars]() | 2.01 μs | 1.52 μs | 0.76 | | | [GetBytes]() | 7.08 μs | 5.02 μs | 0.71 | | | [GetBytes]() | 509.64 ns | 424.42 ns | 0.83 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Tests.Perf_Encoding*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Tests.Perf_Encoding.GetString(size: 512, encName: "utf-8") ```log [1563.114 ; 1607.515) | @ [1607.515 ; 1647.242) | @@@@@@@ [1647.242 ; 1683.411) | @@@@@@@@@@ [1683.411 ; 1719.581) | [1719.581 ; 1755.751) | [1755.751 ; 1791.920) | [1791.920 ; 1828.090) | [1828.090 ; 1864.260) | [1864.260 ; 1900.429) | [1900.429 ; 1936.599) | [1936.599 ; 2009.533) | @@ [2009.533 ; 2089.257) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2089.257 ; 2169.643) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2169.643 ; 2238.339) | @@@ ``` #### System.Text.Tests.Perf_Encoding.GetChars(size: 512, encName: "utf-8") ```log [1460.735 ; 1498.559) | @@ [1498.559 ; 1533.137) | @@@@ [1533.137 ; 1569.184) | @@@@@@@@@@ [1569.184 ; 1632.723) | @@ [1632.723 ; 1668.770) | [1668.770 ; 1704.818) | [1704.818 ; 1740.865) | [1740.865 ; 1776.912) | [1776.912 ; 1812.959) | [1812.959 ; 1849.006) | [1849.006 ; 1895.645) | @@ [1895.645 ; 1944.664) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1944.664 ; 2021.432) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2021.432 ; 2091.989) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Tests.Perf_Encoding.GetBytes(size: 512, encName: "ascii") ```log [5015.480 ; 5155.730) | @@@@@@@@@@@@@@@ [5155.730 ; 5365.489) | @@@ [5365.489 ; 5505.739) | [5505.739 ; 5645.990) | [5645.990 ; 5786.240) | [5786.240 ; 5926.490) | [5926.490 ; 6066.740) | [6066.740 ; 6206.991) | [6206.991 ; 6347.241) | [6347.241 ; 6558.739) | [6558.739 ; 6698.990) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6698.990 ; 6846.208) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6846.208 ; 7021.364) | @@@@@@@@@@@@@@@@@@ [7021.364 ; 7290.393) | @@@@@@@ [7290.393 ; 7528.638) | @@@@@ [7528.638 ; 7809.139) | [7809.139 ; 8089.639) | [8089.639 ; 8370.140) | [8370.140 ; 8667.732) | @ ``` #### System.Text.Tests.Perf_Encoding.GetBytes(size: 16, encName: "utf-8") ```log [420.788 ; 432.550) | @@@@@ [432.550 ; 448.692) | @@@@@@@@@@@@ [448.692 ; 463.148) | @ [463.148 ; 477.884) | [477.884 ; 491.900) | [491.900 ; 506.680) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [506.680 ; 525.820) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [525.820 ; 545.379) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [545.379 ; 564.194) | @@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Globalization.Tests.Perf_DateTimeCultureInfo Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ToString]() | 5.26 μs | 3.61 μs | 0.69 | | | [ToString]() | 5.16 μs | 3.70 μs | 0.72 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Globalization.Tests.Perf_DateTimeCultureInfo*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Globalization.Tests.Perf_DateTimeCultureInfo.ToString(culturestring: fr) ```log [3525.808 ; 3662.805) | @@@ [3662.805 ; 3778.483) | @@@@@@@@@@@@ [3778.483 ; 3869.658) | @@@ [3869.658 ; 3985.336) | [3985.336 ; 4101.014) | [4101.014 ; 4216.692) | [4216.692 ; 4332.370) | [4332.370 ; 4448.048) | [4448.048 ; 4563.726) | [4563.726 ; 4679.404) | [4679.404 ; 4811.975) | [4811.975 ; 4998.201) | @@@@@@@@@@@@@@@@@@@ [4998.201 ; 5115.888) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5115.888 ; 5231.566) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5231.566 ; 5343.405) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5343.405 ; 5459.679) | @@@@@@@ ``` #### System.Globalization.Tests.Perf_DateTimeCultureInfo.ToString(culturestring: da) ```log [3439.645 ; 3552.118) | @ [3552.118 ; 3700.880) | @@@@@@@@@@@@@ [3700.880 ; 3823.996) | @@@ [3823.996 ; 3936.469) | [3936.469 ; 4048.942) | [4048.942 ; 4161.416) | [4161.416 ; 4273.889) | [4273.889 ; 4386.362) | [4386.362 ; 4498.835) | [4498.835 ; 4611.308) | [4611.308 ; 4700.319) | [4700.319 ; 4822.948) | @@@@@@@@ [4822.948 ; 4932.923) | @@@@@@@@@@@@@@@@@@@@@@ [4932.923 ; 5045.598) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5045.598 ; 5158.071) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5158.071 ; 5371.633) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Reader.Tests.Perf_Base64 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ReadBase64EncodedByteArray_HeavyEscaping]() | 7.47 μs | 4.04 μs | 0.54 | | | [ReadBase64EncodedByteArray_NoEscaping]() | 59.97 μs | 31.43 μs | 0.52 | | | [ReadBase64EncodedByteArray_HeavyEscaping]() | 59.38 μs | 32.29 μs | 0.54 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Reader.Tests.Perf_Base64*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Reader.Tests.Perf_Base64.ReadBase64EncodedByteArray_HeavyEscaping(NumberOfBytes: 100) ```log [3905.126 ; 4162.397) | @@@@@@@@@@@@@@@@@ [4162.397 ; 4349.143) | @ [4349.143 ; 4606.415) | [4606.415 ; 4863.686) | [4863.686 ; 5120.958) | [5120.958 ; 5378.229) | [5378.229 ; 5635.501) | [5635.501 ; 5892.772) | [5892.772 ; 6150.044) | [6150.044 ; 6407.315) | [6407.315 ; 6664.587) | [6664.587 ; 6938.044) | [6938.044 ; 7181.355) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7181.355 ; 7438.626) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7438.626 ; 7723.756) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7723.756 ; 7981.028) | @@@@ ``` #### System.Text.Json.Reader.Tests.Perf_Base64.ReadBase64EncodedByteArray_NoEscaping(NumberOfBytes: 1000) ```log [30293.990 ; 32385.609) | @@@@@@@@@@@@@@@@@ [32385.609 ; 34103.817) | [34103.817 ; 36195.436) | @ [36195.436 ; 38287.054) | [38287.054 ; 40378.673) | [40378.673 ; 42470.292) | [42470.292 ; 44561.910) | [44561.910 ; 46653.529) | [46653.529 ; 48745.147) | [48745.147 ; 50836.766) | [50836.766 ; 52928.385) | [52928.385 ; 55020.004) | [55020.004 ; 55780.701) | [55780.701 ; 57200.239) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [57200.239 ; 59291.858) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59291.858 ; 61344.908) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61344.908 ; 63567.105) | @@@@@ [63567.105 ; 65872.236) | @@ ``` #### System.Text.Json.Reader.Tests.Perf_Base64.ReadBase64EncodedByteArray_HeavyEscaping(NumberOfBytes: 1000) ```log [30599.294 ; 32689.337) | @@@@@@@@@@@@@@@@@ [32689.337 ; 33843.635) | @ [33843.635 ; 35933.678) | [35933.678 ; 38023.720) | [38023.720 ; 40113.762) | [40113.762 ; 42203.805) | [42203.805 ; 44293.847) | [44293.847 ; 46383.889) | [46383.889 ; 48473.932) | [48473.932 ; 50563.974) | [50563.974 ; 52654.016) | [52654.016 ; 54744.059) | [54744.059 ; 55811.714) | [55811.714 ; 57203.701) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [57203.701 ; 59293.743) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59293.743 ; 61567.476) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [61567.476 ; 63657.519) | @@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Text.Json.Tests.Perf_Strings

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[WriteStringsUtf16](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Strings.WriteStringsUtf16(Formatted%3a%20True%2c%20SkipValidation%3a%20False%2c%20Escaped%3a%20AllEscaped).html>) 1.15 secs 808.33 ms 0.70
[WriteStringsUtf16](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Strings.WriteStringsUtf16(Formatted%3a%20True%2c%20SkipValidation%3a%20False%2c%20Escaped%3a%20OneEscaped).html>) 356.28 ms 253.19 ms 0.71
[WriteStringsUtf16](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Strings.WriteStringsUtf16(Formatted%3a%20False%2c%20SkipValidation%3a%20True%2c%20Escaped%3a%20OneEscaped).html>) 313.98 ms 227.28 ms 0.72

graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Perf_Strings*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Strings.WriteStringsUtf16(Formatted: True, SkipValidation: False, Escaped: AllEscaped) ```log [ 761141290.354 ; 779940807.082) | @@ [ 779940807.082 ; 805980595.374) | @@@@@@@@@@@@@ [ 805980595.374 ; 824903594.279) | @@ [ 824903594.279 ; 850863486.413) | @ [ 850863486.413 ; 876903274.705) | [ 876903274.705 ; 902943062.997) | [ 902943062.997 ; 928982851.289) | [ 928982851.289 ; 955022639.581) | [ 955022639.581 ; 981062427.873) | [ 981062427.873 ; 1007102216.165) | [1007102216.165 ; 1033142004.457) | [1033142004.457 ; 1059181792.749) | [1059181792.749 ; 1085221581.041) | [1085221581.041 ; 1112415808.110) | @@@@@@@@@@@@@@@@@@@@ [1112415808.110 ; 1160715713.091) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1160715713.091 ; 1188431257.994) | @@@ [1188431257.994 ; 1214471046.286) | @@@@@ ``` #### System.Text.Json.Tests.Perf_Strings.WriteStringsUtf16(Formatted: True, SkipValidation: False, Escaped: OneEscaped) ```log [235205686.745 ; 243342446.526) | @@@ [243342446.526 ; 251473273.607) | @@@@@@@@@@@@ [251473273.607 ; 257804422.092) | @@ [257804422.092 ; 266718428.126) | [266718428.126 ; 274849255.207) | @ [274849255.207 ; 282980082.289) | [282980082.289 ; 291110909.370) | [291110909.370 ; 299241736.452) | [299241736.452 ; 307372563.533) | [307372563.533 ; 315503390.615) | [315503390.615 ; 323634217.696) | [323634217.696 ; 331765044.778) | [331765044.778 ; 340158636.989) | [340158636.989 ; 347699066.987) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [347699066.987 ; 355829894.069) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [355829894.069 ; 370645946.469) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Strings.WriteStringsUtf16(Formatted: False, SkipValidation: True, Escaped: OneEscaped) ```log [215647736.714 ; 221004511.618) | @ [221004511.618 ; 227621830.591) | @@@@@@@@@@@@ [227621830.591 ; 234194749.270) | @@@@@ [234194749.270 ; 240812068.242) | [240812068.242 ; 247429387.215) | [247429387.215 ; 254046706.187) | [254046706.187 ; 260664025.160) | [260664025.160 ; 267281344.133) | [267281344.133 ; 273898663.105) | [273898663.105 ; 280515982.078) | [280515982.078 ; 287133301.050) | [287133301.050 ; 293750620.023) | [293750620.023 ; 300957108.380) | [300957108.380 ; 313495630.468) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [313495630.468 ; 320112250.239) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [320112250.239 ; 327546172.986) | @@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Buffers.Text.Tests.Utf8FormatterTests Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [FormatterUInt32]() | 273.32 ns | 229.26 ns | 0.84 | | | [FormatterUInt32]() | 441.54 ns | 334.10 ns | 0.76 | | | [FormatterDecimal]() | 1.09 μs | 829.55 ns | 0.76 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Buffers.Text.Tests.Utf8FormatterTests*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Buffers.Text.Tests.Utf8FormatterTests.FormatterUInt32(value: 12345) ```log [220.142 ; 228.716) | @@@@@@@@@@@@@ [228.716 ; 234.713) | @@ [234.713 ; 243.595) | @@ [243.595 ; 251.006) | [251.006 ; 258.731) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [258.731 ; 269.199) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [269.199 ; 278.833) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [278.833 ; 288.037) | @@@@@@@@@@@@@@@@@@@ [288.037 ; 296.967) | @@@@@@@@@ ``` #### System.Buffers.Text.Tests.Utf8FormatterTests.FormatterUInt32(value: 4294967295) ```log [314.934 ; 325.124) | @@@@@@@@@ [325.124 ; 336.215) | @@@@@@@@@ [336.215 ; 348.992) | [348.992 ; 361.770) | [361.770 ; 374.548) | [374.548 ; 388.563) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [388.563 ; 404.013) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [404.013 ; 412.666) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [412.666 ; 425.246) | @@@@@@@ [425.246 ; 434.595) | @@ [434.595 ; 444.800) | @@ [444.800 ; 457.578) | [457.578 ; 470.355) | [470.355 ; 483.133) | [483.133 ; 497.272) | @ ``` #### System.Buffers.Text.Tests.Utf8FormatterTests.FormatterDecimal(value: 123456.789) ```log [ 815.513 ; 840.460) | @@@@@@@@@@@@@@@@ [ 840.460 ; 864.143) | @@ [ 864.143 ; 889.090) | [ 889.090 ; 923.494) | @@@@@@@ [ 923.494 ; 948.442) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 948.442 ; 974.039) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [ 974.039 ; 998.986) | [ 998.986 ; 1023.934) | [1023.934 ; 1047.663) | @@@ [1047.663 ; 1072.611) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1072.611 ; 1095.292) | @@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_SByte Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ToString]() | 409.18 ns | 356.01 ns | 0.87 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_SByte*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_SByte.ToString(value: -128) ```log [333.593 ; 343.465) | @@@@@@@@@@@@@@@@@@@ [343.465 ; 352.467) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [352.467 ; 362.036) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [362.036 ; 377.072) | @@@@@@@@@@@@@@@@ [377.072 ; 390.684) | @@@@@@@@@@@@@@@@@@@@@@@@@ [390.684 ; 399.685) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [399.685 ; 408.246) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [408.246 ; 418.470) | @@@@@@@@ [418.470 ; 427.472) | @@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.MathBenchmarks.Double Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Tanh]() | 167.11 μs | 112.96 μs | 0.68 | | | [Cos]() | 115.62 μs | 86.34 μs | 0.75 | | | [Atan]() | 112.51 μs | 86.36 μs | 0.77 | | | [Max]() | 140.93 μs | 100.46 μs | 0.71 | | | [Sqrt]() | 56.71 μs | 35.44 μs | 0.62 | | | [Exp]() | 107.12 μs | 80.71 μs | 0.75 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.MathBenchmarks.Double*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.MathBenchmarks.Double.Tanh ```log [111636.362 ; 115990.776) | @@@@@@@@@@@@@@@@@@ [115990.776 ; 120345.190) | [120345.190 ; 124699.605) | [124699.605 ; 129054.019) | [129054.019 ; 133408.433) | [133408.433 ; 137762.848) | [137762.848 ; 142117.262) | [142117.262 ; 146471.676) | [146471.676 ; 150826.090) | [150826.090 ; 155180.505) | [155180.505 ; 159534.919) | [159534.919 ; 163889.333) | [163889.333 ; 170313.567) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [170313.567 ; 176231.729) | @@ ``` #### System.MathBenchmarks.Double.Cos ```log [ 85591.192 ; 87784.055) | @@@@@@@@@@@@@@@@@ [ 87784.055 ; 89976.918) | [ 89976.918 ; 92169.782) | [ 92169.782 ; 94362.645) | [ 94362.645 ; 96555.508) | [ 96555.508 ; 98748.371) | [ 98748.371 ; 100941.234) | [100941.234 ; 103134.097) | [103134.097 ; 105326.960) | [105326.960 ; 107519.823) | [107519.823 ; 109712.686) | [109712.686 ; 111905.549) | [111905.549 ; 116140.195) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [116140.195 ; 118567.367) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [118567.367 ; 122180.968) | @@@@@@@@@@ [122180.968 ; 124690.936) | @@ ``` #### System.MathBenchmarks.Double.Atan ```log [ 85823.435 ; 87796.770) | @@@@@@@@@@@@@@@@ [ 87796.770 ; 89603.809) | [ 89603.809 ; 91577.144) | @@ [ 91577.144 ; 93550.479) | [ 93550.479 ; 95523.814) | [ 95523.814 ; 97497.149) | [ 97497.149 ; 99470.484) | [ 99470.484 ; 101443.819) | [101443.819 ; 103417.154) | [103417.154 ; 105390.489) | [105390.489 ; 107363.824) | [107363.824 ; 111152.397) | [111152.397 ; 115830.822) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [115830.822 ; 119599.734) | @@@@@@ [119599.734 ; 123224.856) | @@ [123224.856 ; 126176.788) | @@ ``` #### System.MathBenchmarks.Double.Max ```log [ 98176.512 ; 100970.419) | @@@@@@@@@@@@@@ [100970.419 ; 103764.326) | [103764.326 ; 106793.748) | [106793.748 ; 109587.655) | @@ [109587.655 ; 112381.561) | [112381.561 ; 117062.454) | @ [117062.454 ; 119856.361) | [119856.361 ; 122650.268) | [122650.268 ; 125444.174) | [125444.174 ; 129816.147) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [129816.147 ; 133342.630) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [133342.630 ; 136594.597) | @@@@@@@@@@@ [136594.597 ; 140261.661) | @@@@@@ [140261.661 ; 145889.136) | @@@ [145889.136 ; 149777.209) | @@@@ [149777.209 ; 155365.022) | [155365.022 ; 160952.835) | [160952.835 ; 166540.649) | [166540.649 ; 172128.462) | [172128.462 ; 177716.275) | [177716.275 ; 183304.089) | [183304.089 ; 193138.706) | @ ``` #### System.MathBenchmarks.Double.Sqrt ```log [35272.371 ; 36809.457) | @@@@@@@ [36809.457 ; 37753.318) | [37753.318 ; 39290.404) | @@@@@@@@@@ [39290.404 ; 40821.397) | [40821.397 ; 42358.483) | @ [42358.483 ; 43895.569) | [43895.569 ; 45432.656) | [45432.656 ; 46969.742) | [46969.742 ; 48506.828) | [48506.828 ; 50043.914) | [50043.914 ; 51581.000) | [51581.000 ; 53118.086) | [53118.086 ; 54655.172) | [54655.172 ; 56945.628) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [56945.628 ; 58523.885) | @@ [58523.885 ; 60060.971) | @@@@ [60060.971 ; 61390.695) | [61390.695 ; 62927.781) | @@@@@@@ [62927.781 ; 64282.945) | @ ``` #### System.MathBenchmarks.Double.Exp ```log [ 80157.236 ; 82921.252) | @@@@@@@@@@@@@@@@@ [ 82921.252 ; 84984.946) | @ [ 84984.946 ; 87048.640) | [ 87048.640 ; 89112.334) | [ 89112.334 ; 91176.028) | [ 91176.028 ; 93239.722) | [ 93239.722 ; 95303.416) | [ 95303.416 ; 97367.110) | [ 97367.110 ; 99430.804) | [ 99430.804 ; 101494.498) | [101494.498 ; 103558.192) | [103558.192 ; 106349.952) | [106349.952 ; 109294.823) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [109294.823 ; 113304.891) | @@@@@@@@ [113304.891 ; 117307.518) | @@@@@@ [117307.518 ; 123572.306) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Xml_ToStream<Location> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DataContractSerializer_]() | 55.71 μs | 43.24 μs | 0.78 | | | [XmlSerializer_]() | 97.63 μs | 81.55 μs | 0.84 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream<Location>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Xml_ToStream.DataContractSerializer_ ```log [41730.627 ; 43277.128) | @@@@@@@@@@@@@@@@@ [43277.128 ; 44217.608) | @ [44217.608 ; 45129.104) | [45129.104 ; 46040.600) | [46040.600 ; 46952.097) | [46952.097 ; 47863.593) | [47863.593 ; 48775.089) | [48775.089 ; 49686.585) | [49686.585 ; 50598.082) | [50598.082 ; 51509.578) | [51509.578 ; 52421.074) | [52421.074 ; 53983.510) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [53983.510 ; 56048.437) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### MicroBenchmarks.Serializers.Xml_ToStream.XmlSerializer_ ```log [78068.964 ; 80316.976) | @@@@@@@@@@ [80316.976 ; 83212.158) | @@@@@@@@ [83212.158 ; 85667.717) | [85667.717 ; 88123.276) | [88123.276 ; 90578.835) | [90578.835 ; 93630.626) | [93630.626 ; 98495.350) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.TryGetValueFalse<Int32, Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [IDictionary]() | 73.31 μs | 59.32 μs | 0.81 | | | [ConcurrentDictionary]() | 56.07 μs | 48.21 μs | 0.86 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.TryGetValueFalse<Int32, Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.TryGetValueFalse.IDictionary(Size: 512) ```log [58758.211 ; 61029.769) | @@@@@@@@@@@@@@ [61029.769 ; 62684.001) | @ [62684.001 ; 65068.468) | @@ [65068.468 ; 67304.713) | [67304.713 ; 69540.959) | [69540.959 ; 71241.036) | @@@@@@@@@@@@@@@@@@ [71241.036 ; 73965.527) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [73965.527 ; 76678.186) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [76678.186 ; 78773.759) | @@@@@@@ [78773.759 ; 81018.322) | @@@@@@@ ``` #### System.Collections.TryGetValueFalse.ConcurrentDictionary(Size: 512) ```log [47388.106 ; 48938.491) | @@@@@@@@@@@@@@@ [48938.491 ; 50637.752) | @@@ [50637.752 ; 52058.962) | [52058.962 ; 53480.171) | [53480.171 ; 54936.131) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [54936.131 ; 56982.937) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [56982.937 ; 58554.270) | @@@@@@@@@@@@@@@@@@ [58554.270 ; 60845.385) | @@@@@@@ [60845.385 ; 62378.157) | @ [62378.157 ; 64864.340) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Binary_ToStream<MyEventsListerViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [BinaryFormatter_]() | 1.16 ms | 964.99 μs | 0.83 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Binary_ToStream<MyEventsListerViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Binary_ToStream.BinaryFormatter_ ```log [ 951448.093 ; 985556.484) | @@@@@@@@@@@@@@@@@@ [ 985556.484 ; 1017084.049) | [1017084.049 ; 1048611.615) | [1048611.615 ; 1080139.180) | [1080139.180 ; 1111666.746) | [1111666.746 ; 1142677.510) | @@@@@@@@@@ [1142677.510 ; 1196729.607) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in BenchmarksGame.ReverseComplement_1 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [RunBench]() | 8.09 ms | 5.58 ms | 0.69 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'BenchmarksGame.ReverseComplement_1*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### BenchmarksGame.ReverseComplement_1.RunBench ```log [5506310.980 ; 5698033.202) | @@@@@@@@@@@@@@@@@ [5698033.202 ; 5889755.424) | [5889755.424 ; 6081477.646) | [6081477.646 ; 6273199.869) | [6273199.869 ; 6464922.091) | [6464922.091 ; 6656644.313) | [6656644.313 ; 6848366.535) | [6848366.535 ; 7040088.757) | [7040088.757 ; 7231810.979) | [7231810.979 ; 7423533.202) | [7423533.202 ; 7615255.424) | [7615255.424 ; 7806977.646) | [7806977.646 ; 8144582.557) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8144582.557 ; 8488829.557) | @@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.AddGivenSize<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [HashSet]() | 197.29 μs | 148.31 μs | 0.75 | | | [IDictionary]() | 199.90 μs | 153.38 μs | 0.77 | | | [ICollection]() | 21.02 μs | 17.14 μs | 0.82 | | | [Dictionary]() | 198.21 μs | 150.91 μs | 0.76 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.AddGivenSize<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.AddGivenSize.HashSet(Size: 512) ```log [142008.678 ; 145868.505) | @@@@@@@@@@@@@ [145868.505 ; 151106.410) | @@@@ [151106.410 ; 154966.236) | @ [154966.236 ; 158826.062) | [158826.062 ; 162685.889) | [162685.889 ; 166545.715) | [166545.715 ; 170405.541) | [170405.541 ; 174265.367) | [174265.367 ; 178125.193) | [178125.193 ; 181985.020) | [181985.020 ; 186317.215) | @@@@@@@@@@@@@@@@@ [186317.215 ; 190177.042) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [190177.042 ; 194850.777) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [194850.777 ; 202257.426) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [202257.426 ; 212981.449) | @@@@@@@ ``` #### System.Collections.AddGivenSize.IDictionary(Size: 512) ```log [149371.714 ; 155728.235) | @@@@@@@@@@@@@@@@ [155728.235 ; 162315.890) | @@ [162315.890 ; 166004.382) | [166004.382 ; 169692.875) | [169692.875 ; 173381.368) | [173381.368 ; 177069.860) | [177069.860 ; 180758.353) | [180758.353 ; 184446.845) | [184446.845 ; 188135.338) | [188135.338 ; 192149.802) | @@@@@@@@@@@@@@@ [192149.802 ; 199858.096) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [199858.096 ; 204224.224) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [204224.224 ; 211240.603) | @@@@@@@@@@@@@@@@@@@@@ [211240.603 ; 215994.222) | @ [215994.222 ; 221946.537) | @@@ ``` #### System.Collections.AddGivenSize.ICollection(Size: 512) ```log [16583.659 ; 17061.275) | @@@ [17061.275 ; 17498.273) | @@@@@@@@@@@@@ [17498.273 ; 18268.076) | @@ [18268.076 ; 18705.074) | [18705.074 ; 19142.073) | [19142.073 ; 19579.071) | [19579.071 ; 20016.070) | [20016.070 ; 20523.208) | @@@@@@@@ [20523.208 ; 20960.207) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20960.207 ; 21814.473) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [21814.473 ; 22453.100) | @@@@ [22453.100 ; 23343.697) | @@@@@@ [23343.697 ; 24217.694) | [24217.694 ; 25091.691) | [25091.691 ; 25793.449) | [25793.449 ; 26314.529) | @ [26314.529 ; 27240.799) | [27240.799 ; 28228.116) | @ [28228.116 ; 29102.113) | [29102.113 ; 29976.110) | [29976.110 ; 30817.381) | @ [30817.381 ; 31690.613) | @ ``` #### System.Collections.AddGivenSize.Dictionary(Size: 512) ```log [147557.728 ; 153414.736) | @@@@@@@@@@@@@@@@ [153414.736 ; 159913.259) | @@ [159913.259 ; 163557.266) | [163557.266 ; 167201.273) | [167201.273 ; 170845.280) | [170845.280 ; 174489.287) | [174489.287 ; 178133.294) | [178133.294 ; 181777.301) | [181777.301 ; 185421.308) | [185421.308 ; 190019.221) | @@@ [190019.221 ; 197628.938) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [197628.938 ; 202398.253) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [202398.253 ; 209259.419) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [209259.419 ; 217436.938) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.IO.Tests.Perf_Directory Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [RecursiveCreateDeleteDirectory]() | 9.29 ms | 8.45 ms | 0.91 | | | [GetCurrentDirectory]() | 3.08 μs | 2.42 μs | 0.79 | | | [EnumerateFiles]() | 29.79 ms | 22.83 ms | 0.77 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.IO.Tests.Perf_Directory*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.IO.Tests.Perf_Directory.RecursiveCreateDeleteDirectory(depth: 100) ```log [8375985.827 ; 8705120.564) | @@@@@@@@@@@@@@@@@ [8705120.564 ; 8908668.876) | [8908668.876 ; 9206769.487) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9206769.487 ; 9657767.064) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.IO.Tests.Perf_Directory.GetCurrentDirectory ```log [2354.991 ; 2405.681) | @@@ [2405.681 ; 2501.877) | @@@@@@@@@@@@@@@ [2501.877 ; 2591.702) | [2591.702 ; 2681.527) | [2681.527 ; 2771.353) | [2771.353 ; 2867.466) | [2867.466 ; 2963.707) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2963.707 ; 3050.689) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3050.689 ; 3166.883) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3166.883 ; 3277.456) | @@@ ``` #### System.IO.Tests.Perf_Directory.EnumerateFiles ```log [21809498.479 ; 22370228.691) | @@@@@@@@@@@@ [22370228.691 ; 22927408.102) | @@@@@@ [22927408.102 ; 23488138.314) | [23488138.314 ; 24048868.525) | [24048868.525 ; 24609598.736) | [24609598.736 ; 25170328.948) | [25170328.948 ; 25731059.159) | [25731059.159 ; 26324079.663) | @ [26324079.663 ; 27130356.187) | @@@@@@@@ [27130356.187 ; 27726161.524) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [27726161.524 ; 28859342.251) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [28859342.251 ; 30534175.413) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Tests.Perf_Booleans Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [WriteBooleans]() | 36.30 ms | 33.29 ms | 0.92 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Perf_Booleans*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Booleans.WriteBooleans(Formatted: True, SkipValidation: False) ```log [32317408.909 ; 33430756.589) | @@@@@@ [33430756.589 ; 34766440.728) | @@@@@@@@@@@ [34766440.728 ; 35820080.151) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [35820080.151 ; 36783148.234) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [36783148.234 ; 38079976.578) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [38079976.578 ; 39163021.878) | @@@@@@@@@@@@@@ [39163021.878 ; 40048412.570) | @@@ [40048412.570 ; 41319279.295) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Reflection.Attributes Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [GetCustomAttributesMethodOverrideHitInherit]() | 14.16 μs | 12.29 μs | 0.87 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Reflection.Attributes*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Reflection.Attributes.GetCustomAttributesMethodOverrideHitInherit ```log [11733.400 ; 12041.482) | @@@ [12041.482 ; 12446.756) | @@@@@@@@@@@@@@@ [12446.756 ; 12741.730) | [12741.730 ; 13036.704) | [13036.704 ; 13331.678) | [13331.678 ; 13662.524) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [13662.524 ; 14390.893) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in MicroBenchmarks.Serializers.Binary_FromStream<Location>

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[BinaryFormatter_](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/MicroBenchmarks.Serializers.BinaryFromStream(Location).BinaryFormatter.html>) 137.22 μs 114.70 μs 0.84

graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Binary_FromStream&lt;Location&gt;*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Binary_FromStream.BinaryFormatter_ ```log [112522.024 ; 116447.867) | @@@@@@@@@@@@@@@@@@ [116447.867 ; 120088.448) | [120088.448 ; 123729.029) | [123729.029 ; 127369.611) | [127369.611 ; 131010.192) | [131010.192 ; 134972.901) | @@@@@@@@@@@@@ [134972.901 ; 140085.616) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Security.Cryptography.Tests.Perf_CryptoConfig Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [CreateFromName]() | 14.40 μs | 12.48 μs | 0.87 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Security.Cryptography.Tests.Perf_CryptoConfig*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Security.Cryptography.Tests.Perf_CryptoConfig.CreateFromName(name: "RSA") ```log [12169.493 ; 12621.852) | @@@@@@@@@@@@@ [12621.852 ; 12895.902) | @@@@@ [12895.902 ; 13182.641) | [13182.641 ; 13469.380) | [13469.380 ; 13825.172) | @@@@@@@ [13825.172 ; 14318.450) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [14318.450 ; 14670.648) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Json_FromStream<MyEventsListerViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [JsonNet_]() | 20.70 ms | 16.72 ms | 0.81 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Json_FromStream<MyEventsListerViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Json_FromStream.JsonNet_ ```log [16375186.490 ; 16996262.517) | @@@@@@@@@@@@@@@@@@ [16996262.517 ; 17600318.448) | [17600318.448 ; 18204374.378) | [18204374.378 ; 18808430.308) | [18808430.308 ; 19412486.238) | [19412486.238 ; 19993966.787) | [19993966.787 ; 20690893.589) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20690893.589 ; 21417941.622) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.XposMatrix Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 343.25 μs | 202.31 μs | 0.59 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.XposMatrix*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.XposMatrix.Test ```log [192636.707 ; 204226.099) | @@@@@@@@@@@@@@@@@@ [204226.099 ; 215815.490) | [215815.490 ; 227404.882) | [227404.882 ; 238994.274) | [238994.274 ; 250583.666) | [250583.666 ; 262173.058) | [262173.058 ; 273762.450) | [273762.450 ; 285351.842) | [285351.842 ; 296941.234) | [296941.234 ; 308530.625) | [308530.625 ; 322342.924) | [322342.924 ; 333932.315) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [333932.315 ; 349422.686) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [349422.686 ; 357048.203) | [357048.203 ; 368637.595) | @ [368637.595 ; 380226.987) | [380226.987 ; 391816.379) | [391816.379 ; 403405.771) | [403405.771 ; 414995.163) | [414995.163 ; 426584.555) | [426584.555 ; 438173.947) | [438173.947 ; 449763.338) | [449763.338 ; 461352.730) | [461352.730 ; 472942.122) | [472942.122 ; 484531.514) | [484531.514 ; 496120.906) | [496120.906 ; 507710.298) | [507710.298 ; 519299.690) | [519299.690 ; 530889.082) | [530889.082 ; 542478.474) | [542478.474 ; 551804.314) | [551804.314 ; 563393.706) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SerializeToString]() | 435.12 μs | 322.75 μs | 0.74 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.WriteJson>.SerializeToString ```log [306848.242 ; 313751.885) | @ [313751.885 ; 322819.078) | @@@@@@@@@@@@@ [322819.078 ; 331161.899) | @@@@ [331161.899 ; 340229.092) | [340229.092 ; 349296.284) | [349296.284 ; 358363.477) | [358363.477 ; 367430.670) | [367430.670 ; 376497.863) | [376497.863 ; 385565.056) | [385565.056 ; 394632.248) | [394632.248 ; 403699.441) | [403699.441 ; 415516.212) | @@@@@@@@@@@ [415516.212 ; 424685.915) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [424685.915 ; 433753.108) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [433753.108 ; 442606.481) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [442606.481 ; 452743.921) | @@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Formats.Cbor.Tests.Perf_CborWriter Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [WriteCoseKey]() | 25.03 μs | 18.48 μs | 0.74 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Formats.Cbor.Tests.Perf_CborWriter*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Formats.Cbor.Tests.Perf_CborWriter.WriteCoseKey(publicKey: ECDSA_P384) ```log [18256.840 ; 18727.311) | @@@@ [18727.311 ; 19191.114) | @@@@@@@@@@@@ [19191.114 ; 19584.050) | @@ [19584.050 ; 20047.853) | [20047.853 ; 20511.656) | [20511.656 ; 20975.459) | [20975.459 ; 21439.261) | [21439.261 ; 21903.064) | [21903.064 ; 22366.867) | [22366.867 ; 22830.670) | [22830.670 ; 23294.473) | [23294.473 ; 24046.709) | @@@ [24046.709 ; 25000.894) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [25000.894 ; 25766.903) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchF.DMath Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 13.17 secs | 9.15 secs | 0.69 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchF.DMath*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchF.DMath.Test ```log [ 8979329410.743 ; 9301156720.647) | @@@@@@@@@@@@ [ 9301156720.647 ; 9739205015.654) | @@@@@ [ 9739205015.654 ; 10138184801.085) | @ [10138184801.085 ; 10460012110.989) | [10460012110.989 ; 10781839420.892) | [10781839420.892 ; 11103666730.796) | [11103666730.796 ; 11425494040.699) | [11425494040.699 ; 11747321350.602) | [11747321350.602 ; 12069148660.506) | [12069148660.506 ; 12390975970.409) | [12390975970.409 ; 12712803280.313) | [12712803280.313 ; 13073766384.591) | @ [13073766384.591 ; 13395593694.495) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [13395593694.495 ; 13712025800.561) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [13712025800.561 ; 14047867476.718) | @@@@@@@@@@@@@@@@@@@ [14047867476.718 ; 14426523059.615) | @@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in BenchmarksGame.FannkuchRedux_2 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [RunBench]() | 1.51 secs | 782.64 ms | 0.52 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'BenchmarksGame.FannkuchRedux_2*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### BenchmarksGame.FannkuchRedux_2.RunBench(n: 10, expectedSum: 73196) ```log [ 779243536.965 ; 826755698.259) | @@@@@@@@@@@@@@@@ [ 826755698.259 ; 885931396.914) | @ [ 885931396.914 ; 933443558.208) | [ 933443558.208 ; 980955719.502) | [ 980955719.502 ; 1028467880.796) | [1028467880.796 ; 1075980042.090) | [1075980042.090 ; 1123492203.384) | [1123492203.384 ; 1171004364.678) | [1171004364.678 ; 1218516525.972) | [1218516525.972 ; 1266028687.267) | [1266028687.267 ; 1313540848.561) | [1313540848.561 ; 1361053009.855) | [1361053009.855 ; 1379666810.032) | [1379666810.032 ; 1427178971.326) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1427178971.326 ; 1474950032.282) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1474950032.282 ; 1518500830.814) | @@@@@@@ [1518500830.814 ; 1556721610.258) | @ [1556721610.258 ; 1604233771.552) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in BenchmarksGame.BinaryTrees_5 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [RunBench]() | 394.46 ms | 337.74 ms | 0.86 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'BenchmarksGame.BinaryTrees_5*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### BenchmarksGame.BinaryTrees_5.RunBench ```log [324717253.895 ; 337609743.492) | @@@@@@@@@@@@@@@ [337609743.492 ; 349766359.029) | @@@ [349766359.029 ; 358572733.229) | [358572733.229 ; 367379107.429) | [367379107.429 ; 376885983.888) | @@@@@@@@@@@@@@@@@@@@@ [376885983.888 ; 390767306.050) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [390767306.050 ; 402250620.844) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in BenchmarksGame.KNucleotide_1 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [RunBench]() | 4.35 secs | 3.75 secs | 0.86 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'BenchmarksGame.KNucleotide_1*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### BenchmarksGame.KNucleotide_1.RunBench ```log [3679072058.485 ; 3766167846.025) | @@@@@@@@ [3766167846.025 ; 3888361512.422) | @@@@@@@@@@ [3888361512.422 ; 3991696180.848) | [3991696180.848 ; 4095030849.275) | [4095030849.275 ; 4227386955.231) | [4227386955.231 ; 4368949996.350) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4368949996.350 ; 4594506678.601) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchF.Romber Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 1.19 secs | 868.37 ms | 0.73 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchF.Romber*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchF.Romber.Test ```log [ 859745927.359 ; 884478384.175) | @@@@@@@@@@@@@@@ [ 884478384.175 ; 913703920.325) | @@ [ 913703920.325 ; 938436377.141) | @ [ 938436377.141 ; 963168833.958) | [ 963168833.958 ; 987901290.774) | [ 987901290.774 ; 1012633747.590) | [1012633747.590 ; 1037366204.406) | [1037366204.406 ; 1062098661.222) | [1062098661.222 ; 1086831118.039) | [1086831118.039 ; 1111563574.855) | [1111563574.855 ; 1138271484.053) | [1138271484.053 ; 1176224706.061) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1176224706.061 ; 1200957162.877) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1200957162.877 ; 1247732206.027) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1247732206.027 ; 1274201854.147) | @@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchF.FFT Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 1.21 secs | 765.74 ms | 0.63 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchF.FFT*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchF.FFT.Test ```log [ 737601273.645 ; 771911278.930) | @@@@@@@@@@@@@@@@ [ 771911278.930 ; 821164849.376) | @@ [ 821164849.376 ; 855474854.661) | [ 855474854.661 ; 889784859.947) | [ 889784859.947 ; 924094865.232) | [ 924094865.232 ; 958404870.517) | [ 958404870.517 ; 992714875.802) | [ 992714875.802 ; 1027024881.088) | [1027024881.088 ; 1061334886.373) | [1061334886.373 ; 1095644891.658) | [1095644891.658 ; 1129954896.944) | [1129954896.944 ; 1166997607.091) | @@@@@@@@@@@@@@@@@@ [1166997607.091 ; 1201307612.376) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1201307612.376 ; 1235157740.176) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1235157740.176 ; 1266502432.426) | @@@@@@@@@@@@ [1266502432.426 ; 1304954023.157) | [1304954023.157 ; 1339264028.443) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in BenchmarksGame.BinaryTrees_6 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [RunBench]() | 2.13 secs | 1.72 secs | 0.81 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'BenchmarksGame.BinaryTrees_6*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### BenchmarksGame.BinaryTrees_6.RunBench ```log [1697380588.212 ; 1766017447.137) | @@@@@@@@@@@@@@@@@@ [1766017447.137 ; 1825846657.848) | [1825846657.848 ; 1885675868.559) | [1885675868.559 ; 1945505079.270) | [1945505079.270 ; 2005334289.981) | [2005334289.981 ; 2080155819.797) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2080155819.797 ; 2197694057.145) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Threading.Tasks.Tests.Perf_AsyncMethods Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SingleYieldMethodInvocation]() | 9.23 μs | 8.03 μs | 0.87 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Threading.Tasks.Tests.Perf_AsyncMethods*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Threading.Tasks.Tests.Perf_AsyncMethods.SingleYieldMethodInvocation ```log [7488.584 ; 7776.063) | @@@ [7776.063 ; 7944.032) | @@@@@@@@ [7944.032 ; 8200.074) | @@@@@@@ [8200.074 ; 8387.701) | [8387.701 ; 8661.777) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8661.777 ; 8886.139) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8886.139 ; 9205.490) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9205.490 ; 9414.294) | @@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Buffers.Binary.Tests.BinaryReadAndWriteTests Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [ReadStructFieldByFieldUsingBitConverterLE]() | 377.18 ns | 325.15 ns | 0.86 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Buffers.Binary.Tests.BinaryReadAndWriteTests*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Buffers.Binary.Tests.BinaryReadAndWriteTests.ReadStructFieldByFieldUsingBitConverterLE ```log [320.161 ; 330.205) | @@@@@@@@@@@@@ [330.205 ; 337.963) | @@ [337.963 ; 351.352) | @@@ [351.352 ; 362.115) | [362.115 ; 374.033) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [374.033 ; 388.083) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [388.083 ; 396.595) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [396.595 ; 412.650) | @@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Threading.Tests.Perf_Timer Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [AsynchronousContention]() | 13.80 secs | 12.31 secs | 0.89 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Threading.Tests.Perf_Timer*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Threading.Tests.Perf_Timer.AsynchronousContention ```log [12253824933.034 ; 12667334541.813) | @@@@@@@@@@@@@@@ [12667334541.813 ; 13023295793.064) | @@ [13023295793.064 ; 13391283423.941) | [13391283423.941 ; 13736564142.359) | @@@@@@@@@@@@@@@@@@@ [13736564142.359 ; 14363049304.405) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Xml_ToStream<LoginViewModel> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DataContractSerializer_]() | 31.76 μs | 25.60 μs | 0.81 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream<LoginViewModel>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Xml_ToStream.DataContractSerializer_ ```log [24990.320 ; 25551.416) | @@@@@@@@@@@@@@@ [25551.416 ; 26195.414) | @@ [26195.414 ; 26724.614) | @ [26724.614 ; 27672.822) | [27672.822 ; 28621.030) | [28621.030 ; 29569.238) | [29569.238 ; 30577.980) | [30577.980 ; 31560.190) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [31560.190 ; 32381.084) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.ContainsKeyFalse<Int32, Int32> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [IDictionary]() | 75.44 μs | 58.29 μs | 0.77 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.ContainsKeyFalse<Int32, Int32>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.ContainsKeyFalse.IDictionary(Size: 512) ```log [56723.354 ; 58435.777) | @@@@@@@@ [58435.777 ; 59826.778) | @@@@@@@ [59826.778 ; 61677.379) | @@@ [61677.379 ; 63625.097) | [63625.097 ; 65572.816) | [65572.816 ; 67005.455) | [67005.455 ; 69498.509) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [69498.509 ; 71879.872) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71879.872 ; 74352.019) | @@@@@@@@@@@@@@@@ [74352.019 ; 77950.472) | @@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Tests.Perf_Doubles Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [WriteDoubles]() | 1.24 secs | 870.00 ms | 0.70 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Perf_Doubles*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Doubles.WriteDoubles(Formatted: True, SkipValidation: True) ```log [ 864146393.934 ; 890942822.266) | @@@@@@@@@@@@@@@@@ [ 890942822.266 ; 932266487.698) | @ [ 932266487.698 ; 959062916.030) | [ 959062916.030 ; 985859344.362) | [ 985859344.362 ; 1012655772.694) | [1012655772.694 ; 1039452201.026) | [1039452201.026 ; 1066248629.358) | [1066248629.358 ; 1093045057.690) | [1093045057.690 ; 1119841486.022) | [1119841486.022 ; 1146637914.354) | [1146637914.354 ; 1173434342.686) | [1173434342.686 ; 1207862345.494) | @@@@@@@@@@@@@@@@@@@@@ [1207862345.494 ; 1234658773.826) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1234658773.826 ; 1264283580.243) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Text.Json.Tests.Perf_Reader

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[ReadSingleSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20HelloWorld).html>) 2.18 μs 1.69 μs 0.77
[ReadReturnBytes](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact%3a%20False%2c%20TestCase%3a%20Json400B).html>) 31.62 μs 25.30 μs 0.80
[ReadSingleSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20False%2c%20TestCase%3a%20Json40KB).html>) 1.75 ms 1.40 ms 0.80
[ReadSpanEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20Json40KB).html>) 1.30 ms 990.34 μs 0.76
[ReadMultiSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20LotsOfStrings).html>) 33.85 μs 27.35 μs 0.81
[ReadSpanEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20LotsOfStrings).html>) 24.12 μs 19.99 μs 0.83
[ReadSingleSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20False%2c%20TestCase%3a%20HelloWorld).html>) 2.56 μs 1.97 μs 0.77
[ReadSingleSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20False%2c%20TestCase%3a%20Json4KB).html>) 179.47 μs 143.95 μs 0.80
[ReadSingleSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20False%2c%20TestCase%3a%20Json400B).html>) 24.43 μs 19.51 μs 0.80
[ReadSingleSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20Json40KB).html>) 1.29 ms 979.76 μs 0.76
[ReadSingleSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20Json400B).html>) 19.22 μs 14.95 μs 0.78
[ReadSingleSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20False%2c%20TestCase%3a%20BroadTree).html>) 258.89 μs 218.15 μs 0.84
[ReadMultiSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20LotsOfNumbers).html>) 59.63 μs 50.59 μs 0.85
[ReadSpanEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact%3a%20False%2c%20TestCase%3a%20Json4KB).html>) 174.89 μs 142.72 μs 0.82
[ReadReturnBytes](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact%3a%20True%2c%20TestCase%3a%20BroadTree).html>) 242.75 μs 194.19 μs 0.80
[ReadSingleSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20Json4KB).html>) 135.19 μs 103.38 μs 0.76
[ReadSpanEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20Json400B).html>) 18.21 μs 14.20 μs 0.78
[ReadSpanEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20HelloWorld).html>) 1.81 μs 1.46 μs 0.81
[ReadSingleSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20LotsOfStrings).html>) 24.88 μs 20.53 μs 0.83
[ReadReturnBytes](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact%3a%20True%2c%20TestCase%3a%20LotsOfNumbers).html>) 54.71 μs 49.24 μs 0.90
[ReadSpanEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20DeepTree).html>) 85.58 μs 68.09 μs 0.80
[ReadMultiSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20HelloWorld).html>) 6.86 μs 4.61 μs 0.67
[ReadSpanEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20Json4KB).html>) 132.54 μs 101.57 μs 0.77
[ReadReturnBytes](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact%3a%20False%2c%20TestCase%3a%20Json40KB).html>) 2.31 ms 1.86 ms 0.81
[ReadMultiSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20Json40KB).html>) 1.49 ms 1.14 ms 0.77
[ReadReturnBytes](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact%3a%20True%2c%20TestCase%3a%20LotsOfStrings).html>) 32.86 μs 28.27 μs 0.86
[ReadMultiSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact%3a%20True%2c%20TestCase%3a%20Json4KB).html>) 165.96 μs 127.05 μs 0.77
[ReadReturnBytes](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact%3a%20False%2c%20TestCase%3a%20LotsOfStrings).html>) 43.36 μs 38.11 μs 0.88
[ReadMultiSpanSequenceEmptyLoop](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact%3a%20False%2c%20TestCase%3a%20Json40KB).html>) 1.96 ms 1.61 ms 0.82

graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Tests.Perf_Reader*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: HelloWorld) ```log [1627.502 ; 1679.589) | @@@@@ [1679.589 ; 1723.175) | @@@@@@@@@@ [1723.175 ; 1793.246) | @@ [1793.246 ; 1836.831) | @ [1836.831 ; 1880.417) | [1880.417 ; 1924.003) | [1924.003 ; 1967.589) | [1967.589 ; 2048.816) | @@@@@@@ [2048.816 ; 2094.256) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2094.256 ; 2137.842) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2137.842 ; 2192.992) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2192.992 ; 2245.157) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2245.157 ; 2334.506) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2334.506 ; 2411.091) | @@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: Json400B) ```log [24484.429 ; 25009.766) | @@@@ [25009.766 ; 25825.261) | @@@@@@@@@@@@ [25825.261 ; 26763.255) | @@ [26763.255 ; 27772.999) | [27772.999 ; 28782.742) | [28782.742 ; 29792.485) | [29792.485 ; 30502.632) | @@@ [30502.632 ; 31709.410) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [31709.410 ; 32755.255) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: Json40KB) ```log [1346126.747 ; 1381051.916) | @@@@@@ [1381051.916 ; 1436405.446) | @@@@@@@@@@@@ [1436405.446 ; 1485825.898) | [1485825.898 ; 1535246.350) | [1535246.350 ; 1584666.802) | [1584666.802 ; 1644717.422) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1644717.422 ; 1707970.842) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1707970.842 ; 1763076.759) | @@@@@@@@@@@@@@@@@@@@@@@@ [1763076.759 ; 1812497.211) | [1812497.211 ; 1869811.683) | @ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: Json40KB) ```log [ 941281.760 ; 981039.712) | @@@@@ [ 981039.712 ; 1003314.458) | @@@@@@@@@@@ [1003314.458 ; 1026838.171) | @@ [1026838.171 ; 1049112.917) | [1049112.917 ; 1071387.663) | [1071387.663 ; 1093662.409) | [1093662.409 ; 1115937.155) | [1115937.155 ; 1138211.901) | [1138211.901 ; 1160486.647) | [1160486.647 ; 1182761.393) | [1182761.393 ; 1205036.140) | [1205036.140 ; 1239400.752) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1239400.752 ; 1313002.333) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: LotsOfStrings) ```log [26577.467 ; 27595.709) | @@@@@@@@@@@@@@@@ [27595.709 ; 28465.496) | @ [28465.496 ; 29434.135) | [29434.135 ; 30402.775) | [30402.775 ; 31371.414) | [31371.414 ; 32340.054) | [32340.054 ; 33658.854) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [33658.854 ; 34823.930) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [34823.930 ; 35792.037) | @@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: LotsOfStrings) ```log [19528.821 ; 20285.616) | @@@@@@@@@@@@ [20285.616 ; 20718.508) | @@@@@ [20718.508 ; 21446.667) | @ [21446.667 ; 22065.875) | [22065.875 ; 22685.082) | [22685.082 ; 23580.257) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23580.257 ; 24389.121) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [24389.121 ; 25118.833) | @@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: HelloWorld) ```log [1860.595 ; 1912.446) | @@@ [1912.446 ; 1964.333) | @@@@@@@@@@@@ [1964.333 ; 2007.510) | @@ [2007.510 ; 2059.397) | [2059.397 ; 2111.284) | [2111.284 ; 2163.170) | [2163.170 ; 2215.057) | [2215.057 ; 2266.944) | [2266.944 ; 2332.986) | @ [2332.986 ; 2383.412) | @@@@@@ [2383.412 ; 2436.511) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2436.511 ; 2488.449) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2488.449 ; 2540.335) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2540.335 ; 2592.731) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2592.731 ; 2651.458) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2651.458 ; 2737.634) | @@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: Json4KB) ```log [140136.115 ; 143615.805) | @@@@@@@@ [143615.805 ; 149454.055) | @@@@@@@@@ [149454.055 ; 154768.571) | @ [154768.571 ; 159968.175) | [159968.175 ; 165167.778) | [165167.778 ; 170575.434) | @@@@@@@@@@@@@@@@ [170575.434 ; 177521.298) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [177521.298 ; 185057.546) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: Json400B) ```log [18873.532 ; 19573.283) | @@@@@@@@@@@@@ [19573.283 ; 20009.711) | @@@@ [20009.711 ; 20704.711) | @ [20704.711 ; 21475.658) | [21475.658 ; 22246.605) | [22246.605 ; 22999.470) | [22999.470 ; 23798.120) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23798.120 ; 24716.082) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [24716.082 ; 25342.283) | @@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json40KB) ```log [ 957217.009 ; 980840.520) | @@@@@@@@@@@ [ 980840.520 ; 1005567.499) | @@@@@@@ [1005567.499 ; 1029191.010) | [1029191.010 ; 1052814.521) | [1052814.521 ; 1076438.033) | [1076438.033 ; 1100061.544) | [1100061.544 ; 1123685.055) | [1123685.055 ; 1147308.566) | [1147308.566 ; 1170932.077) | [1170932.077 ; 1194555.589) | [1194555.589 ; 1236636.458) | @@@@@@@@@@@@@@@@@@@@@ [1236636.458 ; 1286155.848) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1286155.848 ; 1334895.323) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1334895.323 ; 1363552.874) | @ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json400B) ```log [14473.249 ; 14976.057) | @@@@@@@@@@ [14976.057 ; 15416.199) | @@@@@ [15416.199 ; 15971.801) | @ [15971.801 ; 16614.330) | @ [16614.330 ; 17254.062) | [17254.062 ; 17893.794) | [17893.794 ; 18288.693) | [18288.693 ; 18819.342) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18819.342 ; 19553.565) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [19553.565 ; 20220.392) | @@@@@@@@@@@@@@@@@@@@@@@@ [20220.392 ; 21074.318) | @ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: BroadTree) ```log [208303.914 ; 213193.146) | @@@@ [213193.146 ; 221350.801) | @@@@@@@@@@@@ [221350.801 ; 226723.416) | @ [226723.416 ; 233012.006) | [233012.006 ; 239863.675) | [239863.675 ; 246694.652) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [246694.652 ; 255774.248) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [255774.248 ; 262679.041) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [262679.041 ; 271355.942) | @ ``` #### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: LotsOfNumbers) ```log [48713.531 ; 50139.739) | @@@@@@@@ [50139.739 ; 51543.463) | @@@@@@ [51543.463 ; 53265.167) | @@@@ [53265.167 ; 54626.011) | [54626.011 ; 55986.855) | [55986.855 ; 57604.365) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [57604.365 ; 59676.420) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [59676.420 ; 61131.314) | @@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: False, TestCase: Json4KB) ```log [137535.243 ; 140495.963) | @@ [140495.963 ; 145796.810) | @@@@@@@@@@@@@@@@ [145796.810 ; 150736.467) | [150736.467 ; 155676.124) | [155676.124 ; 160615.781) | [160615.781 ; 165555.437) | [165555.437 ; 169381.152) | @@@@@@@@@@@@@@@@@@@@ [169381.152 ; 175909.229) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [175909.229 ; 181059.332) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: BroadTree) ```log [184061.133 ; 188282.075) | @@ [188282.075 ; 192928.465) | @@@@@@@@@ [192928.465 ; 200691.643) | @@@@@@ [200691.643 ; 208422.909) | [208422.909 ; 216154.176) | [216154.176 ; 223885.443) | [223885.443 ; 228672.117) | [228672.117 ; 236320.074) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [236320.074 ; 245458.189) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [245458.189 ; 255027.915) | @@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json4KB) ```log [ 99697.912 ; 102869.446) | @@@@@@@@ [102869.446 ; 105400.608) | @@@@@@@@@@ [105400.608 ; 107931.769) | [107931.769 ; 110462.931) | [110462.931 ; 112994.092) | [112994.092 ; 115525.254) | [115525.254 ; 118056.415) | [118056.415 ; 120587.577) | [120587.577 ; 123118.738) | [123118.738 ; 125649.900) | [125649.900 ; 130287.033) | @@@@@@@@@@@@@@@@@ [130287.033 ; 135611.960) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [135611.960 ; 140532.923) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: Json400B) ```log [13705.411 ; 14080.289) | @@@@@ [14080.289 ; 14398.797) | @@@@@@@@@@@@ [14398.797 ; 14986.480) | @ [14986.480 ; 15304.988) | [15304.988 ; 15623.495) | [15623.495 ; 15942.002) | [15942.002 ; 16260.510) | [16260.510 ; 16579.017) | [16579.017 ; 16897.525) | [16897.525 ; 17216.032) | [17216.032 ; 17600.020) | @@@@@@@@@@@@@@@@@@@ [17600.020 ; 18318.251) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [18318.251 ; 19269.547) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: HelloWorld) ```log [1395.032 ; 1445.072) | @@@@@@@@@ [1445.072 ; 1492.255) | @@@@@@@@ [1492.255 ; 1522.402) | @ [1522.402 ; 1575.999) | [1575.999 ; 1629.595) | [1629.595 ; 1671.137) | [1671.137 ; 1722.822) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1722.822 ; 1788.784) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1788.784 ; 1847.237) | @@@@@@@@@@@@@@@@@@@@@@@@ [1847.237 ; 1887.662) | @@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: LotsOfStrings) ```log [20067.139 ; 20838.634) | @@@@@@@@@@@@@@@@ [20838.634 ; 21330.053) | @ [21330.053 ; 21978.637) | [21978.637 ; 22627.220) | [22627.220 ; 23275.804) | [23275.804 ; 23994.860) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23994.860 ; 24894.743) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [24894.743 ; 25939.105) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: LotsOfNumbers) ```log [47376.888 ; 48700.569) | @@@@@@ [48700.569 ; 49930.477) | @@@@@@@@@ [49930.477 ; 51392.735) | @@ [51392.735 ; 52898.361) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [52898.361 ; 54744.516) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [54744.516 ; 56390.702) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [56390.702 ; 57648.598) | @@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: DeepTree) ```log [65304.082 ; 67915.784) | @@@@@@@@@@ [67915.784 ; 70656.635) | @@@@@@@@ [70656.635 ; 73394.264) | [73394.264 ; 76131.892) | [76131.892 ; 78869.521) | [78869.521 ; 81750.888) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [81750.888 ; 84932.251) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [84932.251 ; 87856.675) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: HelloWorld) ```log [4532.027 ; 4708.049) | @@@@@@@@@@@@@@@ [4708.049 ; 4876.800) | @@@ [4876.800 ; 5052.823) | [5052.823 ; 5228.846) | [5228.846 ; 5404.869) | [5404.869 ; 5580.892) | [5580.892 ; 5756.915) | [5756.915 ; 5932.938) | [5932.938 ; 6108.960) | [6108.960 ; 6284.983) | [6284.983 ; 6461.006) | [6461.006 ; 6719.962) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6719.962 ; 6895.985) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6895.985 ; 7057.327) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: Json4KB) ```log [ 98894.466 ; 101514.636) | @@@@ [101514.636 ; 103833.960) | @@@@@@@@@@@ [103833.960 ; 106265.204) | @@ [106265.204 ; 108584.528) | [108584.528 ; 110903.851) | [110903.851 ; 113223.175) | [113223.175 ; 115542.499) | [115542.499 ; 117861.823) | [117861.823 ; 120181.147) | [120181.147 ; 122500.470) | [122500.470 ; 124819.794) | [124819.794 ; 129263.240) | @@@@@@@@@@@@@@@@@@@@@@@@@ [129263.240 ; 134555.625) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [134555.625 ; 140078.134) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: Json40KB) ```log [1774563.254 ; 1823858.117) | @@@@@@ [1823858.117 ; 1882493.982) | @@@@@@@@@@@@ [1882493.982 ; 1953554.159) | [1953554.159 ; 2024614.336) | [2024614.336 ; 2095674.513) | [2095674.513 ; 2135480.620) | [2135480.620 ; 2218597.506) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2218597.506 ; 2304059.497) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2304059.497 ; 2371762.327) | @@@@@@@@@@@@@@ [2371762.327 ; 2453793.034) | @ ``` #### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json40KB) ```log [1110101.466 ; 1140198.989) | @@ [1140198.989 ; 1166407.679) | @@@@@@@@@@@ [1166407.679 ; 1192873.012) | @@@@@ [1192873.012 ; 1219081.701) | [1219081.701 ; 1245290.391) | [1245290.391 ; 1271499.081) | [1271499.081 ; 1297707.771) | [1297707.771 ; 1323916.461) | [1323916.461 ; 1350125.150) | [1350125.150 ; 1376333.840) | [1376333.840 ; 1402542.530) | [1402542.530 ; 1453367.174) | @@@@@@@@@@@@@ [1453367.174 ; 1511120.884) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1511120.884 ; 1556703.697) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: LotsOfStrings) ```log [27234.313 ; 28049.374) | @@@@@@ [28049.374 ; 28692.572) | @@@@@@@@@@ [28692.572 ; 29511.107) | @@ [29511.107 ; 30289.868) | [30289.868 ; 31068.630) | [31068.630 ; 31755.311) | @@ [31755.311 ; 32927.530) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [32927.530 ; 34026.848) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [34026.848 ; 34865.391) | @@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json4KB) ```log [121954.378 ; 127146.232) | @@@@@@@@@@@@@@@@ [127146.232 ; 129891.426) | @@ [129891.426 ; 132876.557) | [132876.557 ; 135861.689) | [135861.689 ; 138846.820) | [138846.820 ; 141831.951) | [141831.951 ; 144817.082) | [144817.082 ; 147802.214) | [147802.214 ; 150787.345) | [150787.345 ; 153772.476) | [153772.476 ; 156757.608) | [156757.608 ; 160731.642) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [160731.642 ; 167314.009) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [167314.009 ; 172113.773) | @@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: LotsOfStrings) ```log [36490.307 ; 37655.948) | @@@@@@ [37655.948 ; 38870.990) | @@@@@@@@@@@ [38870.990 ; 39898.277) | @ [39898.277 ; 41052.127) | @ [41052.127 ; 42508.252) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [42508.252 ; 44662.634) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: Json40KB) ```log [1563802.272 ; 1627012.388) | @@@@@@@@@@@@@@@@ [1627012.388 ; 1661866.042) | @@ [1661866.042 ; 1716472.878) | [1716472.878 ; 1771079.714) | [1771079.714 ; 1825686.549) | [1825686.549 ; 1862947.010) | [1862947.010 ; 1913308.197) | @@@@@@@@@@@@@@@@@@@@ [1913308.197 ; 2022260.383) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Buffers.Tests.RentReturnArrayPoolTests<Byte> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SingleSerial]() | 6.37 μs | 5.12 μs | 0.80 | | | [SingleParallel]() | 3.93 μs | 3.37 μs | 0.86 | | | [SingleSerial]() | 36.62 μs | 28.11 μs | 0.77 | | | [ProducerConsumer]() | 40.89 μs | 32.87 μs | 0.80 | | | [ProducerConsumer]() | 37.89 μs | 30.56 μs | 0.81 | | | [SingleSerial]() | 36.14 μs | 27.77 μs | 0.77 | | | [SingleSerial]() | 45.91 μs | 36.50 μs | 0.80 | | | [SingleSerial]() | 7.54 μs | 5.72 μs | 0.76 | | | [SingleParallel]() | 12.10 μs | 9.76 μs | 0.81 | | | [SingleSerial]() | 47.42 μs | 37.30 μs | 0.79 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Buffers.Tests.RentReturnArrayPoolTests<Byte>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleSerial(RentalSize: 4096, ManipulateArray: False, Async: True, UseSharedPool: True) ```log [4481.014 ; 4576.691) | @ [4576.691 ; 4672.369) | [4672.369 ; 4768.046) | [4768.046 ; 4924.338) | [4924.338 ; 5096.576) | @@@@ [5096.576 ; 5272.479) | @@@@@@@@@@@@@ [5272.479 ; 5463.833) | [5463.833 ; 5655.188) | [5655.188 ; 5846.542) | [5846.542 ; 6000.908) | [6000.908 ; 6190.407) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6190.407 ; 6513.386) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleParallel(RentalSize: 4096, ManipulateArray: False, Async: True, UseSharedPool: True) ```log [3232.747 ; 3326.021) | @ [3326.021 ; 3425.153) | @@@@@@@@@ [3425.153 ; 3541.420) | @@@@@@@@ [3541.420 ; 3690.624) | @@@@@@@@@@@@@@@@@@@@@@ [3690.624 ; 3834.047) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3834.047 ; 3996.137) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3996.137 ; 4096.340) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4096.340 ; 4195.473) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4195.473 ; 4298.055) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4298.055 ; 4407.110) | @@@@@@@@@@@@@@@@@@@@ [4407.110 ; 4519.090) | @@@@@@@@@@@@@@@@@ [4519.090 ; 4637.393) | @@@@@@@@@@@@@ [4637.393 ; 4737.099) | @@@@ [4737.099 ; 4836.231) | @@ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleSerial(RentalSize: 4096, ManipulateArray: True, Async: False, UseSharedPool: False) ```log [27808.100 ; 28560.910) | @@@@@@ [28560.910 ; 29605.923) | @@@@@@@@@@@ [29605.923 ; 30358.734) | [30358.734 ; 31111.545) | [31111.545 ; 31864.355) | [31864.355 ; 32808.985) | [32808.985 ; 33561.796) | @ [33561.796 ; 34314.606) | [34314.606 ; 35067.417) | [35067.417 ; 35820.228) | [35820.228 ; 37072.031) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [37072.031 ; 37861.053) | @ [37861.053 ; 38613.863) | [38613.863 ; 39741.527) | @ [39741.527 ; 41297.196) | @@@@ [41297.196 ; 42802.818) | [42802.818 ; 44308.439) | [44308.439 ; 45814.061) | [45814.061 ; 47319.682) | [47319.682 ; 48825.303) | [48825.303 ; 50330.925) | [50330.925 ; 51836.546) | [51836.546 ; 53342.168) | [53342.168 ; 54847.789) | [54847.789 ; 56353.410) | [56353.410 ; 57859.032) | [57859.032 ; 59364.653) | [59364.653 ; 61877.268) | @ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.ProducerConsumer(RentalSize: 4096, ManipulateArray: True, Async: True, UseSharedPool: True) ```log [31918.665 ; 32623.310) | @@@ [32623.310 ; 33645.599) | @@@@@@@@@@@@@ [33645.599 ; 34325.308) | @ [34325.308 ; 35658.643) | [35658.643 ; 37097.047) | [37097.047 ; 37846.482) | @ [37846.482 ; 39179.818) | [39179.818 ; 40544.425) | @@@@@@@@@@@@@@@ [40544.425 ; 42110.293) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [42110.293 ; 43156.820) | @@@@ [43156.820 ; 45819.385) | @@@@@@@@ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.ProducerConsumer(RentalSize: 4096, ManipulateArray: True, Async: True, UseSharedPool: False) ```log [30481.051 ; 31618.278) | @@@@@@@@@@@@@@@@@@ [31618.278 ; 32787.787) | [32787.787 ; 33957.295) | [33957.295 ; 35126.804) | [35126.804 ; 36296.313) | [36296.313 ; 37581.051) | [37581.051 ; 38849.343) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [38849.343 ; 39831.984) | @@ [39831.984 ; 41754.275) | @@@@@@ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleSerial(RentalSize: 4096, ManipulateArray: True, Async: False, UseSharedPool: True) ```log [27405.080 ; 28064.703) | @@@@@@ [28064.703 ; 28639.142) | [28639.142 ; 29250.108) | @@@@@@@@@@@@ [29250.108 ; 29861.073) | [29861.073 ; 30472.038) | [30472.038 ; 31083.004) | [31083.004 ; 31693.969) | [31693.969 ; 32304.934) | [32304.934 ; 32915.899) | [32915.899 ; 33526.865) | [33526.865 ; 34137.830) | [34137.830 ; 34748.795) | [34748.795 ; 35862.667) | [35862.667 ; 37315.637) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [37315.637 ; 38537.567) | [38537.567 ; 40288.164) | @@@@@ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleSerial(RentalSize: 4096, ManipulateArray: True, Async: True, UseSharedPool: True) ```log [35660.768 ; 36996.215) | @@@@@@@@@@@@@@@ [36996.215 ; 38237.821) | @@ [38237.821 ; 39712.654) | [39712.654 ; 41187.487) | [41187.487 ; 42662.320) | [42662.320 ; 44137.153) | [44137.153 ; 45432.319) | [45432.319 ; 46917.300) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [46917.300 ; 48355.649) | @ [48355.649 ; 50009.686) | @@@ [50009.686 ; 52379.869) | @@@ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleSerial(RentalSize: 4096, ManipulateArray: False, Async: True, UseSharedPool: False) ```log [5639.113 ; 5805.112) | @@@ [5805.112 ; 5943.877) | @@@@@@ [5943.877 ; 6181.197) | @@@@@@@@ [6181.197 ; 6415.682) | [6415.682 ; 6650.167) | [6650.167 ; 6884.652) | [6884.652 ; 7098.993) | [7098.993 ; 7348.077) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7348.077 ; 7621.185) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleParallel(RentalSize: 4096, ManipulateArray: False, Async: True, UseSharedPool: False) ```log [ 9060.568 ; 9254.024) | @@@@@ [ 9254.024 ; 9576.014) | @@@@@ [ 9576.014 ; 9895.161) | @@@@@ [ 9895.161 ; 10118.843) | @ [10118.843 ; 10376.304) | @ [10376.304 ; 10779.383) | @ [10779.383 ; 11018.789) | @@@ [11018.789 ; 11422.121) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11422.121 ; 11868.630) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [11868.630 ; 12300.270) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12300.270 ; 12617.262) | @@@@@@@@@@@@@ ``` #### System.Buffers.Tests.RentReturnArrayPoolTests.SingleSerial(RentalSize: 4096, ManipulateArray: True, Async: True, UseSharedPool: False) ```log [36681.985 ; 37980.369) | @@@@@@@@@@@@@@@ [37980.369 ; 38800.436) | @ [38800.436 ; 39722.221) | [39722.221 ; 41280.997) | @ [41280.997 ; 42793.611) | [42793.611 ; 44306.226) | [44306.226 ; 45818.840) | [45818.840 ; 46753.390) | [46753.390 ; 48021.693) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [48021.693 ; 49952.066) | @@@@ [49952.066 ; 51892.642) | @@ [51892.642 ; 53775.322) | @@@@@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in System.Tests.Perf_Single

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[ToStringWithFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.ToStringWithFormat(value%3a%20-3.4028235E%2b38%2c%20format%3a%20%22F50%22).html>) 37.87 μs 30.03 μs 0.79
[ToStringWithFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.ToStringWithFormat(value%3a%2012345%2c%20format%3a%20%22F50%22).html>) 10.71 μs 7.75 μs 0.72
[ToStringWithFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.ToStringWithFormat(value%3a%203.4028235E%2b38%2c%20format%3a%20%22F50%22).html>) 37.46 μs 29.71 μs 0.79
[ToString](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.ToString(value%3a%203.4028235E%2b38).html>) 7.11 μs 4.60 μs 0.65
[ToStringWithFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.ToStringWithFormat(value%3a%2012345%2c%20format%3a%20%22E%22).html>) 5.11 μs 3.41 μs 0.67
[ToStringWithFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.ToStringWithFormat(value%3a%20-3.4028235E%2b38%2c%20format%3a%20%22G17%22).html>) 6.80 μs 4.53 μs 0.67
[ToStringWithFormat](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.ToStringWithFormat(value%3a%2012345%2c%20format%3a%20%22G17%22).html>) 7.86 μs 5.42 μs 0.69
[Parse](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.Parse(value%3a%20%2212345%22).html>) 912.31 ns 836.03 ns 0.92
[ToStringWithCultureInfo](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.ToStringWithCultureInfo(value%3a%203.4028235E%2b38%2c%20culture%3a%20zh).html>) 7.10 μs 4.65 μs 0.65
[IsNaN](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.IsNaN(value%3a%20NaN).html>) 11.95 ms 8.56 ms 0.72
[ToString](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/System.Tests.Perf_Single.ToString(value%3a%2012345).html>) 4.42 μs 2.75 μs 0.62

graph graph graph graph graph graph graph graph graph graph graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Single*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Single.ToStringWithFormat(value: -3.4028235E+38, format: "F50") ```log [29463.744 ; 30104.018) | @@@@@@@@@@@@@@ [30104.018 ; 31300.374) | @@@ [31300.374 ; 31940.648) | [31940.648 ; 32580.922) | [32580.922 ; 33221.195) | [33221.195 ; 33861.469) | [33861.469 ; 34501.743) | [34501.743 ; 35142.017) | [35142.017 ; 35782.291) | [35782.291 ; 36422.565) | [36422.565 ; 37204.712) | @@@@@@@@@@@@@@@@@@@@@@@ [37204.712 ; 38682.913) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [38682.913 ; 40022.461) | @@@@@@@@@@@@ [40022.461 ; 41404.133) | @ ``` #### System.Tests.Perf_Single.ToStringWithFormat(value: 12345, format: "F50") ```log [ 7593.139 ; 7826.296) | @@@@@@@@@@@@@@@@@@ [ 7826.296 ; 8059.453) | [ 8059.453 ; 8292.609) | [ 8292.609 ; 8525.766) | [ 8525.766 ; 8758.923) | [ 8758.923 ; 8992.079) | [ 8992.079 ; 9225.236) | [ 9225.236 ; 9458.393) | [ 9458.393 ; 9691.549) | [ 9691.549 ; 9924.706) | [ 9924.706 ; 10157.862) | [10157.862 ; 10472.624) | @@@@@@@@@@@@@@@@@@@@@@@ [10472.624 ; 10705.781) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [10705.781 ; 11137.978) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Single.ToStringWithFormat(value: 3.4028235E+38, format: "F50") ```log [29176.992 ; 29800.323) | @@@@@@@@@@@@@ [29800.323 ; 30568.556) | @@@@ [30568.556 ; 31191.887) | [31191.887 ; 31815.217) | [31815.217 ; 32438.548) | [32438.548 ; 33061.879) | [33061.879 ; 33685.209) | [33685.209 ; 34308.540) | [34308.540 ; 34931.871) | [34931.871 ; 35555.201) | [35555.201 ; 36912.623) | @@@ [36912.623 ; 38315.089) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [38315.089 ; 39758.462) | @@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Single.ToString(value: 3.4028235E+38) ```log [4538.090 ; 4721.546) | @@@@@@@@@@@@@@@@ [4721.546 ; 4873.045) | @@ [4873.045 ; 5056.500) | [5056.500 ; 5239.956) | [5239.956 ; 5423.411) | [5423.411 ; 5606.867) | [5606.867 ; 5790.322) | [5790.322 ; 5973.778) | [5973.778 ; 6157.233) | [6157.233 ; 6340.689) | [6340.689 ; 6524.144) | [6524.144 ; 6707.600) | [6707.600 ; 6926.531) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6926.531 ; 7109.987) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7109.987 ; 7322.762) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Single.ToStringWithFormat(value: 12345, format: "E") ```log [3205.157 ; 3306.320) | @@ [3306.320 ; 3437.860) | @@@@@@@@@@@@ [3437.860 ; 3551.181) | @@@@ [3551.181 ; 3682.721) | [3682.721 ; 3814.260) | [3814.260 ; 3945.800) | [3945.800 ; 4077.340) | [4077.340 ; 4208.879) | [4208.879 ; 4340.419) | [4340.419 ; 4471.959) | [4471.959 ; 4603.498) | [4603.498 ; 4711.473) | [4711.473 ; 4826.753) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4826.753 ; 4958.293) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4958.293 ; 5116.306) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [5116.306 ; 5272.914) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Single.ToStringWithFormat(value: -3.4028235E+38, format: "G17") ```log [4365.556 ; 4490.521) | @ [4490.521 ; 4656.059) | @@@@@@@@@@@@@@@ [4656.059 ; 4784.056) | @@ [4784.056 ; 4949.594) | [4949.594 ; 5115.132) | [5115.132 ; 5280.670) | [5280.670 ; 5446.207) | [5446.207 ; 5611.745) | [5611.745 ; 5777.283) | [5777.283 ; 5942.821) | [5942.821 ; 6108.359) | [6108.359 ; 6273.897) | [6273.897 ; 6470.712) | [6470.712 ; 6616.588) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6616.588 ; 6782.126) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6782.126 ; 7044.467) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Single.ToStringWithFormat(value: 12345, format: "G17") ```log [5335.389 ; 5514.412) | @@@@@@@@@@@@@@@@ [5514.412 ; 5632.780) | @ [5632.780 ; 5811.803) | [5811.803 ; 5990.825) | [5990.825 ; 6169.848) | [6169.848 ; 6348.870) | [6348.870 ; 6527.892) | [6527.892 ; 6706.915) | [6706.915 ; 6885.937) | [6885.937 ; 7064.960) | [7064.960 ; 7243.982) | [7243.982 ; 7423.005) | [7423.005 ; 7734.747) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7734.747 ; 8059.465) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Single.Parse(value: "12345") ```log [805.642 ; 832.155) | @@@@@@@@@@@@ [832.155 ; 856.900) | @@@@@@ [856.900 ; 878.937) | @@@@@@@@@@@@@@@@@ [878.937 ; 909.296) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [909.296 ; 943.977) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Single.ToStringWithCultureInfo(value: 3.4028235E+38, culture: zh) ```log [4555.510 ; 4739.322) | @@@@@@@@@@@@@@@@@@ [4739.322 ; 4923.134) | [4923.134 ; 5106.946) | [5106.946 ; 5290.758) | [5290.758 ; 5474.570) | [5474.570 ; 5658.382) | [5658.382 ; 5842.194) | [5842.194 ; 6026.006) | [6026.006 ; 6209.818) | [6209.818 ; 6393.631) | [6393.631 ; 6577.443) | [6577.443 ; 6725.290) | [6725.290 ; 6884.826) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6884.826 ; 7068.638) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [7068.638 ; 7231.460) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Tests.Perf_Single.IsNaN(value: NaN) ```log [ 8412409.556 ; 8694915.002) | @@@@@@@@@@@@@@@@@ [ 8694915.002 ; 8963952.145) | [ 8963952.145 ; 9232989.288) | [ 9232989.288 ; 9502026.430) | [ 9502026.430 ; 9787156.150) | [ 9787156.150 ; 10056193.293) | @ [10056193.293 ; 10325230.435) | [10325230.435 ; 10594267.578) | [10594267.578 ; 10863304.721) | [10863304.721 ; 11132341.864) | [11132341.864 ; 11401379.006) | [11401379.006 ; 11670416.149) | [11670416.149 ; 12133452.713) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [12133452.713 ; 12425280.098) | [12425280.098 ; 12742446.344) | @@ ``` #### System.Tests.Perf_Single.ToString(value: 12345) ```log [2562.306 ; 2690.242) | @@@@@@ [2690.242 ; 2816.144) | @@@@@@@@@@@@ [2816.144 ; 2942.047) | [2942.047 ; 3067.949) | [3067.949 ; 3193.852) | [3193.852 ; 3319.754) | [3319.754 ; 3445.657) | [3445.657 ; 3571.559) | [3571.559 ; 3697.462) | [3697.462 ; 3823.364) | [3823.364 ; 3949.267) | [3949.267 ; 4095.230) | @@@@@@ [4095.230 ; 4221.282) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4221.282 ; 4347.185) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4347.185 ; 4477.163) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [4477.163 ; 4570.014) | @@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Buffers.Tests.ReadOnlySequenceTests<Char> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SliceMemory]() | 157.96 ns | 125.46 ns | 0.79 | | | [SliceTenSegments]() | 391.15 ns | 295.18 ns | 0.75 | | | [IterateGetPositionMemory]() | 1.24 μs | 1.00 μs | 0.80 | | | [IterateForEachSingleSegment]() | 455.40 ns | 387.96 ns | 0.85 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Buffers.Tests.ReadOnlySequenceTests<Char>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Buffers.Tests.ReadOnlySequenceTests.SliceMemory ```log [122.602 ; 126.226) | @@@@@@@@@@@@ [126.226 ; 129.281) | @@@@@@ [129.281 ; 132.337) | [132.337 ; 135.393) | [135.393 ; 138.449) | [138.449 ; 141.505) | [141.505 ; 144.560) | [144.560 ; 147.616) | [147.616 ; 150.672) | [150.672 ; 155.029) | @@@@@@@@@@@ [155.029 ; 161.269) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [161.269 ; 164.592) | @@@@@@@@@@@@@ [164.592 ; 168.437) | @@@@@@@@@@@ [168.437 ; 175.220) | @@@@@@@@@@@@@@@@@@@ [175.220 ; 178.822) | @@ ``` #### System.Buffers.Tests.ReadOnlySequenceTests.SliceTenSegments ```log [284.752 ; 292.840) | @@@@@@@@@@ [292.840 ; 301.657) | @@@ [301.657 ; 309.745) | @@@@ [309.745 ; 317.786) | @ [317.786 ; 325.874) | [325.874 ; 333.962) | [333.962 ; 342.051) | [342.051 ; 350.139) | [350.139 ; 358.227) | [358.227 ; 366.315) | [366.315 ; 377.769) | @@ [377.769 ; 386.126) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [386.126 ; 402.249) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [402.249 ; 416.809) | @@@@@@@@@@@@@@@@@@@@ ``` #### System.Buffers.Tests.ReadOnlySequenceTests.IterateGetPositionMemory ```log [ 982.672 ; 1006.402) | @@@@@@@@ [1006.402 ; 1041.128) | @@@@@@@ [1041.128 ; 1070.365) | @@ [1070.365 ; 1110.715) | @ [1110.715 ; 1148.167) | [1148.167 ; 1181.744) | [1181.744 ; 1224.213) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1224.213 ; 1271.845) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1271.845 ; 1304.442) | @@@@@@ [1304.442 ; 1379.589) | @@@@@@ ``` #### System.Buffers.Tests.ReadOnlySequenceTests.IterateForEachSingleSegment ```log [369.599 ; 381.279) | @@@@@@@ [381.279 ; 396.413) | @@@@@@@@@ [396.413 ; 405.002) | @ [405.002 ; 413.184) | @ [413.184 ; 426.431) | [426.431 ; 441.859) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [441.859 ; 457.394) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [457.394 ; 477.900) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Threading.Tasks.ValueTaskPerfTest Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [CreateAndAwait_FromDelayedTCS]() | 2.91 μs | 2.70 μs | 0.93 | | | [CreateAndAwait_FromYieldingAsyncMethod]() | 8.98 μs | 7.53 μs | 0.84 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Threading.Tasks.ValueTaskPerfTest*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Threading.Tasks.ValueTaskPerfTest.CreateAndAwait_FromDelayedTCS ```log [2648.155 ; 2734.479) | @@@@@@@@@@@@@@@@@ [2734.479 ; 2802.751) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2802.751 ; 2898.618) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2898.618 ; 3044.370) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Threading.Tasks.ValueTaskPerfTest.CreateAndAwait_FromYieldingAsyncMethod ```log [7314.501 ; 7606.144) | @@@@@@@@@@@@@@@ [7606.144 ; 7872.353) | @@@ [7872.353 ; 8175.530) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8175.530 ; 8496.356) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8496.356 ; 8675.520) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [8675.520 ; 9014.664) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9014.664 ; 9198.527) | @@@@@@@@@@@@@@@@@@@ [9198.527 ; 9549.869) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Tests.Perf_Int32 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Parse]() | 162.68 ns | 140.06 ns | 0.86 | | | [Parse]() | 401.50 ns | 351.50 ns | 0.88 | | | [Parse]() | 287.63 ns | 236.44 ns | 0.82 | | | [ToString]() | 717.23 ns | 585.23 ns | 0.82 | | | [ParseSpan]() | 287.58 ns | 244.94 ns | 0.85 | | | [TryParseSpan]() | 245.46 ns | 196.89 ns | 0.80 | | | [TryParse]() | 246.88 ns | 192.83 ns | 0.78 | | | [ToString]() | 31.30 ns | 20.37 ns | 0.65 | | | ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Tests.Perf_Int32*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Tests.Perf_Int32.Parse(value: "4") ```log [138.590 ; 142.118) | @ [142.118 ; 145.389) | @@@@@ [145.389 ; 149.846) | @@@@@@@ [149.846 ; 155.806) | @@@@@@@@@@@@@@@@@@@@@@ [155.806 ; 161.911) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [161.911 ; 167.859) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [167.859 ; 174.504) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [174.504 ; 178.315) | @@@@@@@ [178.315 ; 182.023) | @@@ [182.023 ; 185.966) | [185.966 ; 192.927) | @@@@ [192.927 ; 199.440) | @ [199.440 ; 205.335) | [205.335 ; 211.230) | [211.230 ; 217.124) | [217.124 ; 223.019) | [223.019 ; 228.914) | [228.914 ; 236.151) | @ ``` #### System.Tests.Perf_Int32.Parse(value: "-2147483648") ```log [330.450 ; 340.175) | @@@@@@@@@@ [340.175 ; 347.320) | @@ [347.320 ; 359.449) | @@@@@@ [359.449 ; 370.429) | [370.429 ; 383.045) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [383.045 ; 396.648) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [396.648 ; 409.083) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [409.083 ; 419.517) | @@@@ [419.517 ; 428.786) | [428.786 ; 438.055) | [438.055 ; 447.324) | [447.324 ; 462.146) | @ ``` #### System.Tests.Perf_Int32.Parse(value: "12345") ```log [218.254 ; 225.858) | @@@@ [225.858 ; 233.907) | @@@@@@@@@@ [233.907 ; 239.084) | @@ [239.084 ; 246.915) | @@ [246.915 ; 254.914) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [254.914 ; 263.903) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [263.903 ; 269.644) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [269.644 ; 278.158) | @@@@@@@@@@@@@@@@@@@@ [278.158 ; 284.756) | @@@@ [284.756 ; 296.240) | @@@ ``` #### System.Tests.Perf_Int32.ToString(value: -2147483648) ```log [552.973 ; 578.567) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [578.567 ; 603.769) | @@@@@@@@@@@@@@@@@@@@@@@ [603.769 ; 619.805) | @@ [619.805 ; 635.904) | [635.904 ; 661.498) | @@ [661.498 ; 691.275) | @@ [691.275 ; 716.870) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [716.870 ; 741.066) | @@@@@@@@@@@ [741.066 ; 766.660) | [766.660 ; 792.254) | [792.254 ; 823.296) | @@ ``` #### System.Tests.Perf_Int32.ParseSpan(value: "12345") ```log [238.683 ; 248.540) | @@@@@@@@@@@@ [248.540 ; 253.837) | @@@@ [253.837 ; 262.578) | @@ [262.578 ; 273.071) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [273.071 ; 282.971) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [282.971 ; 292.802) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [292.802 ; 303.759) | @@@@@@@@@@@@ [303.759 ; 313.411) | @ ``` #### System.Tests.Perf_Int32.TryParseSpan(value: "12345") ```log [191.125 ; 198.855) | @@@@@ [198.855 ; 203.853) | @@@@ [203.853 ; 210.845) | @@@@@ [210.845 ; 218.461) | @@ [218.461 ; 226.272) | @@@@@@@@@@@@@@@@@@@@@@@@@@ [226.272 ; 234.840) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [234.840 ; 244.312) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [244.312 ; 249.492) | @@@@@@@@@@@@@@@@@ [249.492 ; 255.589) | @@@@@@@@@@ ``` #### System.Tests.Perf_Int32.TryParse(value: "12345") ```log [192.021 ; 199.261) | @@@@@@ [199.261 ; 204.206) | [204.206 ; 209.394) | @@@@@@@@ [209.394 ; 217.923) | @@@@ [217.923 ; 224.066) | [224.066 ; 231.352) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [231.352 ; 239.081) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [239.081 ; 245.036) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [245.036 ; 252.978) | @@@@@@@@@@@@@@@@@ [252.978 ; 258.465) | @@@@ [258.465 ; 263.861) | @@ ``` #### System.Tests.Perf_Int32.ToString(value: 4) ```log [ 3.475 ; 4.298) | @ [ 4.298 ; 5.121) | [ 5.121 ; 5.944) | [ 5.944 ; 6.767) | [ 6.767 ; 7.590) | [ 7.590 ; 8.413) | [ 8.413 ; 9.236) | [ 9.236 ; 10.059) | [10.059 ; 10.882) | [10.882 ; 11.706) | [11.706 ; 12.529) | [12.529 ; 13.352) | [13.352 ; 14.175) | [14.175 ; 14.998) | [14.998 ; 15.821) | [15.821 ; 16.894) | [16.894 ; 17.799) | @ [17.799 ; 18.779) | @@ [18.779 ; 19.810) | @@@@@@@@@@@@@@@@@ [19.810 ; 20.644) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [20.644 ; 21.467) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [21.467 ; 22.296) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [22.296 ; 23.232) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [23.232 ; 24.316) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [24.316 ; 25.564) | @@@@@@@@@@@@@@@@@@@@ [25.564 ; 26.384) | @@@@ [26.384 ; 27.387) | @@ [27.387 ; 28.210) | @@ [28.210 ; 29.036) | @ [29.036 ; 29.670) | [29.670 ; 30.493) | @ [30.493 ; 31.317) | [31.317 ; 32.108) | [32.108 ; 32.932) | @ [32.932 ; 33.755) | [33.755 ; 34.826) | [34.826 ; 35.649) | @@ ``` ### 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)
performanceautofiler[bot] commented 3 years ago

Run Information

Architecture x64
OS ubuntu 18.04
Baseline 1b1ff800dae81574d9ecea0d106df9c71a6733da
Compare a078b5501eb11e2d89cccfeee052e0182c2b863c

Improvemnts in Benchstone.BenchI.AddArray

Benchmark Baseline Test Test/Base Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[Test](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/master_x64_ubuntu 18.04_LLVM=false_MonoAOT=false_MonoInterpreter=true_RunKind=micro_mono/Benchstone.BenchI.AddArray.Test.html>) 416.68 μs 264.58 μs 0.63

graph Historical Data in Reporting System

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.AddArray*'
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.AddArray.Test ```log [260616.312 ; 273007.312) | @@@@@@@@@@@@@@@@@ [273007.312 ; 285398.311) | [285398.311 ; 297789.311) | [297789.311 ; 310180.310) | [310180.310 ; 322571.310) | [322571.310 ; 334962.309) | [334962.309 ; 347353.309) | [347353.309 ; 359744.308) | [359744.308 ; 372135.308) | [372135.308 ; 384526.307) | [384526.307 ; 396917.306) | [396917.306 ; 407255.658) | [407255.658 ; 421099.931) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [421099.931 ; 433490.931) | @@@@@@ [433490.931 ; 446930.212) | @ [446930.212 ; 465971.869) | @@ [465971.869 ; 478703.717) | @@ [478703.717 ; 491094.717) | @@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Xml.Linq.Perf_XDocument Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Parse]() | 58.88 μs | 48.04 μs | 0.82 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Xml.Linq.Perf_XDocument*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Xml.Linq.Perf_XDocument.Parse ```log [46926.367 ; 48684.924) | @@@@@@@@@@@@@@@@@ [48684.924 ; 50443.482) | [50443.482 ; 52202.039) | [52202.039 ; 53960.597) | [53960.597 ; 55719.155) | [55719.155 ; 57202.590) | @@@@@ [57202.590 ; 58961.148) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [58961.148 ; 61814.839) | @@@@@@@@ [61814.839 ; 63573.396) | [63573.396 ; 65616.107) | [65616.107 ; 68540.011) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SerializeToString]() | 12.30 μs | 9.24 μs | 0.75 | | | [SerializeToStream]() | 16.09 μs | 12.66 μs | 0.79 | | | [SerializeToUtf8Bytes]() | 10.02 μs | 7.59 μs | 0.76 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToString ```log [ 9076.188 ; 9308.837) | @@@@@@@@@@@@@@@ [ 9308.837 ; 9693.940) | @@@ [ 9693.940 ; 9926.590) | [ 9926.590 ; 10159.239) | [10159.239 ; 10391.888) | [10391.888 ; 10624.537) | [10624.537 ; 10857.186) | [10857.186 ; 11089.835) | [11089.835 ; 11322.485) | [11322.485 ; 11555.134) | [11555.134 ; 11787.783) | [11787.783 ; 12080.235) | @@@@@@@@@@@@@@@@@@@@@ [12080.235 ; 12550.425) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToStream ```log [12375.129 ; 12825.605) | @@@@@@@@@@@@@@@@@ [12825.605 ; 13268.563) | @ [13268.563 ; 13771.666) | [13771.666 ; 14274.769) | [14274.769 ; 14777.872) | [14777.872 ; 15280.976) | [15280.976 ; 15791.776) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [15791.776 ; 16392.474) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.WriteJson.SerializeToUtf8Bytes ```log [7339.371 ; 7505.813) | @ [7505.813 ; 7690.820) | @@@@@@@@@@@@@@@@ [7690.820 ; 7914.763) | @ [7914.763 ; 8099.769) | [8099.769 ; 8284.776) | [8284.776 ; 8469.782) | [8469.782 ; 8654.789) | [8654.789 ; 8839.795) | [8839.795 ; 9024.801) | [9024.801 ; 9209.808) | [9209.808 ; 9394.814) | [9394.814 ; 9579.821) | [9579.821 ; 9869.268) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@ [9869.268 ; 10248.297) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.Midpoint Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 6.06 secs | 4.46 secs | 0.74 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.Midpoint*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.Midpoint.Test ```log [4384806726.921 ; 4515051444.013) | @@@@@@@@@@@@@@ [4515051444.013 ; 4631771321.201) | @@@ [4631771321.201 ; 4755006545.668) | [4755006545.668 ; 4885251262.760) | @ [4885251262.760 ; 5015495979.853) | [5015495979.853 ; 5145740696.945) | [5145740696.945 ; 5275985414.037) | [5275985414.037 ; 5406230131.129) | [5406230131.129 ; 5536474848.221) | [5536474848.221 ; 5666719565.314) | [5666719565.314 ; 5796964282.406) | [5796964282.406 ; 5940508199.382) | @@@@@@@@@@ [5940508199.382 ; 6070752916.475) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6070752916.475 ; 6201685386.493) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6201685386.493 ; 6350152638.279) | @@@@@@@@@@@@@@@@@@@ [6350152638.279 ; 6491233428.115) | @@@@@@@@@@@@ [6491233428.115 ; 6690349149.329) | @@@@@@@@ [6690349149.329 ; 6833263438.480) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchF.LLoops Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 6.37 secs | 5.15 secs | 0.81 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchF.LLoops*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchF.LLoops.Test ```log [4982839351.685 ; 5095845630.282) | @@@@@@@@@@@@@@@@@ [5095845630.282 ; 5198792006.651) | @ [5198792006.651 ; 5394060622.673) | [5394060622.673 ; 5589329238.695) | [5589329238.695 ; 5784597854.716) | [5784597854.716 ; 5979866470.738) | [5979866470.738 ; 6088521013.599) | [6088521013.599 ; 6272957054.748) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6272957054.748 ; 6517934674.343) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [6517934674.343 ; 6694428270.624) | @@@ [6694428270.624 ; 6889696886.645) | [6889696886.645 ; 7162649097.405) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Buffers.Tests.ReadOnlySequenceTests<Byte> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [SliceMemory]() | 156.71 ns | 125.16 ns | 0.80 | | | [IterateForEachMemory]() | 568.56 ns | 494.78 ns | 0.87 | | | [IterateTryGetSingleSegment]() | 383.94 ns | 318.07 ns | 0.83 | | | [IterateGetPositionMemory]() | 1.36 μs | 1.03 μs | 0.75 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Buffers.Tests.ReadOnlySequenceTests<Byte>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Buffers.Tests.ReadOnlySequenceTests.SliceMemory ```log [120.704 ; 123.357) | @@ [123.357 ; 127.828) | @@@@@@@@@@@@ [127.828 ; 130.858) | @@@ [130.858 ; 134.275) | @ [134.275 ; 137.304) | [137.304 ; 140.334) | [140.334 ; 143.363) | [143.363 ; 146.393) | [146.393 ; 149.422) | [149.422 ; 154.516) | @@@@@@@@@@@@@@@@@@@@@@ [154.516 ; 160.740) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [160.740 ; 167.045) | @@@@@@@@@@@@@@@@@@@@@@@@@@@ [167.045 ; 175.734) | @@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Buffers.Tests.ReadOnlySequenceTests.IterateForEachMemory ```log [487.112 ; 504.822) | @@@@@@@@@@@ [504.822 ; 516.443) | @@@ [516.443 ; 531.455) | @ [531.455 ; 549.040) | @@ [549.040 ; 562.388) | @@@@@@@@@@@@@@@@@@@@@@@@ [562.388 ; 582.792) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [582.792 ; 602.329) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [602.329 ; 618.000) | @@@@@@@@@ [618.000 ; 641.396) | @ ``` #### System.Buffers.Tests.ReadOnlySequenceTests.IterateTryGetSingleSegment ```log [310.161 ; 322.475) | @@@@@@@@@@@@@@@ [322.475 ; 331.709) | @ [331.709 ; 341.159) | @ [341.159 ; 353.144) | @ [353.144 ; 360.996) | [360.996 ; 374.408) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [374.408 ; 382.482) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [382.482 ; 397.155) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [397.155 ; 414.500) | @@@@@@@@@@ ``` #### System.Buffers.Tests.ReadOnlySequenceTests.IterateGetPositionMemory ```log [ 976.192 ; 1002.549) | @@@@@@@@@ [1002.549 ; 1036.083) | @@@@@@@@ [1036.083 ; 1076.354) | [1076.354 ; 1116.625) | [1116.625 ; 1156.896) | [1156.896 ; 1192.225) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1192.225 ; 1238.666) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [1238.666 ; 1266.964) | @@@@@@@@@@@@@@@@@@@@@ [1266.964 ; 1318.063) | @@@@@@@@@@@@@@ [1318.063 ; 1373.648) | @@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in MicroBenchmarks.Serializers.Json_ToString<Location> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [JsonNet_]() | 28.25 μs | 22.89 μs | 0.81 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'MicroBenchmarks.Serializers.Json_ToString<Location>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### MicroBenchmarks.Serializers.Json_ToString.JsonNet_ ```log [21925.796 ; 22702.225) | @@@@@@ [22702.225 ; 23609.724) | @@@@@@@@@@@@ [23609.724 ; 24446.321) | [24446.321 ; 25282.918) | [25282.918 ; 26119.516) | [26119.516 ; 26893.667) | [26893.667 ; 27930.370) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [27930.370 ; 29145.195) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Span.Sorting Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [QuickSortSpan]() | 149.24 μs | 118.53 μs | 0.79 | | | [QuickSortArray]() | 108.13 μs | 65.32 μs | 0.60 | | | [BubbleSortSpan]() | 3.50 ms | 2.71 ms | 0.77 | | | [BubbleSortArray]() | 2.69 ms | 1.70 ms | 0.63 | | | ![graph]() ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Span.Sorting*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Span.Sorting.QuickSortSpan(Size: 512) ```log [111440.073 ; 116190.096) | @@@@@@@@ [116190.096 ; 118668.804) | @@@@@@@@ [118668.804 ; 121329.243) | @ [121329.243 ; 123807.952) | @ [123807.952 ; 126286.661) | [126286.661 ; 128765.369) | [128765.369 ; 131244.078) | [131244.078 ; 133722.787) | [133722.787 ; 136201.496) | [136201.496 ; 139678.745) | @@@@@@@@@@ [139678.745 ; 145180.254) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [145180.254 ; 148785.529) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [148785.529 ; 154702.239) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [154702.239 ; 162520.904) | @@ ``` #### Span.Sorting.QuickSortArray(Size: 512) ```log [ 64785.345 ; 67843.853) | @@@@@@@@@@@@@@@@@ [ 67843.853 ; 70902.361) | [ 70902.361 ; 73960.868) | [ 73960.868 ; 77019.376) | [ 77019.376 ; 80077.884) | [ 80077.884 ; 83136.392) | [ 83136.392 ; 86194.900) | [ 86194.900 ; 89253.407) | [ 89253.407 ; 92311.915) | [ 92311.915 ; 95370.423) | [ 95370.423 ; 98999.751) | [ 98999.751 ; 102058.259) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [102058.259 ; 105527.387) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [105527.387 ; 108585.895) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [108585.895 ; 111401.026) | @@@@@@@@@@@@@@@@@ [111401.026 ; 115686.775) | @@@ [115686.775 ; 118745.283) | @@@ ``` #### Span.Sorting.BubbleSortSpan(Size: 512) ```log [2688887.916 ; 2749971.515) | @@@@@@@@@@@@@@ [2749971.515 ; 2812239.472) | @@@@ [2812239.472 ; 2873323.070) | [2873323.070 ; 2934406.668) | [2934406.668 ; 2995490.267) | [2995490.267 ; 3056573.865) | [3056573.865 ; 3117657.464) | [3117657.464 ; 3178741.062) | [3178741.062 ; 3270479.267) | [3270479.267 ; 3403864.350) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3403864.350 ; 3480517.716) | @@@@@@@@@@@@@@ [3480517.716 ; 3561019.840) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3561019.840 ; 3649750.670) | @@@@@@@@@ [3649750.670 ; 3772041.506) | @ [3772041.506 ; 3919376.922) | @@@ ``` #### Span.Sorting.BubbleSortArray(Size: 512) ```log [1683869.384 ; 1757581.510) | @@@@@@@@@@@@@@@@@@ [1757581.510 ; 1831293.637) | [1831293.637 ; 1905005.763) | [1905005.763 ; 1978717.890) | [1978717.890 ; 2052430.016) | [2052430.016 ; 2126142.143) | [2126142.143 ; 2199854.269) | [2199854.269 ; 2273566.396) | [2273566.396 ; 2347278.522) | [2347278.522 ; 2420990.648) | [2420990.648 ; 2494702.775) | [2494702.775 ; 2568414.901) | [2568414.901 ; 2620466.024) | [2620466.024 ; 2694178.151) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2694178.151 ; 2773689.532) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [2773689.532 ; 2847401.659) | @@@@@@@@@@ [2847401.659 ; 2952326.230) | @@@ [2952326.230 ; 3023050.000) | @ [3023050.000 ; 3096762.127) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchI.Array1 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 26.51 ms | 20.61 ms | 0.78 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchI.Array1*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchI.Array1.Test ```log [19546154.219 ; 20422833.036) | @@@@@@@@@@@@@@@@ [20422833.036 ; 20924692.877) | @@ [20924692.877 ; 21428125.248) | [21428125.248 ; 21931557.618) | [21931557.618 ; 22434989.989) | [22434989.989 ; 22938422.360) | [22938422.360 ; 23441854.731) | [23441854.731 ; 23945287.101) | [23945287.101 ; 24448719.472) | [24448719.472 ; 25149807.508) | @@@@@@@@@@ [25149807.508 ; 26049585.265) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [26049585.265 ; 27624366.672) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<BinaryData> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromUtf8Bytes]() | 69.70 μs | 39.49 μs | 0.57 | | | [DeserializeFromStream]() | 82.28 μs | 50.54 μs | 0.61 | | | [DeserializeFromString]() | 89.96 μs | 55.34 μs | 0.62 | | | ![graph]() ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<BinaryData>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromUtf8Bytes ```log [38668.250 ; 40988.202) | @@@@@@@@@@@@@@@@@ [40988.202 ; 43308.153) | [43308.153 ; 45628.105) | [45628.105 ; 47948.056) | [47948.056 ; 50268.008) | [50268.008 ; 52587.960) | [52587.960 ; 54907.911) | [54907.911 ; 57227.863) | [57227.863 ; 59547.814) | [59547.814 ; 61867.766) | [61867.766 ; 64187.718) | [64187.718 ; 67337.061) | @@@@@@@@ [67337.061 ; 69657.013) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [69657.013 ; 71940.942) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [71940.942 ; 74211.080) | @@ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromStream ```log [49625.741 ; 52140.438) | @@@@@@@@@@@@@@@@@@ [52140.438 ; 54655.135) | [54655.135 ; 57169.833) | [57169.833 ; 59684.530) | [59684.530 ; 62199.227) | [62199.227 ; 64713.924) | [64713.924 ; 67228.621) | [67228.621 ; 69743.319) | [69743.319 ; 72258.016) | [72258.016 ; 74772.713) | [74772.713 ; 77287.410) | [77287.410 ; 79827.732) | @@@@@@@@@@@ [79827.732 ; 82342.430) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [82342.430 ; 84581.703) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [84581.703 ; 87295.440) | [87295.440 ; 89810.137) | @ ``` #### System.Text.Json.Serialization.Tests.ReadJson.DeserializeFromString ```log [53910.185 ; 56667.343) | @@@@@@@@@@@@@@@@@@ [56667.343 ; 59424.501) | [59424.501 ; 62181.659) | [62181.659 ; 64938.816) | [64938.816 ; 67695.974) | [67695.974 ; 70453.132) | [70453.132 ; 73210.290) | [73210.290 ; 75967.448) | [75967.448 ; 78724.605) | [78724.605 ; 81481.763) | [81481.763 ; 84238.921) | [84238.921 ; 85875.123) | [85875.123 ; 87851.795) | @@@@ [87851.795 ; 90608.953) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [90608.953 ; 93344.675) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [93344.675 ; 95860.867) | @@@@@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchF.MatInv4 Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 105.35 ms | 91.14 ms | 0.87 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchF.MatInv4*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchF.MatInv4.Test ```log [ 87699874.570 ; 90403788.613) | @@@@@@ [ 90403788.613 ; 92429692.577) | @@@@@@@@@@ [ 92429692.577 ; 95258495.034) | @ [ 95258495.034 ; 97422102.384) | @@@@ [ 97422102.384 ; 100799536.427) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [100799536.427 ; 104505860.217) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [104505860.217 ; 107500253.763) | @@@@@@@@@@@ [107500253.763 ; 111696014.348) | @@@@@@@@@@@@@@ [111696014.348 ; 114479871.549) | @@ [114479871.549 ; 117493994.343) | @@ [117493994.343 ; 123869299.601) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Collections.TryAddDefaultSize<String> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Dictionary]() | 250.87 μs | 192.03 μs | 0.77 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Collections.TryAddDefaultSize<String>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.TryAddDefaultSize.Dictionary(Count: 512) ```log [188960.670 ; 193720.457) | @@@@@@@@@@@@@ [193720.457 ; 198363.735) | @@@@ [198363.735 ; 202658.724) | [202658.724 ; 207418.511) | @ [207418.511 ; 212178.299) | [212178.299 ; 216938.087) | [216938.087 ; 221697.874) | [221697.874 ; 226457.662) | [226457.662 ; 231217.450) | [231217.450 ; 235977.237) | [235977.237 ; 241096.399) | [241096.399 ; 249489.018) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [249489.018 ; 255023.510) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [255023.510 ; 263862.193) | @@@@@@@@@@@@@@@ [263862.193 ; 273952.530) | @@@ [273952.530 ; 287234.566) | @ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in Benchstone.BenchF.Adams Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [Test]() | 3.51 μs | 2.63 μs | 0.75 | | | ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Benchstone.BenchF.Adams*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### Benchstone.BenchF.Adams.Test ```log [2602.528 ; 2679.254) | @@@@@ [2679.254 ; 2748.018) | @@@@@@@@@@@ [2748.018 ; 2816.783) | [2816.783 ; 2898.122) | [2898.122 ; 2966.887) | @ [2966.887 ; 3035.651) | [3035.651 ; 3104.416) | [3104.416 ; 3173.181) | [3173.181 ; 3241.945) | [3241.945 ; 3310.710) | [3310.710 ; 3438.774) | @@@@@@@ [3438.774 ; 3577.362) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3577.362 ; 3658.114) | @@@@@@@@@@@@@@@@ [3658.114 ; 3810.376) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [3810.376 ; 3889.902) | @@@ [3889.902 ; 3980.879) | @@ ``` ### 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)
### Run Information Architecture | x64 -- | -- OS | ubuntu 18.04 Baseline | [1b1ff800dae81574d9ecea0d106df9c71a6733da](https://github.com/dotnet/runtime/commit/1b1ff800dae81574d9ecea0d106df9c71a6733da) Compare | [a078b5501eb11e2d89cccfeee052e0182c2b863c](https://github.com/dotnet/runtime/commit/a078b5501eb11e2d89cccfeee052e0182c2b863c) ### Improvemnts in System.Text.Json.Serialization.Tests.ReadJson<HashSet<String>> Benchmark | Baseline | Test | Test/Base | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL -- | -- | -- | -- | -- | -- | -- | -- | -- [DeserializeFromStream]() | 343.51 μs | 217.80 μs | 0.63 | | | [DeserializeFromUtf8Bytes]() | 278.85 μs | 180.46 μs | 0.65 | | | ![graph]() ![graph]() [Historical Data in Reporting System]() ### Repro ```cmd git clone https://github.com/dotnet/performance.git python3 .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson<HashSet<String>>*' ```
. ### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Serialization.Tests.ReadJson>.DeserializeFromStream ```log [215888.499 ; 225135.277) | @@@@@@@@@@@@@@@ [225135.277 ; 233588.492) | @@@ [233588.492 ; 242835.269) | [242835.269 ; 252082.047) | [252082.047 ; 261328.824) | [261328.824 ; 270575.601) | [270575.601 ; 279822.378) | [279822.378 ; 289069.155) | [289069.155 ; 298315.932) | [298315.932 ; 307562.709) | [307562.709 ; 316809.486) | [316809.486 ; 327216.852) | @ [327216.852 ; 335503.144) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [335503.144 ; 344749.922) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [344749.922 ; 359710.056) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ``` #### System.Text.Json.Serialization.Tests.ReadJson>.DeserializeFromUtf8Bytes ```log [179034.249 ; 186040.153) | @@@@@@@@@@@@@@@@@ [186040.153 ; 193046.057) | [193046.057 ; 200051.962) | [200051.962 ; 207057.866) | [207057.866 ; 214063.771) | [214063.771 ; 221069.675) | [221069.675 ; 228075.579) | [228075.579 ; 235081.484) | [235081.484 ; 242087.388) | [242087.388 ; 249093.293) | [249093.293 ; 256632.777) | [256632.777 ; 261877.778) | @@@ [261877.778 ; 268918.806) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [268918.806 ; 275924.710) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [275924.710 ; 282994.672) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [282994.672 ; 288969.073) | @@@@@@@ ``` ### 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)