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: 37 Improvements on 8/18/2024 5:03:53 PM #40270

Open performanceautofiler[bot] opened 2 weeks ago

performanceautofiler[bot] commented 2 weeks ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue ViperUbuntu
Baseline bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.IO.Tests.Perf_File

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
14.74 μs 12.80 μs 0.87 0.13 False
167.45 μs 137.91 μs 0.82 0.30 False
1.07 ms 787.18 μs 0.73 0.00 True
13.52 μs 11.89 μs 0.88 0.04 False
27.73 μs 22.77 μs 0.82 0.14 False
26.62 μs 21.31 μs 0.80 0.04 False
142.96 μs 115.07 μs 0.80 0.02 True
19.93 μs 17.93 μs 0.90 0.39 False
16.22 μs 14.51 μs 0.89 0.03 False
111.30 ms 83.65 ms 0.75 0.05 True

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.Tests.Perf_File*'
### System.IO.Tests.Perf_File.AppendAllTextAsync(size: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_File.WriteAllTextAsync(size: 100000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_File.CopyTo(size: 1048576) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_File.AppendAllText(size: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_File.AppendAllTextAsync(size: 10000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_File.AppendAllText(size: 10000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_File.WriteAllText(size: 100000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_File.AppendAllLinesAsync #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_File.AppendAllLines #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_File.CopyTo(size: 104857600) #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
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
38.45 ns 19.57 ns 0.51 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.Tests.Perf_String*'
### System.Tests.Perf_String.IndexerCheckLengthHoisting #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.IO.Pipes.Tests.Perf_NamedPipeStream

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
181.50 μs 148.38 μs 0.82 0.10 True
184.26 μs 149.07 μs 0.81 0.15 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.IO.Pipes.Tests.Perf_NamedPipeStream*'
### System.IO.Pipes.Tests.Perf_NamedPipeStream.ReadWrite(size: 1000000, Options: None) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Pipes.Tests.Perf_NamedPipeStream.ReadWrite(size: 1000000, Options: Asynchronous) #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in LinqBenchmarks

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
224.27 ms 198.71 ms 0.89 0.11 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 'LinqBenchmarks*'
### LinqBenchmarks.Where00LinqMethodX #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Formats.Tar.Tests.Perf_TarFile

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
123.43 μs 116.08 μs 0.94 0.12 False
78.66 μs 72.42 μs 0.92 0.03 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.Formats.Tar.Tests.Perf_TarFile*'
### System.Formats.Tar.Tests.Perf_TarFile.CreateFromDirectory_Path #### ETL Files #### Histogram #### JIT Disasms ### System.Formats.Tar.Tests.Perf_TarFile.CreateFromDirectory_Stream #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.IO.Tests.Perf_FileStream

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.57 ms 1.29 ms 0.82 0.22 False
1.08 ms 809.59 μs 0.75 0.05 True
105.88 ms 78.04 ms 0.74 0.01 True
108.08 ms 81.50 ms 0.75 0.02 True
1.05 ms 767.76 μs 0.73 0.01 True
1.34 ms 1.07 ms 0.80 0.02 True

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.Tests.Perf_FileStream*'
### System.IO.Tests.Perf_FileStream.AppendAsync(fileSize: 1048576, userBufferSize: 4096, options: DeleteOnClose, Asynchronous) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.WriteAsync_NoBuffering_PreallocationSize(fileSize: 1048576, userBufferSize: 16384, options: Asynchronous) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.Write_NoBuffering_PreallocationSize(fileSize: 104857600, userBufferSize: 16384, options: None) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.WriteAsync_NoBuffering_PreallocationSize(fileSize: 104857600, userBufferSize: 16384, options: Asynchronous) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.Write_NoBuffering_PreallocationSize(fileSize: 1048576, userBufferSize: 16384, options: None) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.Append(fileSize: 1048576, userBufferSize: 4096, options: DeleteOnClose) #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
16.13 μs 14.95 μs 0.93 0.06 False
16.31 μs 14.89 μs 0.91 0.07 False
14.64 μs 8.02 μs 0.55 0.02 False
18.89 μs 14.89 μs 0.79 0.32 False
14.62 μs 8.08 μs 0.55 0.04 False
19.14 μs 18.15 μs 0.95 0.37 False
14.67 μs 8.06 μs 0.55 0.06 False
14.62 μs 8.09 μs 0.55 0.03 False

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.MemoryMappedFiles.Tests.Perf_MemoryMappedFile*'
### System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateFromFile_Read(capacity: 100000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateFromFile_Read(capacity: 1000000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateNew(capacity: 100000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateFromFile_Read(capacity: 10000000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateNew(capacity: 10000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateFromFile(capacity: 10000000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateNew(capacity: 1000000) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.MemoryMappedFiles.Tests.Perf_MemoryMappedFile.CreateNew(capacity: 10000000) #### 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 weeks ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue ViperUbuntu
Baseline bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.IO.Tests.Perf_Directory

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.27 ms 3.85 ms 0.90 0.01 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.Perf_Directory*'
### System.IO.Tests.Perf_Directory.EnumerateFiles #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in BenchmarksGame.FannkuchRedux_9

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
90.33 ms 78.90 ms 0.87 0.00 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 'BenchmarksGame.FannkuchRedux_9*'
### BenchmarksGame.FannkuchRedux_9.RunBench(n: 11, expectedSum: 556355) #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in BenchmarksGame.FannkuchRedux_5

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
15.30 ms 13.48 ms 0.88 0.02 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 'BenchmarksGame.FannkuchRedux_5*'
### BenchmarksGame.FannkuchRedux_5.RunBench(n: 10, expectedSum: 38) #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in PerfLabTests.LowLevelPerf

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
162.38 μs 135.62 μs 0.84 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 'PerfLabTests.LowLevelPerf*'
### PerfLabTests.LowLevelPerf.GenericGenericMethod #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Globalization.Tests.StringSearch

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
278.56 ns 250.24 ns 0.90 0.45 False
3.46 μs 2.87 μs 0.83 0.47 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.Globalization.Tests.StringSearch*'
### System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (, IgnoreCase, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, IgnoreCase, True)) #### 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 bb1b43a6a155eaeb45953a3c87f6e04b12979778
Compare d3da7a2c823245534e557f97013136d06a98e731
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Tests.Perf_GC<Char>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.50 μs 4.22 μs 0.94 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.Tests.Perf_GC&lt;Char&gt;*'
### System.Tests.Perf_GC<Char>.AllocateUninitializedArray(length: 10000, pinned: True) #### 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)