Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Perf] Linux/x64: 47 Regressions on 7/2/2024 7:47:18 PM #38086

Open
performanceautofiler bot opened this issue Jul 11, 2024 · 3 comments
Open

[Perf] Linux/x64: 47 Regressions on 7/2/2024 7:47:18 PM #38086

performanceautofiler bot opened this issue Jul 11, 2024 · 3 comments

Comments

@performanceautofiler
Copy link

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 898ffc5f74fad1593ed4036a69da039937224f99
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.88 μs 4.46 μs 1.15 0.20 False
13.49 μs 20.62 μs 1.53 0.11 False
3.93 μs 4.41 μs 1.12 0.14 False
87.00 μs 99.12 μs 1.14 0.15 False
306.21 μs 442.71 μs 1.45 0.09 False
86.52 μs 97.23 μs 1.12 0.15 False
278.83 μs 517.12 μs 1.85 0.30 False

graph
graph
graph
graph
graph
graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives&lt;Single&gt;*'

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.FusedMultiplyAdd_ScalarMultiplier(BufferLength: 128)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Sin(BufferLength: 128)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.FusedMultiplyAdd_Vectors(BufferLength: 128)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.FusedMultiplyAdd_ScalarMultiplier(BufferLength: 3079)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Sin(BufferLength: 3079)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.FusedMultiplyAdd_Vectors(BufferLength: 3079)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Log(BufferLength: 3079)

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 1fe7d189db4a49bc676ddb206456709e089c2293
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
157.03 ns 211.65 ns 1.35 0.25 False
790.58 ns 1.84 μs 2.33 0.09 True
510.94 ns 1.53 μs 2.99 0.14 True
136.97 ns 184.30 ns 1.35 0.23 False

graph
graph
graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives&lt;Byte&gt;*'

System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.TrailingZeroCount(BufferLength: 128)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.TrailingZeroCount(BufferLength: 3079)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.PopCount(BufferLength: 3079)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.PopCount(BufferLength: 128)

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline b59816c21a6138174bf84fcc5b88a6ece8e1e41c
Compare 1d16fd14fa772621c7b09ebd00f83610207b1abf
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Buffers.Tests.SearchValuesCharTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
156.03 ns 269.82 ns 1.73 0.20 True
150.02 ns 270.53 ns 1.80 0.15 True
816.68 ns 925.96 ns 1.13 0.06 False
130.83 ns 268.42 ns 2.05 0.20 True
141.60 ns 322.88 ns 2.28 0.14 True

graph
graph
graph
graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Buffers.Tests.SearchValuesCharTests*'

System.Buffers.Tests.SearchValuesCharTests.LastIndexOfAnyExcept(Values: "abcdefABCDEF0123456789Ü")

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.SearchValuesCharTests.IndexOfAnyExcept(Values: "abcdefABCDEF0123456789")

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.SearchValuesCharTests.IndexOfAny(Values: "abcdefABCDEF0123456789Ü")

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.SearchValuesCharTests.IndexOfAny(Values: "abcdefABCDEF0123456789")

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.SearchValuesCharTests.ContainsAny(Values: "abcdefABCDEF0123456789")

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 1fe7d189db4a49bc676ddb206456709e089c2293
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Perf_Utf8Encoding

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
641.44 μs 682.96 μs 1.06 0.00 False
181.16 μs 249.28 μs 1.38 0.02 True
509.17 μs 749.01 μs 1.47 0.09 True

graph
graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Perf_Utf8Encoding*'

System.Text.Perf_Utf8Encoding.GetString(Input: Greek)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Utf8Encoding.GetBytes(Input: EnglishAllAscii)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Utf8Encoding.GetString(Input: EnglishMostlyAscii)

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 2ea6ae57874c452923af059cbcb57d109564353c
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Text.RegularExpressions.Tests.Perf_Regex_Common

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
18.23 μs 19.63 μs 1.08 0.09 False

graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.RegularExpressions.Tests.Perf_Regex_Common*'

System.Text.RegularExpressions.Tests.Perf_Regex_Common.MatchesWord(Options: IgnoreCase, Compiled)

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 1fe7d189db4a49bc676ddb206456709e089c2293
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Globalization.Tests.StringSearch

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
266.87 ns 374.99 ns 1.41 0.12 True

graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Globalization.Tests.StringSearch*'

System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (en-US, Ordinal, False))

ETL Files

Histogram

JIT Disasms

Docs

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

Copy link
Author

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 2ea6ae57874c452923af059cbcb57d109564353c
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Perf_Ascii

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
113.01 ns 264.70 ns 2.34 0.15 True
117.85 ns 234.99 ns 1.99 0.11 True
45.53 ns 55.16 ns 1.21 0.21 False
177.25 ns 401.52 ns 2.27 0.12 True
622.70 ns 662.43 ns 1.06 0.04 False
185.70 ns 351.98 ns 1.90 0.18 True
147.23 ns 270.71 ns 1.84 0.17 True
86.24 ns 116.89 ns 1.36 0.23 False
218.28 ns 458.95 ns 2.10 0.21 True
450.88 ns 509.11 ns 1.13 0.06 False
218.34 ns 453.46 ns 2.08 0.17 True
86.17 ns 99.81 ns 1.16 0.16 False

graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Perf_Ascii*'

System.Text.Perf_Ascii.ToLowerInPlace_Bytes(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.ToUpperInPlace_Bytes(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.IsValid_Bytes(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.ToUpperInPlace_Chars(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.Equals_Bytes_Chars(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.ToLower_Bytes_Chars(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.ToLower_Bytes(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.EqualsIgnoreCase_ExactlyTheSame_Bytes(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.ToUpper_Chars(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.EqualsIgnoreCase_DifferentCase_Chars(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.ToLower_Chars(Size: 128)

ETL Files

Histogram

JIT Disasms

System.Text.Perf_Ascii.Equals_Bytes(Size: 128)

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 1fe7d189db4a49bc676ddb206456709e089c2293
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
48.33 μs 54.77 μs 1.13 0.17 False
1.16 ms 1.32 ms 1.14 0.20 False
8.94 μs 9.99 μs 1.12 0.24 False
3.58 μs 7.56 μs 2.11 0.11 False
209.42 μs 236.30 μs 1.13 0.17 False

graph
graph
graph
graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives&lt;Double&gt;*'

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Sin(BufferLength: 128)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Sin(BufferLength: 3079)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.FusedMultiplyAdd_ScalarMultiplier(BufferLength: 128)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.CosineSimilarity(BufferLength: 128)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.FusedMultiplyAdd_ScalarMultiplier(BufferLength: 3079)

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 1d16fd14fa772621c7b09ebd00f83610207b1abf
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
18.25 μs 28.41 μs 1.56 0.18 True
837.82 ns 1.51 μs 1.80 0.18 True

graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives&lt;Int32&gt;*'

System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.PopCount(BufferLength: 3079)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.PopCount(BufferLength: 128)

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 1fe7d189db4a49bc676ddb206456709e089c2293
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Buffers.Tests.SearchValuesByteTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
614.12 ns 744.90 ns 1.21 0.07 True
116.65 ns 144.03 ns 1.23 0.14 False
118.88 ns 148.75 ns 1.25 0.16 False
126.38 ns 146.73 ns 1.16 0.16 False
627.57 ns 755.22 ns 1.20 0.09 False

graph
graph
graph
graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Buffers.Tests.SearchValuesByteTests*'

System.Buffers.Tests.SearchValuesByteTests.ContainsAny(Values: "abcdefABCDEF0123456789Ü")

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.SearchValuesByteTests.ContainsAny(Values: "abcdefABCDEF0123456789")

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.SearchValuesByteTests.IndexOfAny(Values: "abcdefABCDEF0123456789")

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.SearchValuesByteTests.IndexOfAnyExcept(Values: "abcdefABCDEF0123456789")

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.SearchValuesByteTests.IndexOfAnyExcept(Values: "abcdefABCDEF0123456789Ü")

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 1fe7d189db4a49bc676ddb206456709e089c2293
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.IO.Tests.BinaryWriterExtendedTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
807.03 μs 1.87 ms 2.31 0.03 True

graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.IO.Tests.BinaryWriterExtendedTests*'

System.IO.Tests.BinaryWriterExtendedTests.WriteAsciiCharArray(StringLengthInChars: 2000000)

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline c07a81f90938a8c3ec5b056b78ddd1718dc9931c
Compare 1d16fd14fa772621c7b09ebd00f83610207b1abf
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.IO.Tests.Perf_File

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
63.91 μs 67.12 μs 1.05 0.03 False

graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.IO.Tests.Perf_File*'

System.IO.Tests.Perf_File.AppendAllText(size: 10000)

ETL Files

Histogram

JIT Disasms

Docs

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

@lewing
Copy link
Member

lewing commented Jul 12, 2024

interpreter regressions in the range: dotnet/runtime@745b776...c8e4f2c probably a mix of dotnet/runtime@c65d921 and dotnet/runtime@51e2597
cc @stephentoub @tannergooding

@tannergooding
Copy link
Member

tannergooding commented Jul 12, 2024

I'd expect most of this to be fixed with dotnet/runtime#104698 (which was merged in last night)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants