Skip to content

[Perf] Linux/x64: 1 Improvement on 6/2/2026 10:24:00 PM +00:00 #74255

Closed

Description

@performanceautofiler

Run Information

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

Improvements in System.Linq.Tests.Perf_Enumerable

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
96.44 ns 33.36 ns 0.35 0.06 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.Linq.Tests.Perf_Enumerable*'
Details

System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_FirstElementMatches(input: IEnumerable)

ETL Files

Histogram

JIT Disasms

Docs

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

Activity

  1. LoopedBard3 commented on Jun 9, 2026

    @LoopedBard3
    Member

    🔍 Automated Triage Analysis

    Summary: All reported changes appear to be measurement noise. The single test (System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_FirstElementMatches) shows a -65% raw delta but historical CV is 76.6% with extreme variance from spike clusters, placing the change well within normal fluctuation (z=-0.94, adaptive threshold 153%). Finding confidence 4/5 (strong historical data, 291 runs), improvement confidence 1/5 (classified as noise).

    Finding Confidence: 4/5 (analysis accuracy)
    Improvement Confidence: 1/5 (likelihood of true improvement)
    ⚠️ Assessment: Likely noise - recommend closing or monitoring for recurrence.

    🤖 Proposed Next Actions: Likely noise — close & label — 3 proposed (rule R1_all_noise — see Full Analysis for the table).

    📊 Full Analysis (click to expand)

    Summary: All reported changes appear to be measurement noise. The single test (System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_FirstElementMatches) shows a -65% raw delta but historical CV is 76.6% with extreme variance from spike clusters, placing the change well within normal fluctuation (z=-0.94, adaptive threshold 153%). Finding confidence 4/5 (strong historical data, 291 runs), improvement confidence 1/5 (classified as noise).

    Issue Overview

    • Issue: [Perf] Linux/x64: 1 Improvement on 6/2/2026 10:24:00 PM +00:00 #74255 - [Perf] Linux/x64: 1 Improvement on 6/2/2026 10:24:00 PM +00:00
    • Type: Performance Improvement
    • Date: 2026-06-02 | Queue: Ubuntu.2204.Amd64.Viper.Perf | OS/Arch: linux/x64
    • Commits: c7d89359fb2a → ac695692911 (28 commits)
    • Labels: untriaged, perf-improvement, arch-x64, os-linux, branch-refs/heads/main, runtime-coreclr, kind-micro, compilationmode-tiered, runkind-micro
    • Runtime Stack: Desktop + CoreCLR (implicit)
    • Historical Data: Available (291 prior runs, 322 total examined)

    Test Analysis

    Test Name Baseline Compare Δ% μ σ n z Thresh% Noise? Assessment
    SingleWithPredicate_FirstElementMatches(input: IEnumerable) 96.44 ns 33.36 ns -65.4% 117.80 90.18 291 -0.94 153.1% Y Within extreme historical variance; bimodal clusters

    Legend: μ=mean, σ=stddev, n=runs, z=z-score, Thresh%=adaptive threshold

    Finding Confidence: 4/5 - Strong historical data with 291 prior runs providing excellent coverage. Data quality is high despite the extreme variance.

    Candidate Stack Relevance

    Not applicable — all tests classified as noise; no likely cause attribution needed.

    Noise Classification Details

    System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_FirstElementMatches(input: IEnumerable)

    • Delta: 96.44 ns → 33.36 ns (-65.4%)
    • Historical Context: μ=117.80 ns (σ=90.18, n=291); z-score=-0.94; adaptive threshold=153.1%; CV=76.6%
    • Classification: Noise
    • Rationale: Despite a large raw delta of -65.4%, the absolute z-score (0.94) is well below the significance threshold of 2.0, and the percent change is far below the adaptive threshold of 153.1%. The extreme historical CV (76.6%) is driven by a transient spike cluster (values 499–581 ns around indices 52–64) that inflates stddev dramatically. The compare values (~32–36 ns and ~56 ns) are bimodal but remain within 1 SD of the historical mean. This test has inherent high variance that makes the current delta indistinguishable from noise.
    • Change Pattern: Unknown (no clear step change or drift detected)

    Open Questions

    • Historical Data: Extremely high variance (CV=76.6%) makes it difficult to detect genuine improvements with this test
    • Spike Cluster: Historical series contains a transient spike cluster (values 499–581 ns) around indices 52–64 that dramatically inflates stddev; if those outliers have been resolved, re-baselining would tighten the threshold
    • Bimodal Compare: After-values show two clusters (~32–36 ns and ~56 ns), suggesting possible environment switching or flaky benchmark behavior
    • Verification Needed: Not required — classified as noise with high confidence

    Recommended Actions

    1. Re-baseline consideration - If the historical spike cluster (499–581 ns) represents a resolved transient issue, re-baselining the test history would reduce σ and make future genuine improvements detectable
    2. Investigate bimodality - The bimodal compare values (~32–36 ns vs ~56 ns) may indicate environment-dependent behavior worth investigating for benchmark stability
    3. No further triage needed - This change is noise under current statistical thresholds; no attribution or bisection warranted

    🤖 Proposed Next Actions

    Rule: R1_all_noise — Likely noise — close & label.

    All reported improvements were classified as noise.

    # Action Status Details
    1 Add label 🕒 Planned noise
    2 Remove label 🕒 Planned untriaged
    3 Close issue 🕒 Planned reason not_planned

    Generated by PerfTriageAgent on 2026-06-09 11:13 UTC

  2. AndyAyersMS commented on Jun 9, 2026

    @AndyAyersMS
    Member
  3. added
    Gold Star (Bot)When the triage bot does good.
    and removed
    Gold Star (Bot)When the triage bot does good.
    on Jun 11, 2026
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