RISC-V 正式成为 CPython 支持的平台
过去几个月,我一直在改进 CPython 对 RISC-V 架构的支持。现在很高兴地宣布:RISC-V 已正式成为 CPython 支持的第 3 级平台!🎉 🚀
什么是 RISC-V?
RISC-V 是一种开放的指令集架构(ISA)。与 x86、ARM 这类专有指令集不同,RISC-V 以开放标准的形式开发,任何人都可以实现它。
近年来,RISC-V 生态发展迅速,预计到 2032 年将扩大至原来的四倍。随着生态不断壮大,确保 Python 在这些平台上稳定运行也变得越来越重要。
这一路是怎么走来的
这一切离不开社区的贡献。CPython 对 RISC-V 的支持是在长期积累中逐步完善的:有人在真实硬件上进行测试,有人修复架构相关问题、改进构建支持、报告 bug,还有人参与代码审查。正是这些工作,让 RISC-V 达到了可以纳入 PEP 11 的条件。

其中尤为重要的一点,是能够在真实的 RISC-V 硬件上持续进行可靠测试。感谢 RISE Project 提供的支持。RISE 为 CPython 提供了多台 RISC-V 机器,让我们得以使用 buildbot 进行测试,并调试架构相关问题。
我尤其要感谢 RISE Project 的 Ludovic Henry、Furkan Onder 和 Emma Smith,以及其他众多贡献者。此外,我也要特别感谢 Sovereign Tech Agency。正是他们提供的出色 fellowship,让我得以开展这项工作。
接下来是什么?
虽然达到 tier 3 支持是一个重要里程碑,但还有很多工作要做。
目前,我们正研究如何进一步改进测试:在 RISE 的大力支持下,通过其 RISE RISC-V Runners initiative,将 RISC-V 直接接入 CPython 的 CI。这应该能比 buildbots 更快地为贡献者提供反馈——后者通常要等补丁合并之后才会运行——从而帮助我们更早发现 RISC-V 特有的问题。
从长远来看,我也希望推动 RISC-V 获得 tier 2 支持。
除了让 CPython 在 RISC-V 上运行,我们还有机会进一步挖掘 RISC-V 的能力。我希望探索针对该架构的优化,在确实能够提升 CPython 性能的地方,更充分地发挥 RISC-V 的优势。
更重要的是,我们需要大家实际使用它并提供反馈。如果你能使用 RISC-V 硬件,请尝试构建和运行 CPython,运行你的工作负载和测试套件,并告诉我们遇到了哪些问题。在不同的 RISC-V 环境中进行测试,将帮助我们为所有用户提供更完善的支持!
CPython 也只是 Python 生态系统的一部分。要让 RISC-V 成为整个 Python 生态中支持越来越完善的平台,还需要社区持续在各类软件包、编译器、工具和基础设施方面共同努力。
未来还有很多工作要做,我期待继续推进这项工作!