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

RISC-V: add native build spec #7556

Merged
merged 1 commit into from
Dec 17, 2024

Conversation

janvrany
Copy link
Contributor

This PR adds a RISC-V native build spec in order to (re) enable OMR CI for RISC-V using RISC-V hardware.
For details see #7530.

@AdamBrousseau
Copy link
Contributor

jenkins build riscv

@AdamBrousseau
Copy link
Contributor

Looks like the container is missing git. I commented in the Eclipse issue.

@AdamBrousseau
Copy link
Contributor

jenkins build riscv

@janvrany janvrany force-pushed the pr/riscv-add-native-build branch from 6b15486 to 6537581 Compare November 21, 2024 22:16
@janvrany
Copy link
Contributor Author

jenkins build riscv

@AdamBrousseau
Copy link
Contributor

@babsingh can you confirm if we need to change the alias code for riscv vs riscv_cross specs? Seems this is related to adding extra build or test options. Do we leave them both as riscv or should the old one be changed to riscv_cross?

@babsingh
Copy link
Contributor

It makes sense to differentiate between the two variants, i.e., include both riscv and riscv_cross. Otherwise, we lose control over distinguishing between the two builds.

@janvrany janvrany force-pushed the pr/riscv-add-native-build branch from 6537581 to 3468d2e Compare November 22, 2024 11:59
@janvrany
Copy link
Contributor Author

jenkins build riscv

@janvrany janvrany force-pushed the pr/riscv-add-native-build branch from 3468d2e to 62d4368 Compare November 22, 2024 12:02
@janvrany
Copy link
Contributor Author

@babsingh

It makes sense to differentiate between the two variants, i.e., include both riscv and riscv_cross. Otherwise, we lose control over distinguishing between the two builds.

So you suggest to do the following?

'linux_riscv64_cross' : [
'alias': 'riscv_cross',

and

'linux_riscv64' : [
'alias': 'riscv',

@babsingh
Copy link
Contributor

Yes, just the aliases should differ for the two configurations. If you'd like, you can suggest shorter alias names.

@janvrany
Copy link
Contributor Author

Looking at (failed) run 6 ( https://ci.eclipse.org/omr/job/PullRequest-linux_riscv64/6/console):

I'll have another look next week.

@janvrany
Copy link
Contributor Author

janvrany commented Dec 1, 2024

jenkins build riscv

1 similar comment
@janvrany
Copy link
Contributor Author

janvrany commented Dec 1, 2024

jenkins build riscv

@janvrany
Copy link
Contributor Author

janvrany commented Dec 1, 2024

  • porttest fails (wild-guessing) because of core file size limits.

I think I was right. The build runs with core dump size hard limit set to 0, see https://ci.eclipse.org/omr/job/PullRequest-linux_riscv64/26/consoleFull (text-search for "ulimit").

I double checked: on my test docker image core dump tests pass if core file limit is at unlimited or 1MB and fail when set to zero.

I think we need to open an issue with Eclipse CI to increase the limit for us. Or else, disable dump tests.

@janvrany
Copy link
Contributor Author

janvrany commented Dec 1, 2024

I think we need to open an issue with Eclipse C

I went ahead: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/issues/5370

@janvrany
Copy link
Contributor Author

janvrany commented Dec 2, 2024

jenkins build riscv

@janvrany
Copy link
Contributor Author

janvrany commented Dec 2, 2024

RISC-V build agent was updated and dump tests are now passing. This leaves only jitbuilder tests failing - hopefully #7181 gets fixed soon (via #7576 or otherwise).

@janvrany
Copy link
Contributor Author

jenkins build riscv

This commit adds a RISC-V native build spec for CI testing. This is
intended to run on Eclipse CBI [1].

[1]: https://github.com/eclipse-cbi/cbi/wiki#whats-provided
@janvrany janvrany force-pushed the pr/riscv-add-native-build branch from 4a06bff to 7059bfe Compare December 10, 2024 22:07
@janvrany
Copy link
Contributor Author

jenkins build riscv

Copy link
Contributor

@AdamBrousseau AdamBrousseau left a comment

Choose a reason for hiding this comment

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

lgtm from build side.

@babsingh
Copy link
Contributor

babsingh commented Dec 17, 2024

The PR build failure is unrelated to the changes in this PR. It's a known issue, which is documented in #7181. @AdamBrousseau The riscv machines need a specific Python version, which supports assertRegexpMatches.

@babsingh babsingh merged commit 25c58e2 into eclipse-omr:master Dec 17, 2024
1 of 2 checks passed
@AdamBrousseau
Copy link
Contributor

Ok. In that case can @janvrany ask in the Eclipse Gitlab ticket for the version we need?

@babsingh
Copy link
Contributor

Ok. In that case can @janvrany ask in the Eclipse Gitlab ticket for the version we need?

#7576 tries to address the issue by replacing the usage of assertRegexpMatches with assertRegex, which is supported in newer Python versions. If this PR is accepted, we won't need to manage/update the Python version on the machines.

@janvrany janvrany deleted the pr/riscv-add-native-build branch December 17, 2024 21:14
@janvrany
Copy link
Contributor Author

Personally, I'd very much prefer to avoid having custom version of Python. It is not readily available as package - not in Ubuntu, nor in Debian - so it would mean compiling our own and install it (maybe alongside packaged Python). Given that we do not manage the build agent image, feels like lot work not only for us, but also for Eclipse CI team.

Let's wait for #7576 review and see.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants