RISC-V Open-Source Maintainer Stance & Receptivity Analysis
Date: August 2026
Scope: Evaluation of maintainer support, PR receptivity, and ecosystem friction across 147 open-source projects (reports directory).
Executive Summary
Across the 147 open-source projects tracked in this repository, maintainer attitudes toward RISC-V (riscv64) fall into three distinct categories:
- Champions (Gold Standard): Projects where upstream maintainers actively embrace RISC-V, maintain dedicated machine maintainers, gate PRs with native/official CI, and publish binary releases.
- Progressing (Traction with Operational Friction): Projects with merged RISC-V code and active community momentum, but where maintainers leave testing to community runners or lag in publishing prebuilt PyPI wheels.
- Resistant / Hostile / Neglected: Projects where maintainers have closed or ignored RISC-V PRs, explicitly reverted prebuilt binary wheels, placed issues in “Cold Storage”, or refused to assign maintainer review capacity.
1. Champion Projects (Working the Best with RISC-V)
These projects feature Tier-1/2 upstream maintainer backing, dedicated machine maintainers, active native or QEMU CI gating, prompt PR reviews, and zero maintainer friction:
- Linux Kernel & GNU Toolchain (glibc, GCC, GDB, linux-perf, eBPF):
glibchas three active named machine maintainers (Palmer Dabbelt / Rivos, Andrew Waterman / SiFive, Peter Bergner / IBM). Full mainline feature parity.
- LLVM Compiler Infrastructure & Clang (LLDB):
riscv64is a first-class compilation target with complete RVV 1.0 vector intrinsic and auto-vectorization support.
- Go / Golang (go):
- Official secondary port with active community builders, clean toolchain support (
GOARCH=riscv64), and 1:1 runtime parity for web/cloud microservices.
- Official secondary port with active community builders, clean toolchain support (
- OpenJDK / Java (openjdk):
- JEP 422 (“Linux/RISC-V Port”) delivered mainline into OpenJDK 19+. HotSpot JIT compiler is fully supported and maintained.
- llama.cpp (llama-cpp):
- Community-driven C++ LLM inference engine. Rapidly merged RVV 1.0 matrix multiplication and dequantization kernels (VLEN=128/256) with zero maintainer friction.
- OpenSSL (openssl):
- Full upstream integration including RVV-accelerated cryptographic primitives (
Zkn/Zks).
- Full upstream integration including RVV-accelerated cryptographic primitives (
- Container Infrastructure (containerd, runc, Docker, Kubernetes):
- High maintainer receptivity with full multi-arch container image support (
linux/riscv64).
- High maintainer receptivity with full multi-arch container image support (
- FFmpeg (ffmpeg) & dav1d (dav1d):
- Active RVV assembly vectorization PRs merged regularly by core video codec maintainers.
2. Progressing Projects (Traction with Operational Friction)
These projects have working code and merged upstream PRs, but suffer from operational friction such as missing PyPI binary wheels, opt-in/cross-compiled CI, or unmerged vectorization routines:
- vLLM (vllm):
- In-tree CPU backend merged with RVV attention kernels (VLEN=128 and VLEN=256), reviewed/approved by Intel maintainer
bigPYJ1151. However, it lacks automated upstream CI and prebuilt PyPI wheels.
- In-tree CPU backend merged with RVV attention kernels (VLEN=128 and VLEN=256), reviewed/approved by Intel maintainer
- NumPy (numpy):
- Merged native RISC-V CI (PR #31488, May 2026); an official
riscv64PyPI wheel is targeted for release 2.6.0 (Q3 2026).
- Merged native RISC-V CI (PR #31488, May 2026); an official
- LangChain (langchain):
- Pure-Python core (
py3-none-anywheel) installs cleanly, but is blocked by missing binary wheels in downstream C++/Rust dependencies.
- Pure-Python core (
- Chromium / V8 & Firefox / SpiderMonkey:
- Functional RVV JIT backends and desktop browser rendering, but upstream Google and Mozilla teams treat RISC-V as community-maintained without mandatory CI gating.
- oneDNN (onednn) & OpenBLAS (openblas):
oneDNNv3.10+ merged RISC-V CPU backend support (~8.85x speedup for elementwise ops).OpenBLAShas active RVV kernel work, but suffers from compiler edge bugs and unmerged LAPACK routines.
- SQLAlchemy & tokenizers:
- SQLAlchemy merged QEMU CI;
tokenizerspublishesmanylinux_2_31_riscv64wheels (though excludingmimalloc).
- SQLAlchemy merged QEMU CI;
3. Hostile, Resistant, or Neglected Projects
These projects exhibit active maintainer resistance, abandoned PRs, closed issues without merge, reverted binary wheels, or structural neglect:
- PyTorch (
pytorch/pytorch) (pytorch):- Maintainer Stance: Meta maintainers (primarily
malfet) treat RISC-V as an opt-in, non-blocking community effort. - Friction:
- Placed the primary RISC-V CI request in “Cold Storage” (Issue #141550).
- Force-merges RISC-V PRs without maintainer review (“lint is green, rest is not compiled”).
- Refuses to assign a CODEOWNERS entry for RISC-V.
- Leaves the core ATen RVV vectorization (PR #175746) stalled for months over scalable-vector copy debates (
Vectorized::size()). - Zero
riscv64PyPI wheels.
- Maintainer Stance: Meta maintainers (primarily
- google/sentencepiece (vllm report):
- openai/tiktoken (vllm report):
- Maintainer Stance: OpenAI maintainers have ignored and stalled the
riscv64CI PR (#506) since March 2026 with no response, blocking GPT-2/GPT-4 tokenization wheels.
- Maintainer Stance: OpenAI maintainers have ignored and stalled the
- numba / llvmlite (numba):
- Maintainer Stance: Maintainers have ignored and closed
riscv64support requests (llvmlite #923). JIT Python numeric acceleration remains completely unsupported on RISC-V.
- Maintainer Stance: Maintainers have ignored and closed
- pydantic / pydantic-core (langchain report):
- Maintainer Stance: Closed the
riscv64CI PR (#1901) without merging.
- Maintainer Stance: Closed the
- protocolbuffers / protobuf (pytorch report):
- XNNPACK (
google/XNNPACK) (xnnpack):- Maintainer Stance: Unconditionally enabled the
Zvfh(FP16) compiler flag (PR #9516) without runtime hardware detection viacpuinfo, causing 100+ FP16 test failures (Issue #9886). Excludedriscv64from default CMake dependencies without explicit user flags.
- Maintainer Stance: Unconditionally enabled the
- FBGEMM / NNPACK / psimd:
- Maintainer Stance: Meta/upstream maintainers explicitly restrict FBGEMM to x86/AArch64, while NNPACK and psimd are archived or unmaintained.
Maintainer Stance Summary Matrix
| Project | Maintainer Stance | Upstream Status | Key Friction Point / Hostility Signal |
|---|---|---|---|
| Linux / glibc / GCC | 🟢 Champions | Tier 1 / Mainline | Full maintainer bench; zero friction. |
| Go / Rust / OpenJDK | 🟢 Champions | Tier 1/2 Mainline | Active builders; JEP 422 delivered. |
| llama.cpp | 🟢 Champions | Mainline Merged | Fast reviews; RVV 1.0 kernels merged cleanly. |
| NumPy | 🟡 Traction | Native CI Merged | Wheel targeted Q3 2026 (release 2.6.0). |
| vLLM | 🟡 Traction | In-Tree CPU Backend | Merged RVV attention; lacks automated CI & wheels. |
| PyTorch | 🔴 Hostile / Resistant | Tier 3 (Opt-in) | Issues placed in “Cold Storage”; force-merged PRs; unmerged ATen RVV. |
| sentencepiece | 🔴 Hostile / Resistant | Wheel Reverted | Explicitly reverted riscv64 PyPI wheel PR #1226. |
| tiktoken | 🔴 Hostile / Neglected | Stalled PR | OpenAI ignored CI PR #506 since March 2026. |
| numba / llvmlite | 🔴 Hostile / Neglected | Issues Closed | Closed riscv64 support request #923 without action. |
| protobuf | 🔴 Hostile / Neglected | Abandoned | Abandoned prebuilt protoc binary PR #23206. |