Skip to content

[Perf] Linux/x64: 7 Regressions on 6/27/2025 11:05:34 AM +00:00 #117203

Closed

Description

@performanceautofiler

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline a0c5625a8db02927113b66e776dbb670099acfbd
Compare d38966ff663cb279148a82d1d0364dee40727f88
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
1.98 μs 3.14 μs 1.58 0.03 False
2.00 μs 3.22 μs 1.61 0.04 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: True, Json: True)

ETL Files

Histogram

JIT Disasms

Microsoft.Extensions.Logging.EventSourceLogger.NestedScopes_TwoMessages(HasSubscribers: True, Json: 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 TigerUbuntu
Baseline a0c5625a8db02927113b66e776dbb670099acfbd
Compare d38966ff663cb279148a82d1d0364dee40727f88
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in System.Diagnostics.Tracing.Perf_EventListener

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
30.87 ns 41.17 ns 1.33 0.13 False
75.65 ns 88.72 ns 1.17 0.12 False
78.19 ns 89.73 ns 1.15 0.06 False
61.55 ns 71.05 ns 1.15 0.11 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.Diagnostics.Tracing.Perf_EventListener*'
Details

System.Diagnostics.Tracing.Perf_EventListener.WriteEvent_NoParams

ETL Files

Histogram

JIT Disasms

System.Diagnostics.Tracing.Perf_EventListener.WriteEvent_MixedParams

ETL Files

Histogram

JIT Disasms

System.Diagnostics.Tracing.Perf_EventListener.WriteEvent_StringParams

ETL Files

Histogram

JIT Disasms

System.Diagnostics.Tracing.Perf_EventListener.WriteEvent_IntParams

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 TigerUbuntu
Baseline a0c5625a8db02927113b66e776dbb670099acfbd
Compare d38966ff663cb279148a82d1d0364dee40727f88
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in System.Diagnostics.Perf_EventSource

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
106.76 ns 127.21 ns 1.19 0.07 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.Diagnostics.Perf_EventSource*'
Details

System.Diagnostics.Perf_EventSource.Log

ETL Files

Histogram

JIT Disasms

Docs

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

Activity

  1. added
    needs-area-labelAn area label is needed to ensure this gets routed to the appropriate area owners
    on Jul 1, 2025
  2. added and removed
    needs-area-labelAn area label is needed to ensure this gets routed to the appropriate area owners
    on Jul 1, 2025
  3. dotnet-policy-service commented on Jul 7, 2025

    @dotnet-policy-service
    Contributor

    Tagging subscribers to this area: @tarekgh, @tommcdon, @steveisok, @pjanotti
    See info in area-owners.md if you want to be subscribed.

  4. tarekgh commented on Jul 7, 2025

    @tarekgh
    Member
  5. jkotas commented on Jul 7, 2025

    @jkotas
    Member
  6. rcj1 commented on Jul 11, 2025

    @rcj1
    Contributor

    Initial investigation into the NestedScopes tests show that the TraceLoggingEventTypes constructor appears to be responsible for approximately half of the performance degradation. Still looking into the root cause of this.

  7. rcj1 commented on Jul 12, 2025

    @rcj1
    Contributor

    The issue was related to accessing EventMetadata by reference vs by value.

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions