Hacker News

Favorites Setup
Comment by emmatyping | original | RISC-V is now officially supported by CPython
[−]emmatyping · 2026-08-30 Sun 09:07 UTC · link
Speaking unofficially, opinions my own, etc.

We (CPython) currently only have access to RV64GC machines to test on, and so that is the defacto target we can currently support.

Personally, I hope to see RVA23 become the baseline in the future. But that will depend on adoption.

On the packaging side of things, the platform tag is manylinux_X_Y_riscv64. So far that has meant RV64GC. So before we set a baseline of RVA23, we will need to see where the community lands.

[−]IshKebab · 2026-08-30 Sun 09:17 UTC · link
You can just use QEMU. It has RVA23 support and is probably still faster and easier than using actual machines.
[−]emmatyping · 2026-08-30 Sun 09:30 UTC · link
That's plausible. The bigger constraint to defaulting to RVA23 is that users are running on, and building all of their wheels targetting, RV64GC. So unless our users adopt RVA23, it would be unwise to switch.
[−]ccgreg · 2026-08-30 Sun 09:41 UTC · link
How is this different from x86_64 and aarch64? Or even the various Alpha and Mips64 chips.
[−]Marcuss2 · 2026-08-30 Sun 12:07 UTC · link
For example x86_64 has v1, v2, v3 and v4 baselines, this tells you which instructions they support (e.g. v4 has AVX-512, v3 has AVX2, etc.).

RISC-V RVA22 and RVA23 aren't too different in this regard. Each one prescribes which extensions must be supported by the processor. I saw RV64GC mentioned, this is just a shortening of RV64IMAFDC, so I for baseline instructions, M for multiplication and division, A for atomic, F for floating point, D for double precision floating point and C for compressed instructions.

You can have a baseline E profile instead of I (less registers, some other features stripped), but I don't think we will ever see manufactured RV64E core, trough RV32EC cores exist.

[−]cbm-vic-20 · 2026-08-30 Sun 13:31 UTC · link
The E extension will probably only ever appear in softcores (FPGA) to reduce gate count.
[−]Marcuss2 · 2026-08-30 Sun 13:54 UTC · link
CH32V003 has RV32EC core, for RV64, yes, there is no point.