mirror of
https://github.com/astral-sh/uv.git
synced 2025-10-27 02:17:08 +00:00
## Summary We (and I'm sure many others) are currently doing a lot of RISC-V work in QEMU. It is possible to significantly improve the speed of Python-related builds by taking care of the environment setup using an AMD64 `uv` binary (bypassing binfmt/qemu-system emulation). Some approx numbers from local testing in riscv64 Ubuntu in QEMU: | Resolver arch | Command | Time | | --- | --- | --- | | riscv64 | `pip install --upgrade --break-system-packages --index-url=https://gitlab.com/api/v4/projects/riseproject%2Fpython%2Fwheel_builder/packages/pypi/simple openai-harmony` | 15s | | riscv64 | `uv pip install --upgrade --system --break-system-packages --index-url=https://gitlab.com/api/v4/projects/riseproject%2Fpython%2Fwheel_builder/packages/pypi/simple openai-harmony` | 5s | | amd64 | `uv pip install --python-platform=riscv64-unknown-linux --upgrade --system --break-system-packages --index-url=https://gitlab.com/api/v4/projects/riseproject%2Fpython%2Fwheel_builder/packages/pypi/simple openai-harmony` | 4s | The numbers from some larger internal packages with deeper dependency trees are much more pronounced - 3m6 vs 43s vs 8s, in one example. Manylinux 2.39 is specified, as it's the first (only?) RISC-V manylinux ## Test Plan Locally, in QEMU. `$ docker run --platform linux/riscv64 -it ubuntu:latest`, get amd64 libc into LD_LIBRARY_PATH, tests as above |
||
|---|---|---|
| .. | ||
| src | ||
| Cargo.toml | ||