dotnet / perf-autofiling-issues

A landing place for auto-filed performance issues before they receive triage
MIT License
9 stars 4 forks source link

[Perf] Linux/x64: 53 Improvements on 7/24/2024 3:49:10 AM #39105

Open performanceautofiler[bot] opened 2 months ago

performanceautofiler[bot] commented 2 months ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.IO.Compression.Deflate

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
490.81 μs 395.77 μs 0.81 0.01 False
108.25 μs 63.48 μs 0.59 0.01 False
279.32 μs 259.03 μs 0.93 0.01 False
466.48 μs 322.09 μs 0.69 0.02 False
1.63 ms 623.87 μs 0.38 0.01 False
274.92 μs 244.30 μs 0.89 0.01 False
251.48 μs 129.13 μs 0.51 0.08 False
118.49 μs 65.64 μs 0.55 0.01 False
2.10 ms 982.55 μs 0.47 0.02 False
5.70 ms 2.37 ms 0.42 0.03 False

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.IO.Compression.Deflate*'
### System.IO.Compression.Deflate.Decompress(level: Fastest, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Decompress(level: Optimal, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Decompress(level: Fastest, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Decompress(level: Optimal, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Compress(level: Fastest, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Decompress(level: Optimal, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Compress(level: Fastest, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Decompress(level: Fastest, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Compress(level: Fastest, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Compress(level: Optimal, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.IO.Compression.ZLib

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
508.63 μs 321.51 μs 0.63 0.01 False
312.83 μs 258.73 μs 0.83 0.01 False
1.68 ms 627.28 μs 0.37 0.06 False
5.86 ms 2.47 ms 0.42 0.02 False
262.17 μs 137.02 μs 0.52 0.07 False
128.94 μs 66.64 μs 0.52 0.01 False
2.13 ms 973.87 μs 0.46 0.02 False
308.33 μs 242.77 μs 0.79 0.01 False
527.04 μs 399.50 μs 0.76 0.01 False

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.IO.Compression.ZLib*'
### System.IO.Compression.ZLib.Decompress(level: Optimal, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Decompress(level: Fastest, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Compress(level: Fastest, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Compress(level: Optimal, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Compress(level: Fastest, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Decompress(level: Fastest, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Compress(level: Fastest, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Decompress(level: Optimal, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Decompress(level: Fastest, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Tests.Perf_String

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
27.82 ns 23.60 ns 0.85 0.03 False
40.97 ns 33.39 ns 0.81 0.08 False
22.88 ns 19.28 ns 0.84 0.04 False
45.65 ns 37.05 ns 0.81 0.04 False
23.15 ns 18.78 ns 0.81 0.03 False
27.71 ns 23.59 ns 0.85 0.02 False
241.23 ns 200.85 ns 0.83 0.05 False
28.85 ns 23.61 ns 0.82 0.04 False
5.97 ns 4.83 ns 0.81 0.10 False
38.05 ns 35.04 ns 0.92 0.13 False
23.68 ns 18.90 ns 0.80 0.04 False
42.91 ns 37.95 ns 0.88 0.05 False
23.84 ns 19.24 ns 0.81 0.05 False

graph 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.Tests.Perf_String*'
### System.Tests.Perf_String.ToLower(s: "TEST") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToLowerInvariant(s: "This is a much longer piece of text that might benefit more from vectorization.") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToLowerInvariant(s: "TeSt") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToLower(s: "This is a much longer piece of text that might benefit more from vectorization.") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToLowerInvariant(s: "TEST") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToLower(s: "TeSt") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Join_Enumerable #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpper(s: "test") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Replace_Char(text: "Hello", oldChar: 'a', newChar: 'b') #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpperInvariant(s: "This is a much longer piece of text that might benefit more from vectorization.") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpperInvariant(s: "test") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpper(s: "This is a much longer piece of text that might benefit more from vectorization.") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpperInvariant(s: "TeSt") #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 2 months ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 0378936909464c84cf207ffd1a21efa474fc34c0
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.IO.Compression.Gzip

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.23 ms 973.84 μs 0.44 0.02 False
1.03 ms 368.63 μs 0.36 0.02 False
274.09 μs 129.26 μs 0.47 0.05 False
140.91 μs 66.78 μs 0.47 0.02 False
131.60 μs 64.49 μs 0.49 0.02 False
5.75 ms 2.35 ms 0.41 0.02 False
351.99 μs 257.09 μs 0.73 0.01 False
571.76 μs 397.02 μs 0.69 0.01 False
348.02 μs 243.92 μs 0.70 0.01 False
2.33 ms 2.14 ms 0.92 0.02 False
1.75 ms 624.60 μs 0.36 0.04 False

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.IO.Compression.Gzip*'
### System.IO.Compression.Gzip.Compress(level: Fastest, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Compress(level: Optimal, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Compress(level: Fastest, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Decompress(level: Fastest, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Decompress(level: Optimal, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Compress(level: Optimal, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Decompress(level: Fastest, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Decompress(level: Fastest, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Decompress(level: Optimal, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Compress(level: Optimal, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Compress(level: Fastest, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Numerics.Tests.Perf_BigInteger

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
342.82 ns 303.60 ns 0.89 0.03 False
3.74 ns 2.39 ns 0.64 0.09 False

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.Tests.Perf_BigInteger*'
### System.Numerics.Tests.Perf_BigInteger.ToStringX(numberString: 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Equals(arguments: 67 bytes, DiffMiddleByte) #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Collections.Perf_Frozen<NotKnownComparable>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.66 μs 1.47 μs 0.89 0.08 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.Collections.Perf_Frozen&lt;NotKnownComparable&gt;*'
### System.Collections.Perf_Frozen<NotKnownComparable>.TryGetValue_True(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Tests.Perf_Int128

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
14.12 ns 12.31 ns 0.87 0.08 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.Tests.Perf_Int128*'
### System.Tests.Perf_Int128.ToString(value: 12345) #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Buffers.Text.Tests.Utf8FormatterTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
5.83 ns 4.76 ns 0.82 0.06 False
20.10 ns 14.32 ns 0.71 0.04 False
17.01 ns 11.84 ns 0.70 0.03 False

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.Text.Tests.Utf8FormatterTests*'
### System.Buffers.Text.Tests.Utf8FormatterTests.FormatterUInt64(value: 12345) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8FormatterTests.FormatterUInt64(value: 18446744073709551615) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8FormatterTests.FormatterInt64(value: 9223372036854775807) #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Memory.Span<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
31.02 ns 19.89 ns 0.64 0.28 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.Memory.Span&lt;Int32&gt;*'
### System.Memory.Span<Int32>.Fill(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
173.84 ns 137.64 ns 0.79 0.10 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.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives&lt;Int32&gt;*'
### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.ShiftLeft(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Collections.ContainsTrueComparer<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
17.78 μs 13.36 μs 0.75 0.02 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.Collections.ContainsTrueComparer&lt;Int32&gt;*'
### System.Collections.ContainsTrueComparer<Int32>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)