Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Type providers allocate large unshared assembly metadata that ends up on LOH #5931

Open
davkean opened this issue Nov 20, 2018 · 0 comments
Open

Comments

@davkean
Copy link
Member

davkean commented Nov 20, 2018

Even after we cache creation of type providers in #5929, in the trace they will be allocating up to ~500KB of assembly metadata each per creation, most of which ends up on the LOH heap. This assembly metadata appears to be the same assemblies that are used by not only type providers themselves, but also the compiler. We should attempt to share this metadata to avoid it being loaded over and over again. Ideally, these should be going to through VS's IVsSmartOpenScope service while inside of VS to avoid duplicating metadata across the solution.

@davkean davkean changed the title Type providers can allocate large unshared assembly metadata that ends up on LOH Type providers allocate large unshared assembly metadata that ends up on LOH Nov 20, 2018
@cartermp cartermp added this to the 16.0 milestone Nov 20, 2018
@cartermp cartermp modified the milestones: 16.0, 16.1 Feb 21, 2019
@cartermp cartermp modified the milestones: 16.1, 16.2 Apr 23, 2019
@cartermp cartermp modified the milestones: 16.2, Backlog Apr 30, 2019
@vzarytovskii vzarytovskii moved this to Not Planned in F# Compiler and Tooling Jun 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: New
Development

No branches or pull requests

4 participants