Skip to content

Expose "Parallel projects analysis" option in Visual Studio #13919

@safesparrow

Description

@safesparrow

Is your feature request related to a problem? Please describe.

No.

Describe the solution you'd like

  1. I would like Visual Studio to expose an option in the UI to enable the "Parallel Projects Analysis" feature of the FCS.
    That feature is being worked on in Parallel project analysis behind a feature flag #13521 .
    In its current form, enabling the feature in the FCS requires setting the ParallelReferenceResolution=true when calling FSharpChecker.Create.

  2. The feature has most impact in the service, but can also be enabled for the standalone compiler.
    To do that, one needs to either:

  • set the environment variable FCS_ParallelReferenceResolution=true, or
  • pass in --parallelreferenceresolution flag to the compiler.
    I'm not entirely sure if this is needed, since it doesn't speedup standalone compilation massively (as the compiler works on projects in isolation and the only thing that's parallelised there is assembly resolution).

Describe alternatives you've considered

  • Allowing end-users to set the FCS_ParallelReferenceResolution environment variable themselves and this way enable the feature. This alternative is less user-friendly

Additional context

@vzarytovskii mentioned that such a config item would be desirable for easier testing and gradual rollout of the feature.

Metadata

Metadata

Assignees

Type

No type

Projects

Status

Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions