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

SPMI: Extend list of unrecorded environment variables #77504

Merged
merged 1 commit into from
Oct 27, 2022

Conversation

jakobbotsch
Copy link
Member

We are currently hitting issues when there are diffs in the FileCheck tests because they are recorded with JitStdOutFile and the SPMI driver does not override this correctly. Add this and a lot of other environment variables to the list of variables we do not record.

This big list of string compares may look somewhat scary but we only query the config once during startup of the JIT, so it isn't a problem. I was not able to measure anything significant when collecting a simple "Hello, world!" C# app.

For this list I simply went through the variables and added the ones I don't think it makes sense to record into the collection. Let me know if any of them seem unreasonable.

We are currently hitting issues when there are diffs in the FileCheck
tests because they are recorded with JitStdOutFile and the SPMI driver
does not override this correctly. Add this and a lot of other
environment variables to the list of variables we do not record with.

This big list of string compares may look somewhat scary but we only
record variables once during startup of the JIT, so it shouldn't be too
bad.
@dotnet-issue-labeler dotnet-issue-labeler bot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Oct 26, 2022
@ghost ghost assigned jakobbotsch Oct 26, 2022
@ghost
Copy link

ghost commented Oct 26, 2022

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

Issue Details

We are currently hitting issues when there are diffs in the FileCheck tests because they are recorded with JitStdOutFile and the SPMI driver does not override this correctly. Add this and a lot of other environment variables to the list of variables we do not record.

This big list of string compares may look somewhat scary but we only query the config once during startup of the JIT, so it isn't a problem. I was not able to measure anything significant when collecting a simple "Hello, world!" C# app.

For this list I simply went through the variables and added the ones I don't think it makes sense to record into the collection. Let me know if any of them seem unreasonable.

Author: jakobbotsch
Assignees: -
Labels:

area-CodeGen-coreclr

Milestone: -

// Special cases: we don't want to store some DOTNET variables during
// collections, typically when they refer to file paths or simply because
// it does not make sense to replay with it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I verified that DOTNET_JitName and DOTNET_AltJitName do not come through this path since the JIT doesn't query them. So they don't need to be here.

@jakobbotsch jakobbotsch merged commit 90a24ca into dotnet:main Oct 27, 2022
@jakobbotsch jakobbotsch deleted the spmi-avoid-recording-more-vars branch October 27, 2022 11:39
@ghost ghost locked as resolved and limited conversation to collaborators Nov 26, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants