Skip to content

[Perf] Linux/x64: 14 Regressions on 9/18/2024 11:52:02 PM #108203

Closed

Description

@performanceautofiler

Run Information

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

Regressions in Microsoft.Extensions.Logging.ScopesOverheadBenchmark

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
12.67 ns 15.56 ns 1.23 0.23 False
25.71 ns 27.08 ns 1.05 0.12 False
8.39 ns 9.79 ns 1.17 0.12 False
35.94 ns 41.14 ns 1.14 0.13 False
25.80 ns 28.11 ns 1.09 0.11 False
25.66 ns 31.76 ns 1.24 0.09 False
31.46 ns 33.81 ns 1.07 0.09 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 'Microsoft.Extensions.Logging.ScopesOverheadBenchmark*'
Details

Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel_InsideScope(HasISupportLoggingScopeLogger: False, CaptureScopes: True)

ETL Files

Histogram

JIT Disasms

Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered(HasISupportLoggingScopeLogger: True, CaptureScopes: False)

ETL Files

Histogram

JIT Disasms

Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel_InsideScope(HasISupportLoggingScopeLogger: False, CaptureScopes: False)

ETL Files

Histogram

JIT Disasms

Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered_InsideScope(HasISupportLoggingScopeLogger: False, CaptureScopes: True)

ETL Files

Histogram

JIT Disasms

Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered(HasISupportLoggingScopeLogger: False, CaptureScopes: True)

ETL Files

Histogram

JIT Disasms

Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered(HasISupportLoggingScopeLogger: True, CaptureScopes: True)

ETL Files

Histogram

JIT Disasms

Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered_InsideScope(HasISupportLoggingScopeLogger: False, CaptureScopes: False)

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 ViperUbuntu
Baseline b6b0fb1e0b135c774b797d7c04de7729bee99e91
Compare e8613a6a74f81b237495a349f60da51de7acdd10
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in Microsoft.Extensions.Logging.Formatting

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
17.82 ns 19.75 ns 1.11 0.16 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 'Microsoft.Extensions.Logging.Formatting*'
Details

Microsoft.Extensions.Logging.Formatting.NoArguments

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 ViperUbuntu
Baseline b6b0fb1e0b135c774b797d7c04de7729bee99e91
Compare e8613a6a74f81b237495a349f60da51de7acdd10
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in Microsoft.Extensions.Logging.LoggingOverhead

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
34.81 ns 37.34 ns 1.07 0.13 False
17.46 ns 18.94 ns 1.08 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 'Microsoft.Extensions.Logging.LoggingOverhead*'
Details

Microsoft.Extensions.Logging.LoggingOverhead.TwoArguments

ETL Files

Histogram

JIT Disasms

Microsoft.Extensions.Logging.LoggingOverhead.NoArguments_DefineMessage

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 ViperUbuntu
Baseline b6b0fb1e0b135c774b797d7c04de7729bee99e91
Compare e8613a6a74f81b237495a349f60da51de7acdd10
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_ToStream<ClassImplementingIXmlSerialiable>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
792.77 ns 881.29 ns 1.11 0.21 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 'MicroBenchmarks.Serializers.Xml_ToStream&lt;ClassImplementingIXmlSerialiable&gt;*'
Details

MicroBenchmarks.Serializers.Xml_ToStream<ClassImplementingIXmlSerialiable>.XmlSerializer_

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 ViperUbuntu
Baseline b6b0fb1e0b135c774b797d7c04de7729bee99e91
Compare e8613a6a74f81b237495a349f60da51de7acdd10
Diff Diff
Configs CompilationMode:tiered, 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
10.10 ns 11.60 ns 1.15 0.27 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;*'
Details

System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.ShiftLeft(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 ViperUbuntu
Baseline b6b0fb1e0b135c774b797d7c04de7729bee99e91
Compare e8613a6a74f81b237495a349f60da51de7acdd10
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in Microsoft.Extensions.Logging.EventSourceLogger

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
58.75 ns 68.22 ns 1.16 0.09 False
59.00 ns 69.97 ns 1.19 0.13 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 'Microsoft.Extensions.Logging.EventSourceLogger*'
Details

Microsoft.Extensions.Logging.EventSourceLogger.NestedScopes_TwoMessages(HasSubscribers: False, Json: True)

ETL Files

Histogram

JIT Disasms

Microsoft.Extensions.Logging.EventSourceLogger.NestedScopes_TwoMessages(HasSubscribers: False, Json: False)

ETL Files

Histogram

JIT Disasms

Docs

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

Activity

  1. ghost added
    needs-area-labelAn area label is needed to ensure this gets routed to the appropriate area owners
    on Sep 24, 2024
  2. LoopedBard3 commented on Sep 24, 2024

    @LoopedBard3
    Member

    Likely caused by: #106843, FYI @davidwrighton
    Related Regressions:
    Linux x64: dotnet/perf-autofiling-issues#41679
    Windows x64: dotnet/perf-autofiling-issues#41679

  3. dotnet-policy-service commented on Sep 25, 2024

    @dotnet-policy-service
    Contributor

    Tagging subscribers to this area: @mangod9
    See info in area-owners.md if you want to be subscribed.

  4. removed
    untriagedNew issue has not been triaged by the area owner
    on Sep 25, 2024
  5. added this to the 10.0.0 milestone on Sep 25, 2024
  6. mangod9 commented on Sep 25, 2024

    @mangod9
    Member

    Assume this is on Main and not 9?

  7. LoopedBard3 commented on Sep 25, 2024

    @LoopedBard3
    Member

    Yes, this is against runtime branch refs/heads/main.

  8. removed
    needs-area-labelAn area label is needed to ensure this gets routed to the appropriate area owners
    on Oct 2, 2024
  9. davidwrighton commented on Jul 8, 2025

    @davidwrighton
    Member

    I've looked through these and while there was a jump when I changed the logic, the perf cost seems to have been recaptured over time.

  10. locked and limited conversation to collaborators on Aug 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions