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: 94 Improvements on 9/19/2024 4:00:38 PM #41938

Open performanceautofiler[bot] opened 1 month ago

performanceautofiler[bot] commented 1 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Reflection.Attributes

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
864.83 ns 735.70 ns 0.85 0.04 False
1.27 μs 1.05 μs 0.83 0.05 False
2.69 μs 2.22 μs 0.82 0.09 False
2.61 μs 2.20 μs 0.84 0.11 False
2.68 μs 2.30 μs 0.86 0.12 False
1.26 μs 1.08 μs 0.86 0.07 False
1.25 μs 1.07 μs 0.85 0.04 False
1.26 μs 1.05 μs 0.83 0.04 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.Reflection.Attributes*'
### System.Reflection.Attributes.IsDefinedClassHitInherit #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Attributes.IsDefinedMethodBaseHitInherit #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Attributes.GetCustomAttributesMethodOverrideMiss #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Attributes.GetCustomAttributesMethodOverrideHit #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Attributes.GetCustomAttributesMethodBaseHit #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Attributes.IsDefinedMethodBaseHit #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Attributes.IsDefinedMethodOverrideMissInherit #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Attributes.IsDefinedMethodOverrideMiss #### 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 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in PerfLabTests.CastingPerf

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.44 ms 3.41 ms 0.77 0.04 False
4.86 ms 3.79 ms 0.78 0.02 False
64.85 ns 50.66 ns 0.78 0.06 True
5.16 ms 3.74 ms 0.73 0.02 True
373.12 ns 303.48 ns 0.81 0.04 False
211.38 ns 165.02 ns 0.78 0.05 False
5.22 ms 3.84 ms 0.73 0.03 False
4.93 ms 3.81 ms 0.77 0.01 False
48.75 ns 39.63 ns 0.81 0.08 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 'PerfLabTests.CastingPerf*'
### PerfLabTests.CastingPerf.CheckArrayIsInterfaceYes #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf.IFooObjIsDescendantOfIFoo #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf.CheckArrayIsNonvariantGenericInterfaceNo #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf.ObjObjIsFoo #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf.CheckArrayIsVariantGenericInterfaceReflection #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf.CheckArrayIsVariantGenericInterfaceNo #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf.FooObjIsDescendant #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf.IFooObjIsIFooInterAlia #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf.CheckArrayIsArrayByVariance #### 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 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Globalization.Tests.StringSearch

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
8.23 μs 6.14 μs 0.75 0.06 False
18.35 μs 15.12 μs 0.82 0.04 True
4.55 μs 3.08 μs 0.68 0.14 False
7.80 μs 6.18 μs 0.79 0.06 False
8.42 μs 6.32 μs 0.75 0.07 False
12.31 μs 9.50 μs 0.77 0.09 False
7.93 μs 6.15 μs 0.78 0.07 True
4.64 μs 3.19 μs 0.69 0.13 False
41.79 μs 32.66 μs 0.78 0.05 True
4.47 μs 3.20 μs 0.72 0.12 False
18.86 μs 14.65 μs 0.78 0.07 True
12.06 μs 9.47 μs 0.79 0.11 False
12.92 μs 9.30 μs 0.72 0.13 False
11.87 μs 9.38 μs 0.79 0.07 False
11.99 μs 9.78 μs 0.82 0.07 False

graph graph 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.Globalization.Tests.StringSearch*'
### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, IgnoreCase, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (en-US, IgnoreSymbols, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (pl-PL, None, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (, IgnoreCase, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, None, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (en-US, None, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (pl-PL, None, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (en-US, None, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (en-US, IgnoreSymbols, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (, IgnoreCase, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (en-US, IgnoreSymbols, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (, None, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (, IgnoreCase, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (en-US, IgnoreCase, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (en-US, IgnoreSymbols, False)) #### 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 1 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in Exceptions.Handling

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.20 μs 903.71 ns 0.75 0.03 True
13.04 μs 9.67 μs 0.74 0.02 True
1.20 μs 864.72 ns 0.72 0.02 True
1.95 μs 1.42 μs 0.73 0.11 True
4.43 μs 3.28 μs 0.74 0.24 False
1.94 μs 1.47 μs 0.76 0.07 True
4.94 μs 4.07 μs 0.83 0.17 False
4.21 μs 3.24 μs 0.77 0.06 False
1.48 μs 1.09 μs 0.74 0.02 True
5.06 μs 3.79 μs 0.75 0.10 False
7.94 μs 5.99 μs 0.75 0.18 False
8.10 μs 6.17 μs 0.76 0.19 False
1.61 μs 1.23 μs 0.77 0.03 True
1.73 μs 1.37 μs 0.80 0.02 False
1.84 μs 1.42 μs 0.77 0.08 True
5.00 μs 3.95 μs 0.79 0.18 False
4.75 μs 3.74 μs 0.79 0.02 False
4.20 μs 3.11 μs 0.74 0.31 False
4.85 μs 3.60 μs 0.74 0.27 False
13.95 μs 10.48 μs 0.75 0.03 True
1.90 μs 1.42 μs 0.74 0.05 False
2.27 μs 1.81 μs 0.80 0.05 False
4.35 μs 3.36 μs 0.77 0.22 False
23.56 μs 16.74 μs 0.71 0.26 False
6.95 μs 4.87 μs 0.70 0.20 False
3.72 μs 2.83 μs 0.76 0.30 False
23.83 μs 18.87 μs 0.79 0.25 False

graph graph graph graph graph graph graph graph graph graph graph graph graph graph 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 'Exceptions.Handling*'
### Exceptions.Handling.ThrowAndCatchWhen(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.CatchAndThrowOtherDeep(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatch(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatchWhenFinally(kind: Hardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatchDeep(kind: Hardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatchFinally(kind: Hardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.TryAndCatchDeep_CaugtAtTheTop(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatch(kind: ReflectionSoftware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.MultipleNestedTryFinally(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatch(kind: ReflectionHardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatchDeep(kind: ReflectionHardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatchDeepRecursive(kind: ReflectionHardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.MultipleNestedTryCatch_LastCatches(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatch_ManyCatchBlocks(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatchWhen(kind: Hardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.TryAndFinallyDeep(kind: Hardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatch_ManyCatchBlocks(kind: ReflectionSoftware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatchDeepRecursive(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatchDeepRecursive(kind: Hardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.CatchAndThrowOtherDeep(kind: Hardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatch(kind: Hardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.MultipleNestedTryCatch_LastCatches(kind: Hardware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.TryAndFinallyDeep(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.CatchAndRethrowDeep(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatchDeep(kind: ReflectionSoftware) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.ThrowAndCatchDeep(kind: Software) #### ETL Files #### Histogram #### JIT Disasms ### Exceptions.Handling.CatchAndRethrowDeep(kind: Hardware) #### 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 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Sort<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.78 ms 1.57 ms 0.88 0.05 False
1.69 ms 1.48 ms 0.88 0.04 False
1.80 ms 1.59 ms 0.89 0.04 False
1.77 ms 1.55 ms 0.88 0.04 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.Collections.Sort&lt;String&gt;*'
### System.Collections.Sort<String>.Array_ComparerClass(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<String>.Array(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<String>.Array_ComparerStruct(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<String>.Array_Comparison(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)
performanceautofiler[bot] commented 1 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in PerfLabTests.CastingPerf2.CastingPerf

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.13 ms 924.24 μs 0.82 0.15 False
5.16 ms 3.81 ms 0.74 0.06 True
5.16 ms 3.62 ms 0.70 0.07 True
5.82 ms 5.31 ms 0.91 0.08 False
4.16 ms 2.82 ms 0.68 0.12 False
2.03 ms 1.91 ms 0.94 0.04 False

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 'PerfLabTests.CastingPerf2.CastingPerf*'
### PerfLabTests.CastingPerf2.CastingPerf.FooObjIsDescendant #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf2.CastingPerf.ObjObjrefValueType #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf2.CastingPerf.ObjScalarValueType #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf2.CastingPerf.ObjrefValueTypeObj #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf2.CastingPerf.ObjInt #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.CastingPerf2.CastingPerf.ObjFooIsObj #### 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 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Type

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.83 μs 1.49 μs 0.82 0.04 False
1.57 μs 1.24 μs 0.79 0.03 False
2.49 μs 1.80 μs 0.73 0.03 False
2.42 μs 2.03 μs 0.84 0.03 False
1.80 μs 1.48 μs 0.82 0.04 False
1.58 μs 1.28 μs 0.81 0.04 False
1.60 μs 1.22 μs 0.76 0.03 False
6.78 μs 5.45 μs 0.80 0.02 False
5.85 μs 4.67 μs 0.80 0.06 False
1.72 μs 1.34 μs 0.78 0.06 False
1.47 μs 1.11 μs 0.76 0.03 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.Tests.Perf_Type*'
### System.Tests.Perf_Type.GetType_FullyQualifiedNames(input: typeof(int)) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Type.GetType_NonFullyQualifiedNames(input: "System.Int32&") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Type.GetType_InvalidName #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Type.GetType_FullyQualifiedNames(input: typeof(System.Int32[])) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Type.GetType_FullyQualifiedNames(input: typeof(System.Tests.Nested)) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Type.GetType_NonFullyQualifiedNames(input: "System.Int32[]") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Type.GetType_NonFullyQualifiedNames(input: "System.Int32*") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Type.GetType_FullyQualifiedNames(input: typeof(System.Collections.Generic.Dictionary`2[])) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Type.GetType_FullyQualifiedNames(input: typeof(System.Tests.NestedGeneric<String, Boolean>)) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Type.GetType_NonFullyQualifiedNames(input: "System.Int32[*]") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Type.GetType_NonFullyQualifiedNames(input: "System.Int32") #### 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 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Threading.Tests.Perf_Interlocked

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
84.60 ns 67.67 ns 0.80 0.12 False
42.35 ns 36.61 ns 0.86 0.15 False
40.59 ns 37.36 ns 0.92 0.18 False
43.58 ns 39.08 ns 0.90 0.14 False
73.11 ns 61.06 ns 0.84 0.15 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.Threading.Tests.Perf_Interlocked*'
### System.Threading.Tests.Perf_Interlocked.Add_long #### ETL Files #### Histogram #### JIT Disasms ### System.Threading.Tests.Perf_Interlocked.Decrement_int #### ETL Files #### Histogram #### JIT Disasms ### System.Threading.Tests.Perf_Interlocked.Increment_int #### ETL Files #### Histogram #### JIT Disasms ### System.Threading.Tests.Perf_Interlocked.Add_int #### ETL Files #### Histogram #### JIT Disasms ### System.Threading.Tests.Perf_Interlocked.Increment_long #### 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 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in PerfLabTests.GetMember

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
45.19 ms 34.45 ms 0.76 0.02 False
17.87 ms 13.91 ms 0.78 0.01 False
108.45 ms 85.03 ms 0.78 0.02 False
27.29 ms 20.70 ms 0.76 0.03 False
35.69 ms 27.41 ms 0.77 0.05 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 'PerfLabTests.GetMember*'
### PerfLabTests.GetMember.GetMethod5 #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.GetMember.GetMethod2 #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.GetMember.GetMethod12 #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.GetMember.GetMethod3 #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.GetMember.GetMethod4 #### 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 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.CtorFromCollectionNonGeneric<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
193.60 μs 126.55 μs 0.65 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.CtorFromCollectionNonGeneric&lt;Int32&gt;*'
### System.Collections.CtorFromCollectionNonGeneric<Int32>.ArrayList(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 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.CtorDefaultSizeNonGeneric

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
73.68 ns 57.58 ns 0.78 0.12 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.CtorDefaultSizeNonGeneric*'
### System.Collections.CtorDefaultSizeNonGeneric.Stack #### 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 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Memory.ReadOnlySpan

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.12 μs 1.55 μs 0.73 0.02 False

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.ReadOnlySpan*'
### System.Memory.ReadOnlySpan.IndexOfString(input: "だ", value: "た", comparisonType: InvariantCulture) #### 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 1 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 128fdfd1fd982e277e969d5c7ca1710345f4f649
Compare 45afaf92989faf211bb39e9d27ead7c88984bd7e
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Object

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
17.86 ns 14.86 ns 0.83 0.34 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_Object*'
### System.Tests.Perf_Object.ctor #### 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)
kg commented 1 month ago

The chrome bump https://github.com/dotnet/runtime/commit/51bd2b970a90b0c12e59d4b904b9641491cc60af is in the diff range for this and for https://github.com/dotnet/perf-autofiling-issues/issues/42056 . Do we know if that would impact how the perf benchmarks run? It would make sense if a chrome update could have caused widespread improvements, since I don't see any obvious culprits in the diff ranges otherwise.