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: 51 Improvements on 7/24/2024 3:49:10 AM #39142

Open performanceautofiler[bot] opened 3 months ago

performanceautofiler[bot] commented 3 months ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue ViperUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
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
1.66 ms 574.56 μs 0.35 0.05 False
139.21 μs 111.01 μs 0.80 0.20 False
2.20 ms 921.18 μs 0.42 0.02 False
1.18 ms 257.34 μs 0.22 0.09 False
373.35 μs 285.03 μs 0.76 0.01 False
7.22 ms 2.63 ms 0.36 0.01 False
547.15 μs 260.14 μs 0.48 0.02 False
376.00 μs 262.45 μs 0.70 0.01 False
79.73 μs 45.91 μs 0.58 0.01 False
570.78 μs 359.34 μs 0.63 0.01 False
2.36 ms 1.79 ms 0.76 0.01 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: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Compress(level: Fastest, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### 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.Decompress(level: Fastest, file: "TestDocument.pdf") #### 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: Optimal, 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.Decompress(level: Optimal, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Decompress(level: Fastest, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Gzip.Compress(level: Optimal, file: "TestDocument.pdf") #### 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 ViperUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Memory.Span<Char>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
14.45 ns 11.61 ns 0.80 0.44 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;Char&gt;*'
### System.Memory.Span<Char>.Reverse(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 ViperUbuntu
Baseline 0378936909464c84cf207ffd1a21efa474fc34c0
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
10.45 ns 7.37 ns 0.71 0.28 False
14.61 ns 13.10 ns 0.90 0.21 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.Tensors.Tests.Perf_NumberTensorPrimitives&lt;Single&gt;*'
### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Add_Scalar(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Add_Vector(BufferLength: 128) #### 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 ViperUbuntu
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
7.14 ms 2.63 ms 0.37 0.01 False
65.21 μs 45.60 μs 0.70 0.01 False
70.81 μs 47.36 μs 0.67 0.01 False
2.12 ms 921.20 μs 0.43 0.01 False
322.99 μs 261.02 μs 0.81 0.01 False
2.30 ms 1.79 ms 0.78 0.02 False
490.03 μs 250.53 μs 0.51 0.01 False
511.81 μs 366.56 μs 0.72 0.01 False
326.52 μs 285.00 μs 0.87 0.01 False
1.61 ms 585.76 μs 0.36 0.02 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.ZLib*'
### System.IO.Compression.ZLib.Compress(level: Optimal, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Decompress(level: Optimal, 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.Compress(level: Optimal, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Decompress(level: Optimal, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.ZLib.Decompress(level: Fastest, 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 ### 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 ViperUbuntu
Baseline 3028ee9a682b43d3e7137b992364bcf086a699f2
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Text.RegularExpressions.Tests.Perf_Regex_Common

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
163.43 μs 145.66 μs 0.89 0.05 False
180.47 μs 164.06 μs 0.91 0.12 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.Text.RegularExpressions.Tests.Perf_Regex_Common*'
### System.Text.RegularExpressions.Tests.Perf_Regex_Common.CtorInvoke(Options: Compiled) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.RegularExpressions.Tests.Perf_Regex_Common.CtorInvoke(Options: IgnoreCase, Compiled) #### 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 3 months ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue ViperUbuntu
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
1.15 ms 300.37 μs 0.26 0.07 False
461.99 μs 359.64 μs 0.78 0.01 False
2.27 ms 1.79 ms 0.79 0.03 False
126.32 μs 110.20 μs 0.87 0.32 False
51.76 μs 45.69 μs 0.88 0.01 False
7.10 ms 2.62 ms 0.37 0.01 False
2.09 ms 920.70 μs 0.44 0.02 False
287.88 μs 260.85 μs 0.91 0.01 False
57.62 μs 47.28 μs 0.82 0.01 False
1.57 ms 577.11 μs 0.37 0.04 False
438.36 μs 252.44 μs 0.58 0.02 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.Deflate*'
### System.IO.Compression.Deflate.Compress(level: Optimal, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Decompress(level: Fastest, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Compress(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: Optimal, file: "sum") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Compress(level: Optimal, file: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Compress(level: Fastest, file: "TestDocument.pdf") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Decompress(level: Optimal, file: "TestDocument.pdf") #### 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: "alice29.txt") #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Compression.Deflate.Decompress(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 ViperUbuntu
Baseline 08d807075c5c29891e8f5bfafd02fdc10a182310
Compare f6994c7807376430c96011fc527dfc4363348d94
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
10.46 ns 7.18 ns 0.69 0.26 False
15.09 ns 13.22 ns 0.88 0.27 False
10.31 ns 7.20 ns 0.70 0.26 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.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives&lt;Int32&gt;*'
### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.Add_Scalar(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.Max_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.Max_Scalar(BufferLength: 128) #### 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 ViperUbuntu
Baseline 0378936909464c84cf207ffd1a21efa474fc34c0
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
17.54 ns 12.78 ns 0.73 0.14 False
17.17 ns 12.20 ns 0.71 0.08 False
17.06 ns 12.63 ns 0.74 0.11 False
21.28 ns 16.71 ns 0.79 0.10 False
17.14 ns 12.48 ns 0.73 0.10 False
30.96 ns 26.83 ns 0.87 0.17 False
177.54 ns 144.81 ns 0.82 0.11 False
28.09 ns 23.30 ns 0.83 0.07 False
20.28 ns 16.72 ns 0.82 0.12 False
20.49 ns 16.65 ns 0.81 0.13 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.Tests.Perf_String*'
### System.Tests.Perf_String.ToLowerInvariant(s: "TeSt") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpperInvariant(s: "TeSt") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToLowerInvariant(s: "TEST") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpper(s: "test") #### 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.Join_Enumerable #### 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.ToLower(s: "TEST") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpper(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)

Run Information

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

Improvements in System.Text.Perf_Ascii

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
9.48 ns 8.36 ns 0.88 0.18 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.Perf_Ascii*'
### System.Text.Perf_Ascii.ToUpper_Bytes(Size: 128) #### 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)