Skip to content

GetMemberTypeInFSharpForm produces indirectly produces a large amount of Tuple instantiations causing UI delays in VS #5938

Description

@davkean

Trace: https://developercommunity.visualstudio.com/content/problem/245786/slow-f-editing-experience-up-to-a-minute-until-typ.html

GC Rollup By Generation

Gen Count MaxPause MaxPeak MB Max AllocMB/sec TotalPause TotalAlloc MB Alloc MB/MSec GC Survived MB/MSec GC MeanPause Induced
ALL 5196 1,652.0 744.6 8,424.125 40,245.7 29,166.1 0.7 1.026 7.7 18
0 3869 886.0 744.6 8,424.125 14,865.1 20,456.4 0.5 0.083 3.8 0
1 1286 53.5 744.6 3,284.108 17,473.7 8,524.0 0.6 0.746 13.6 0
2 41 1,652.0 744.6 502.652 7,906.8 185.7 0.3 7.355 192.8 18

This method indirectly causes large amounts of allocations, in above trace we're talking 6 GB:

image

Of which are made up of nearly entirely Tuples or lists of Tuples:

image

I don't know enough about this method to know if this needs to broken up further into a little more actionable task.

Activity

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

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions