-
Notifications
You must be signed in to change notification settings - Fork 6.1k
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
[ci] Build wheels for Linux ARM64 #31522
Conversation
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
# Conflicts: # ci/ci.sh
Signed-off-by: Kai Fricke <kai@anyscale.com>
Nice! I tried running the docker image on my M1 machine and it works. A few follow up questions about what we call "complete" here.
|
Signed-off-by: Kai Fricke <kai@anyscale.com>
I've also confirmed that the wheels work on graviton instances and can run example scripts. I've now also added the post-wheels tests and debug wheels for ARM64. We can also pick this onto Ray 2.2.0 branch to build wheels for the latest release. |
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
.buildkite/pipeline.arm64.yml
Outdated
commands: | ||
# Build the debug wheels | ||
- RAY_DEBUG_BUILD=debug LINUX_WHEELS=1 ./ci/ci.sh build | ||
# Upload the wheels. |
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.
How are debug wheels distinguished from non-debug ones when uploading?
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.
They have a +dbg
suffix! Example: ray-3.0.0.dev0+dbg-cp38-cp38-linux_aarch64.whl dist/ray_cpp-3.0.0.dev0+dbg-cp38-cp38-linux_aarch64.whl
Signed-off-by: Kai Fricke <kai@anyscale.com>
Very excited to see this, thanks for doing it Kai ❤️ |
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Signed-off-by: Kai Fricke <kai@anyscale.com>
Looks like everything is passing. The debug wheels take ~3 hours and time out sometimes (our limit is 3h at the moment). I've disabled them for now - when we actually need them, we can look into enabling this and speeding it up (e.g. adding a bigger runner, or avoiding some recompilation). I'll merge once this passed |
hmm why is docker build failing |
The docker failures should be unrelated (they use different docker files and we've seen this being flaky before). |
We currently only build linux wheels for x86_64. This means that users e.g. on Mac M1 machines can't run Ray in docker, as this would require linux/aarch64 (arm64) architecture wheels. This PR updates our CI to: - Install bazel for arm64 architecture - Build and upload wheels for arm64 architecture Signed-off-by: Kai Fricke <kai@anyscale.com>
We currently only build linux wheels for x86_64. This means that users e.g. on Mac M1 machines can't run Ray in docker, as this would require linux/aarch64 (arm64) architecture wheels. This PR updates our CI to: - Install bazel for arm64 architecture - Build and upload wheels for arm64 architecture Signed-off-by: Kai Fricke <kai@anyscale.com>
Why are these changes needed?
We currently only build linux wheels for x86_64. This means that users e.g. on Mac M1 machines can't run Ray in docker, as this would require linux/aarch64 (arm64) architecture wheels.
This PR updates our CI to:
Related issue number
Closes #13780
Closes #21786
Closes #28103
Checks
git commit -s
) in this PR.scripts/format.sh
to lint the changes in this PR.