-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Suppress OSR for crossgen2 execution #62968
Suppress OSR for crossgen2 execution #62968
Conversation
In CI testing, crossgen2 currently is run via a .NET 6 runtime, and that runtime has some bugs in OSR. Work around by suppressing OSR for the duration of the run. We should be able to revert this once we update the crossgen2 runtime to a .NET 7 version.
cc @trylek @dotnet/jit-contrib This should allow the |
/azp run runtime-jit-experimental |
Azure Pipelines successfully started running 1 pipeline(s). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great, thank you! These suppressions are a nasty hack that's likely to continue to bite us in the future, I'm wondering whether we might be able to devise some more robust scheme, I'll think about it during the holidays ;-).
So far: one crossgen2 test doesn't use the normal execution path, so is still getting run and is failing for OSR: |
Hmm, sorry about that one, I think that was originally created by me, it was supposed to exercise then new multi-component composite builds that are to this day beyond the scope of scripting used for "normal" CG2 tests. |
In other words, if you end up having a hard time to make the test work, it shouldn't be a big deal to just disable it with an issues.targets entry and the core runtime team will tackle it as part of the .NET 7 feature work. |
It looks like it can get a similar fix -- it may end up disabling OSR for the running of the test as well, but that seems ok for now. |
That turned out to be the only issue remaining. |
Crossgen2 is one of the 1st party candidates for NativeAOT adoption in .NET 7. If we AOT compile crossgen2, these environment variables will no longer affect it. AOT compiling crossgen2 will also have other advantages based on my past experiments (#37411 (comment)). |
In CI testing, crossgen2 currently is run via a .NET 6 runtime, and
that runtime has some bugs in OSR.
Work around by suppressing OSR for the duration of the run. We should
be able to revert this once we update the crossgen2 runtime
to a .NET 7 version.