Skip to content

Commit 1b69b5c

Browse files
committed
docs(v0.5.6): rebuild README, PYPI_README, INSTALL, RELEASE_NOTES -- stim_compat parallel-impl note, changelog table, API surface, latency table, verified platforms
1 parent e56b22e commit 1b69b5c

4 files changed

Lines changed: 377 additions & 133 deletions

File tree

INSTALL.md

Lines changed: 96 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,53 @@
1-
# Installation Guide — QECTOR Decoder v0.5.4
1+
# Installation Guide — QECTOR Decoder v3 (v0.5.6)
22

3-
The current repository does **not** include `install.py`. Use the source build path below.
3+
The fastest path is a direct PyPI wheel install. Source builds are only needed
4+
when you want to develop against the Rust core or target a platform without a
5+
published wheel.
46

5-
## Windows PowerShell
7+
---
68

7-
Install Rust first from rustup, then run:
9+
## PyPI wheel install (recommended)
10+
11+
```bash
12+
pip install qector-decoder-v3
13+
python -c "from qector_decoder_v3 import UnionFindDecoder, BlossomDecoder; print('QECTOR OK')"
14+
```
15+
16+
Optional extras:
17+
18+
```bash
19+
pip install "qector-decoder-v3[stim]"
20+
pip install "qector-decoder-v3[bench]"
21+
pip install "qector-decoder-v3[all]"
22+
```
23+
24+
---
25+
26+
## Windows note
27+
28+
Use the `pip` bound to your active standard CPython environment. Do not force
29+
`py -m pip` unless you have verified which interpreter the Windows launcher selected.
30+
On some systems `py` selects the free-threaded interpreter (`python3.13t.exe`).
31+
QECTOR v0.5.x publishes standard CPython wheels only — not `cp313t`.
32+
33+
Check launcher targets:
34+
35+
```powershell
36+
py -0p
37+
```
38+
39+
Working PowerShell install:
40+
41+
```powershell
42+
pip install qector-decoder-v3
43+
python -c "from qector_decoder_v3 import UnionFindDecoder, BlossomDecoder; print('QECTOR OK')"
44+
```
45+
46+
---
47+
48+
## Source build (Windows PowerShell)
49+
50+
Install Rust from https://rustup.rs first, then:
851

952
```powershell
1053
git clone https://github.com/GuillaumeLessard/qector-decoder.git
@@ -19,18 +62,20 @@ $env:PYO3_PYTHON = (Resolve-Path .\.venv\Scripts\python.exe).Path
1962
.\.venv\Scripts\python.exe -c "from qector_decoder_v3 import UnionFindDecoder; print('QECTOR OK')"
2063
```
2164

22-
### Verified Windows result
65+
Expected output ending:
2366

24-
This command has been verified from a fresh clone on a second Windows PC with Python 3.11. The expected successful ending is:
25-
26-
```text
27-
Installed qector-decoder-v3-0.5.4
67+
```
68+
Installed qector-decoder-v3-0.5.6
2869
QECTOR OK
2970
```
3071

31-
During the base install, pip may print ignored optional-extra messages for packages such as pytest, stim, pymatching, sinter, and ldpc. That is normal because the public command installs the minimal CPU-safe runtime build. Install optional test and benchmark dependencies only when needed.
72+
pip may print ignored optional-extra messages for pytest, stim, pymatching, sinter,
73+
and ldpc during install. That is expected — the base command installs the minimal
74+
CPU-safe runtime only.
3275

33-
## Git Bash on Windows
76+
---
77+
78+
## Source build (Git Bash on Windows)
3479

3580
```bash
3681
git clone https://github.com/GuillaumeLessard/qector-decoder.git
@@ -46,40 +91,59 @@ python -m maturin develop --release --no-default-features
4691
python -c "from qector_decoder_v3 import UnionFindDecoder; print('QECTOR OK')"
4792
```
4893

49-
## Optional test dependencies
94+
---
5095

51-
```powershell
52-
.\.venv\Scripts\python.exe -m pip install "pytest>=7" "hypothesis>=6" "fastapi>=0.110" "uvicorn>=0.29" "httpx>=0.27" stim pymatching sinter ldpc beliefmatching psutil matplotlib tabulate scipy
53-
.\.venv\Scripts\python.exe -m pytest python/tests -q --tb=short
96+
## Source build (Linux / macOS)
97+
98+
```bash
99+
git clone https://github.com/GuillaumeLessard/qector-decoder.git
100+
cd qector-decoder
101+
102+
python3 -m venv .venv
103+
source .venv/bin/activate
104+
pip install --upgrade pip maturin
105+
106+
maturin develop --release --no-default-features
107+
108+
python -c "from qector_decoder_v3 import UnionFindDecoder; print('QECTOR OK')"
54109
```
55110

56-
## Optional feature builds
111+
---
57112

58-
The first install uses `--no-default-features` because it is the safest public CPU path.
113+
## Optional test dependencies
59114

60115
```powershell
61-
# CUDA only
62-
.\.venv\Scripts\python.exe -m maturin develop --release --no-default-features --features cuda
63-
64-
# OpenCL only
65-
.\.venv\Scripts\python.exe -m maturin develop --release --no-default-features --features opencl
116+
.\.venv\Scripts\python.exe -m pip install `
117+
"pytest>=7" "hypothesis>=6" "fastapi>=0.110" "uvicorn>=0.29" "httpx>=0.27" `
118+
stim pymatching sinter ldpc beliefmatching psutil matplotlib tabulate scipy
66119
67-
# Full infrastructure build
68-
.\.venv\Scripts\python.exe -m maturin develop --release --features full
120+
.\.venv\Scripts\python.exe -m pytest python/tests -q --tb=short
69121
```
70122

71-
## Common fixes
123+
---
124+
125+
## Optional feature builds
72126

73-
If `maturin` is missing, install it with the venv Python:
127+
The default install uses `--no-default-features` for the safest public CPU path.
128+
129+
To build with CUDA and OpenCL support:
74130

75131
```powershell
76-
.\.venv\Scripts\python.exe -m pip install --upgrade pip maturin
132+
.\.venv\Scripts\python.exe -m maturin develop --release
77133
```
78134

79-
If Rust is missing, install Rust and restart the shell.
135+
CUDA requires the NVCC toolchain and CUDA driver >= 7.5.
136+
OpenCL requires a valid ICD loader and GPU driver. See `docs/PLATFORM_ARTIFACT_ROADMAP.md`
137+
for the known AMD OCL SDK Light false-negative on `is_available()`.
80138

81-
If GPU feature builds fail, build the CPU-safe path first:
139+
---
82140

83-
```powershell
84-
.\.venv\Scripts\python.exe -m maturin develop --release --no-default-features
85-
```
141+
## Verified platforms
142+
143+
| Platform | Python | Wheel | Notes |
144+
|---|---|---|---|
145+
| Windows 10 x64 | 3.11, 3.13 | Published | GTX 1660 Ti CUDA 7.5 validated |
146+
| Linux x86\_64 | 3.9 – 3.13 | Published | CI-built, not locally validated |
147+
| macOS arm64 | 3.9 – 3.13 | Published | CI-built |
148+
| macOS x86\_64 | 3.9 – 3.13 | Not published | Source build required |
149+
| cp313t (free-threaded) || Not published | Standard CPython only in v0.5.x |

0 commit comments

Comments
 (0)