-
Notifications
You must be signed in to change notification settings - Fork 21
workflow/build: Setup QEMU, add builds aarch64 on Linux, arm64 on MacOS #37
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
Conversation
Could someone please approve the workflow? |
Working on this in uSpike#1 - don't need workflow approval |
5e4b6b3
to
5e0c9f0
Compare
7ead7cb
to
8970572
Compare
I've modified this to be explicit about the |
@hauntsaninja would super appreciate a workflow approval if you could! |
Thanks for attempting this! Unfortunately, I think emulation is just too slow. The linux builds are timing out after six hours and it barely even made it to the musllinux stuff. I don’t think we’d want builds to take much longer than they already do — it makes releasing mypy a huge pain if you have to wait a substantial fraction of a day to get a candidate build. (As it is, I suspect the musllinux stuff might need to be splintered into their own jobs or removed or something too) This good news is this isn’t critical for users, since mypy ships pure Python wheels. I’ll also note that we currently cross compile and ship arm64 wheels for macOS (e.g. so the macOS changes in this PR aren’t necessary). |
@hauntsaninja @uSpike I have tested the manylinux-aarch64 build on an Applie Silicon (M1 Max) with Orbstack-based Ubuntu 22.04 VM (RAM 16GB allocated). It runs well, and the build takes about two hours, similarly to the x86 builds in this repository's action logs. The performance improvement is almost 3x (32s → 10s) using these wheels on my prepo (https://github.com/lablup/backend.ai) where more than 600 files need to be checked. I think it would be really nice to have an official linux-aarch64 wheel builds. Maybe could we workaround the performance issue by using macOS arm64 runners with a linux-aarch64 VM? |
maybe relevant: pypa/cibuildwheel#598 |
@hauntsaninja sorry to bump this, but I figured it's more polite than opening a new [duplicate] issue: would you be open to having aarch64 added with fewer tests run (similar to maco-arm64)? I've got it working and I'm happy to open a PR too if that's easier. |
Feel free to open a PR, but no promises that I'll merge, in particular I probably won't if the build takes much longer than an hour. |
Work-in-progress
Closes: #12