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

Expand osx-arm64 test coverage #44008

Open
wants to merge 4 commits into
base: release/9.0.2xx
Choose a base branch
from

Conversation

v-wuzhai
Copy link
Member

@v-wuzhai v-wuzhai commented Oct 9, 2024

No description provided.

@dotnet-issue-labeler dotnet-issue-labeler bot added Area-Infrastructure untriaged Request triage from a team member labels Oct 9, 2024
@v-wuzhai v-wuzhai marked this pull request as ready for review October 9, 2024 08:18
@v-wuzhai v-wuzhai requested a review from a team as a code owner October 9, 2024 08:18
@v-wuzhai v-wuzhai requested a review from MiYanni October 9, 2024 08:19
@v-wuzhai v-wuzhai force-pushed the dev/Jason/Expand-osx-arm64-test-coverage branch from e9eb935 to 5598c42 Compare October 9, 2024 10:06
@v-wuzhai
Copy link
Member Author

v-wuzhai commented Oct 9, 2024

@MiYanni Is helixTargetContainer still needed here?

@marcpopMSFT
Copy link
Member

@MiYanni will be back on Friday. Looking at the logs, I see it ran the tests on osx.13.amd64.open so another change is needed somewhere in here to target the arm64 helix images. I can try to look tomorrow or we can wait for him or if you see where it should get updated, you can try that tonight.

/p:Rid=${{ parameters.runtimeIdentifier }}
${{ parameters.osProperties }}
${{ parameters.runtimeSourceProperties }}
/p:CustomHelixTargetQueue='osx.13.arm64.open'${{ parameters.helixTargetContainer }}
Copy link
Member

Choose a reason for hiding this comment

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

we can probably set the target queue upstream of this in a variable so we don't have to have the mostly duplicated if/else. miyanni can probably help with that.

Copy link
Member Author

Choose a reason for hiding this comment

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

@MiYanni I'm not very familiar with this area, so could you please help me improve it?

@marcpopMSFT
Copy link
Member

It looks like the latest change got us to run the tests on arm64 successfully as far as i can tell. From the results, the most common failure is in R2R and illink tests when downlevel targeting (net5 and net3.1)
error NETSDK1095: Optimizing assemblies for performance is not supported for the selected target platform or architecture. Please verify you are using a supported runtime identifier, or set the PublishReadyToRun property to false.

A lot of these tests use EnvironmentInfo.GetCompatibleRid so I wonder if we should have some special logic there that returns an x64 rid when targeting <netN.0 and the default would be arm64.

@agocke @elinor-fung Would ya'll want to keep around the downlevel targeting tests and is my proposal to change GetCompatibleRid reasonable or would you like to just get rid of the 3.1/5.0 targeting tests entirely? Alternatively, we could just modify the tests to return when run on arm64.

@elinor-fung
Copy link
Member

cc @dotnet/illink for whether 3.1/5.0 targeting tests are still valuable

If we do keep them, I'd suggest skipping downlevel on arm64 by switching the tests from InlineData to MemberData and only returning those downlevel versions when running on platforms that support it. I don't know that special-casing GetCompatibleRid for <netN.0 on osx-arm64 provides much interesting coverage.

@v-wuzhai v-wuzhai requested review from AntonLapounov and a team as code owners October 12, 2024 06:11
@agocke
Copy link
Member

agocke commented Oct 13, 2024

We can get rid of 3/5 tests

@marcpopMSFT
Copy link
Member

@v-wuzhai see agocke's comment above. Can you go through the tests that are failing on 3.1 and 5.0 in this PR and simply remove that coverage? Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Infrastructure untriaged Request triage from a team member
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants