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

Support for Raspberry Pi (and other linux_arm64) #187

Closed
6 of 9 tasks
almarklein opened this issue Oct 5, 2021 · 9 comments · Fixed by #445
Closed
6 of 9 tasks

Support for Raspberry Pi (and other linux_arm64) #187

almarklein opened this issue Oct 5, 2021 · 9 comments · Fixed by #445
Labels
help wanted Extra attention is needed

Comments

@almarklein
Copy link
Collaborator

almarklein commented Oct 5, 2021

  • User's system:
    • Don't forget to run sudo apt install vulkan-tools mesa-vulkan-drivers.
  • Here wgpu-py
    • cffi must provide binary wheels for linux_arm64.
    • Detect raspberry pi so that the download script can download the correct libs.
    • Make our get_surface_id_from_canvas works (with a bit of luck it does).
    • Build the appropriate wheels on CI.
  • wgpu-native
    • Build the binary on CI: issue 142 -> pr 148. Remaining issue is that the glibc version does not match.
  • wgpu-core
@almarklein almarklein added the help wanted Extra attention is needed label Oct 5, 2021
@Korijn
Copy link
Collaborator

Korijn commented Oct 8, 2021

I guess these would correspond to the python wheel aarch64 platform tag? Cibuildwheel supports building them so it seems trivial indeed. I have a pi now so I can test.

@almarklein
Copy link
Collaborator Author

While we're doing this, maybe we can generalize this to the full matrix that cibuildwheel supports. Probably not much extra work at each step. We can't test all platforms, but having them available makes it easier for others to test it.

@Korijn
Copy link
Collaborator

Korijn commented Oct 8, 2021

While we're doing this, maybe we can generalize this to the full matrix that cibuildwheel supports. Probably not much extra work at each step. We can't test all platforms, but having them available makes it easier for others to test it.

Well, sure! I can't really assess how hard it would be to accomplish that at over wgpu-native :)

Here's what we are missing:

Linux: aarch64 ppc64le s390x
macOS: universal2

@Korijn
Copy link
Collaborator

Korijn commented Oct 10, 2021

Also... cffi needs to support these platforms as well.

Edit: which, they do, except for macos universal2.

@ivoflipse ivoflipse added this to Backlog generic in Progress 2022 Dec 23, 2021
@Korijn
Copy link
Collaborator

Korijn commented Feb 14, 2022

Looking at wgpu-native and manylinux, maybe it's not so hard to create arm builds? There are docker images for:

  • manylinux2014_aarch64
  • manylinux2014_armv7l

@almarklein
Copy link
Collaborator Author

What's currently holding this back is that in gfx-rs/wgpu-native#148 the glibc version is too new for the pi.

@Korijn
Copy link
Collaborator

Korijn commented Oct 27, 2023

Current status: still held back by wgpu-native build issues (linked above). Might be fixed by targeting the newer pi.

@almarklein
Copy link
Collaborator Author

gfx-rs/wgpu-native#326

@almarklein
Copy link
Collaborator Author

Only to build the right wheels in CD!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
No open projects
Progress 2022
Backlog generic
Development

Successfully merging a pull request may close this issue.

2 participants