Skip to content

Perf: Optimization for GAMs (VTune) #3004

Closed as not planned
Closed as not planned

Description

@glebuk

Benchmarking using VTune has found several bottlenecks in GAMS

  • Significant CPU cycles spent in Interlocked.CompareExchange.
  • Call-stack & source code of CenterGraph shows Interlocked.CompareExchange in the inner loop, contributing to the high CPU cycles in CompareExchange. Look at reducing the calls to this intrinsic.
  • Next step: Look at re-jiggering the code in CenterGraph to avoid the CompareExchange in the inner loop

Top HotSpots:

Function Module CPU Time
COMInterlocked::CompareExchangeDouble coreclr.dll 55.754s
<>c__DisplayClass46_0::b__0 Microsoft.ML.FastTree.dll 35.381s
Microsoft::ML::Internal::Utilities::DoubleParser::TryParseCore Microsoft.ML.Core.dll 30.808s
<>c__DisplayClass49_0::b__0 Microsoft.ML.FastTree.dll 26.872s

Activity

  1. added
    Priority:3Work that is nice to have
    area-TreesTree-based trainers, including FastTree and LightGBM
    and removed on Sep 8, 2026
  2. matouskozak commented on Oct 23, 2026

    @matouskozak
    Member

    Triage: This is an old issue and investigating this will require new profiles. Please re-open if this is still a blocker and we can take a look.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Priority:3Work that is nice to havearea-TreesTree-based trainers, including FastTree and LightGBMenhancementNew feature or requesttenet-performancePerformance related issueyellowmaintenance only

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions