QECTOR Decoder v3
Rust-core Python library implementing 15+ decoder configurations from exact MWPM to GPU batch. v1.0.0 is the first stable release: API stability tiers, Relay-BP and CS-OSD in BP-OSD, Sinter/qiskit entry points, and the qector CLI. A reproducible benchmark harness (qector bench) ships in the package so you can measure on your own hardware. Stim-native, PyPI binary wheels, artifacts published on GitHub.
Production decoders (Stable)
- UnionFindDecoder / FastUnionFindDecoder: near-linear time approximate decoding for graph-like codes.
- BlossomDecoder: exact minimum-weight perfect matching reference decoder for surface codes.
- BatchDecoder / CPUBatchDecoder / CUDABatchDecoder / OpenCLBatchDecoder: native parallel CPU and CUDA/OpenCL batch pipelines; CUDA accepts edge_weights and precision="f64" in v1.0.0.
Experimental & research decoders
- BpOsdDecoder / BPOSDDecoder: belief propagation + ordered statistics decoding for qLDPC codes; v1.0.0 adds Relay-BP, CS-OSD(lambda, w) and LLR damping.
- BeliefMatching: BP preprocessing + reweighted exact MWPM for correlated noise (research path).
- SparseBlossomDecoder: region-growing near-optimal matching; zero-allocation hot path in v1.0.0 (experimental).
- AutoDecoder / HybridDecoder: adaptive fallback and routing between Union-Find and Blossom.
- ColourCodeDecoder / TwoStageDecoder / AmbiguityClusterDecoder / PredecodedDecoder: specialized research workflows, new families in v1.0.0.
Technical specifications
| Key | Value |
|---|---|
| Languages | Rust core (PyO3) / Python 3.9–3.13 API |
| Platforms | Linux x86_64, macOS ARM64, Windows x64 (15 binary wheels) |
| GPU | CUDA ships in the wheel; OpenCL via source build |
| QEC library | Stim / Sinter / PyMatching / qiskit-qec compatible |
| Packaging | PyPI binary wheels (cp39–cp313, 3 platforms), Trusted Publishing + Sigstore |
| License | PolyForm Noncommercial 1.0.0 (community) / Commercial |
pip install qector-decoder-v3==1.0.0