Skip to content

[Perf -97%] System.Globalization.Tests.StringEquality (8) #39038

@DrewScoggins

Description

@DrewScoggins

Run Information

Architecture x64
OS Windows 10.0.18362
Changes diff

Regressions in System.Globalization.Tests.StringEquality

Benchmark Baseline Test Test/Base Modality Baseline Outlier
Compare_Same_Upper 4.72 μs 8.18 μs 1.73 True
Compare_Same_Upper 9.44 μs 12.66 μs 1.34 False
Compare_Same_Upper 3.44 μs 8.16 μs 2.37 True
Compare_DifferentFirstChar 8.21 μs 25.35 μs 3.09 False
Compare_DifferentFirstChar 6.09 ns 11.43 ns 1.88 Bimodal True
Compare_Same_Upper 4.71 μs 8.17 μs 1.73 False
Compare_Same_Upper 3.43 μs 8.18 μs 2.38 False

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

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'System.Globalization.Tests.StringEquality*';

Histogram

System.Globalization.Tests.StringEquality.Compare_Same_Upper(Count: 1024, Options: (, None))

[4667.947 ; 5078.079) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
[5078.079 ; 5488.210) | 
[5488.210 ; 5898.341) | 
[5898.341 ; 6308.473) | 
[6308.473 ; 6718.604) | 
[6718.604 ; 7128.736) | 
[7128.736 ; 7538.867) | 
[7538.867 ; 7968.920) | 
[7968.920 ; 8392.936) | @@@@@@@@@@@@@@@@@@@@

System.Globalization.Tests.StringEquality.Compare_Same_Upper(Count: 1024, Options: (en-US, IgnoreSymbols))

[ 9295.993 ;  9673.903) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
[ 9673.903 ; 10051.812) | 
[10051.812 ; 10564.578) | @
[10564.578 ; 10942.487) | 
[10942.487 ; 11320.397) | 
[11320.397 ; 11698.306) | 
[11698.306 ; 12076.216) | 
[12076.216 ; 12441.656) | 
[12441.656 ; 12864.431) | @@@@@@@@@@@@@@@@@@@@

System.Globalization.Tests.StringEquality.Compare_Same_Upper(Count: 1024, Options: (, IgnoreCase))

[3127.674 ; 3712.307) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
[3712.307 ; 4425.064) | @@
[4425.064 ; 4984.410) | 
[4984.410 ; 5543.755) | 
[5543.755 ; 6103.100) | 
[6103.100 ; 6662.446) | 
[6662.446 ; 7221.791) | 
[7221.791 ; 7886.325) | 
[7886.325 ; 8472.382) | @@@@@@@@@@@@@@@@@@@@

System.Globalization.Tests.StringEquality.Compare_DifferentFirstChar(Count: 1024, Options: (en-US, IgnoreSymbols))

[ 7477.116 ;  9498.049) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
[ 9498.049 ; 11518.983) | 
[11518.983 ; 13539.916) | 
[13539.916 ; 15560.849) | 
[15560.849 ; 17581.783) | 
[17581.783 ; 19602.716) | 
[19602.716 ; 21623.650) | 
[21623.650 ; 23644.583) | 
[23644.583 ; 24328.634) | 
[24328.634 ; 26409.053) | @@@@@@@@@@@@@@@@@@@@

System.Globalization.Tests.StringEquality.Compare_DifferentFirstChar(Count: 1024, Options: (en-US, Ordinal))

[ 6.003 ;  6.577) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
[ 6.577 ;  6.790) | @@@@@@@
[ 6.790 ;  7.364) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
[ 7.364 ;  7.930) | @@@@@@@@@@@@@@@@@@@@@@@@
[ 7.930 ;  8.504) | 
[ 8.504 ;  9.078) | 
[ 9.078 ;  9.652) | 
[ 9.652 ; 10.226) | 
[10.226 ; 10.800) | 
[10.800 ; 11.295) | @@
[11.295 ; 11.869) | @@@@@@@@@@@@
[11.869 ; 12.589) | @@@

System.Globalization.Tests.StringEquality.Compare_Same_Upper(Count: 1024, Options: (en-US, None))

[4661.917 ; 5073.742) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
[5073.742 ; 5485.568) | 
[5485.568 ; 5897.394) | 
[5897.394 ; 6309.220) | 
[6309.220 ; 6721.045) | 
[6721.045 ; 7132.871) | 
[7132.871 ; 7544.697) | 
[7544.697 ; 7958.333) | 
[7958.333 ; 8396.065) | @@@@@@@@@@@@@@@@@@@@

System.Globalization.Tests.StringEquality.Compare_Same_Upper(Count: 1024, Options: (en-US, IgnoreCase))

[3126.500 ; 3713.528) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
[3713.528 ; 4413.095) | @
[4413.095 ; 4972.024) | 
[4972.024 ; 5530.953) | 
[5530.953 ; 6089.882) | 
[6089.882 ; 6648.811) | 
[6648.811 ; 7207.740) | 
[7207.740 ; 7878.870) | 
[7878.870 ; 8455.535) | @@@@@@@@@@@@@@@@@@@@

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions