Cnuas Product Roadmap & Project Plan¶
Scope: Cnuas Virtual AI HPC Infrastructure and all components · Version: `fb4638b-dirty` · Updated: 2026-07-05
This page is the single source of truth for what is available today versus what is planned. It is organised as Epics (major workstreams) broken into Tasks, mirroring the GitHub Projects board used for day-to-day tracking.
Status legend¶
| Symbol | Meaning |
|---|---|
| ✅ Available | Implemented, tested, and shipped in the current tree |
| 🚧 In Progress | Actively being worked on |
| 📋 Planned | Scheduled; not yet started |
| ⛔ Blocked | Waiting on a dependency |
Roadmap at a glance¶
Epics and tasks¶
Epic 1, HiNIC: RDMA NIC (RoCEv2 + native InfiniBand)¶
Repo: PacketFive/HiNIC (v0.1.0-23-gd97b1c9)
| Status | Task | Milestone |
|---|---|---|
| ✅ Available | RoCEv2 TX path | H1 |
| ✅ Available | RoCEv2 RX path | H2 |
| ✅ Available | RC reliability + RDMA READ | , |
| ✅ Available | RC atomics (CMP_SWP, FETCH_ADD) | , |
| ✅ Available | Multi-packet WRITE/READ honouring path MTU | , |
| ✅ Available | Real ICRC compute + validate on RX | , |
| ✅ Available | Shared Receive Queue (SRQ) | , |
| ✅ Available | UD QPs + IB multicast (attach_mcast) | , |
| ✅ Available | Per-port IB link layer + dual port_immutable | I1 |
| ✅ Available | LRH + IB opcodes; parallel IB skb builder | I2, I3 |
| ✅ Available | Wire IB skb through QEMU vNIC + switch pipeline | I4 |
| ✅ Available | QP0 MAD plumbing; SMA GET/SET; directed-route SMPs | I5a, I5c |
| ✅ Available | SM wire-format + kernel SMI groundwork | I5f |
| ✅ Available | LRH-aware RX dispatcher | I6 |
| ✅ Available | End-to-end test gate (pingpong + perftest + ibstat) | I7 |
| ✅ Available | NCCL / UCX build+link gates | , |
| 📋 Planned | SA path-record responder on QP1 | I5f-SA |
| 📋 Planned | PMA + perfquery support | I5g |
| 📋 Planned | opensm-in-VM compatibility lab | I5h |
| 📋 Planned | RoCE/IB HowTo rewrite (RoCEv2 + Native IB) | I8 |
| 📋 Planned | Debug ib_umad /dev/infiniband/umadN creation |
, |
| ⛔ Blocked | UCCL-P2P RDMA transfer engine smoke | , |
| ⛔ Blocked | UCCL collective (AllReduce) host-mem smoke | , |
Epic 2, HiGPU: Virtual GPU + Runtime¶
Repo: PacketFive/HiGPU (v0.2.0-3-g4104982)
| Status | Task | Milestone |
|---|---|---|
| ✅ Available | GPU driver scaffold + /dev/higpuN char device |
Phase 2 |
| ✅ Available | ioctl set (INFO/ALLOC/FREE/MEMCPY/LINK_*) | , |
| ✅ Available | libhi low-level driver shim |
, |
| ✅ Available | libhicart CUDA-style runtime |
, |
| ✅ Available | Vector add compute primitive | 5b |
| ✅ Available | Tile-based SGEMM (AVX2/FMA) | , |
| ✅ Available | AVX-512 SGEMM | 6.3 |
| ✅ Available | Multi-GPU verification | , |
| ✅ Available | hicasmi / hi-smi CLI |
, |
| 🚧 In Progress | Compute-backend refactor (Stage B + C) | 6.1 |
| 📋 Planned | Split backends into .so + dlopen loader |
6.1c |
| 📋 Planned | Device-backend refactor | 6.2 |
| 📋 Planned | HiIR interpreter | 6.4 |
| 📋 Planned | FPGA Verilog + Libero skeleton (PolarFire SoC) | 6.5 |
| 📋 Planned | Documentation pass | 6.6 |
Epic 3, HiSwitch: Virtual TOR Switch¶
Repo: PacketFive/HiSwitch (v0.1.0-4-g1700b86)
| Status | Task | Milestone |
|---|---|---|
| ✅ Available | 10-port switch daemon (hicain-vswitchd) |
, |
| ✅ Available | RoCEv2 + native IB forwarding | , |
| ✅ Available | DCB: PFC / ETS / ECN | , |
| ✅ Available | Ethernet FDB + IB LFT | , |
| ✅ Available | Switch-side SMA | I5d |
| ✅ Available | In-switch Subnet Manager | I5e |
| ✅ Available | SM SMP wire-format fix for kernel CA acceptance | I5f |
| ✅ Available | OpenTelemetry telemetry export | , |
| ✅ Available | JSON management API (18+ commands) | , |
| 📋 Planned | Switch-side SA/PMA alignment | I5g |
Epic 4, HiLink: GPU Fabric Interconnect¶
Repo: PacketFive/HiLink (v0.1.0)
| Status | Task | Milestone |
|---|---|---|
| ✅ Available | GPU fabric switch daemon (higpu-link-switchd) |
P1 |
| ✅ Available | 8-port frame-based protocol | , |
| ✅ Available | FDB learning + discovery + keepalive | , |
| ✅ Available | HiGPU ↔ switch wiring | P2 |
| ✅ Available | Link state in sysfs + hicasmi |
P2.1 |
| ✅ Available | hilink-cli management CLI |
P4 |
| 📋 Planned | Collective offload (AllReduce / AllGather) end-to-end | , |
| 📋 Planned | Bandwidth / latency modelling | , |
Epic 5, Platform, Tooling & VM Lifecycle¶
Superproject: PacketFive/vdc (fb4638b-dirty)
| Status | Task | Milestone |
|---|---|---|
| ✅ Available | VM lifecycle CLI (vm up/down/ssh/console/lab) |
6.2e |
| ✅ Available | Package + image build subcommands | 6.2c, 6.2d |
| ✅ Available | Kernel port to v6.19 + binary .ko/.deb packaging |
6.2f |
| ✅ Available | Deployment tooling | , |
| ✅ Available | Repo split into per-component submodules | , |
| ✅ Available | QEMU fork tagged for consumers | , |
| ✅ Available | CI strategy (Azure DevOps) | 6.0e |
| ✅ Available | Build system (Bazel + Make) | , |
Epic 6, Documentation¶
| Status | Task | Milestone |
|---|---|---|
| ✅ Available | Design docs (topology, switch, HiLink, HiGPU, driver, control plane) | 6.0 |
| ✅ Available | Component + platform datasheets | , |
| ✅ Available | Live version wiring from git tags | , |
| ✅ Available | Version pinning reference | , |
| ✅ Available | Convert ASCII diagrams to mermaid across docs | , |
| 🚧 In Progress | This roadmap | , |
| 📋 Planned | RoCE/IB HowTo rewrite | I8 |
Project management¶
Day-to-day tracking lives in GitHub Projects (Projects v2), because the
component repos already live under the PacketFive GitHub organisation, so Epics
and Tasks link directly to issues, pull requests, and commits.
- Epics map to the six workstreams above (label
epic). - Tasks map to individual table rows (label
task), linked to their Epic and to the owning component repo. - Status field mirrors the legend (Available / In Progress / Planned / Blocked).
The board is seeded and kept in sync from a machine-readable source of truth:
scripts/roadmap/roadmap.csv, every Epic and Task with status, milestone, and repo.scripts/roadmap/seed_github_project.sh, creates the Project, labels, and issues via theghCLI.
Seeding the board¶
# One-time auth with project scope
gh auth login
gh auth refresh -s project,read:project
# Preview what would be created
scripts/roadmap/seed_github_project.sh --owner PacketFive --dry-run
# Create the board + issues
scripts/roadmap/seed_github_project.sh --owner PacketFive --title "HiCAIN Roadmap"
Keeping this roadmap current¶
- Update
scripts/roadmap/roadmap.csvwhen a task changes status. - Re-run
scripts/roadmap/seed_github_project.sh --syncto reflect changes on the board. - Component versions on this page and in the datasheets update automatically from git tags at documentation build time (no manual edit needed).