QEC results, with the working shown.
Point Nuclei at the sinter CSVs and Stim circuits you already have. It turns them into statistics you can defend: rates with their units, Λ fits that say what they left out, and decoders compared with their intervals.
Free and open source under MIT. No account, no install for the browser version.
Bring the files you have
No new format and no import script. Nuclei reads sinter's own CSV, groups rows by their metadata, and merges repeated runs of the same point.
shots,errors,discards,seconds,decoder,strong_id,json_metadata
200000,1902,0,2.400,pymatching,3-0.001-…,{"d":3,"r":3,"p":0.001,…}
200000,540,0,2.400,pymatching,5-0.001-…,{"d":5,"r":5,"p":0.001,…}
200000,135,0,2.400,pymatching,7-0.001-…,{"d":7,"r":7,"p":0.001,…}
200000,33,0,2.400,pymatching,9-0.001-…,{"d":9,"r":9,"p":0.001,…}
Read it correctly
Every plot states what its y-axis counts, per shot or per round, and every point carries its interval. Thin statistics look thin.
Fit Λ, and say what was left out
Λ is fitted from per-round rates. Points above threshold, where the logical error rate saturates at one half, are listed as dropped instead of quietly skipped.
| p | 3→5 | 5→7 | 7→9 | Λ |
|---|---|---|---|---|
| 0.1% | 5.9 | 5.6 | 5.3 | 5.6 |
| 0.2% | 2.9 | 2.8 | 2.9 | 2.9 |
| 0.4% | 1.3 | 1.4 | 1.4 | 1.4 |
| 0.6% | dropped: d ≥ 5 saturate at ½, no ratio exists | |||
Compare decoders without fooling yourself
Put two decoders side by side on the same points, each with its interval, before you call one of them better.
| Point | PyMatching | Fusion Blossom | 95% intervals |
|---|---|---|---|
| d=7, p=0.2% | 2,154 | 2,127 | overlap |
| d=9, p=0.1% | 33 | 23 | overlap; too few errors to rank |
Also in the desktop app
- Stim circuits, drawn
- Timeline, code lattice and detector error graph for any .stim file.
- sinter campaigns
- Run, resume and extend a campaign without re-sampling what you have.
- Noise models as files
- SI1000 and friends as YAML in your repo, compared channel by channel.
- Experiments with manifests
- Parameter sweeps as YAML; every run records its seed, backend and environment.
- Resource estimates
- Azure's estimator over Q# or OpenQASM 3, without leaving the project.
- Circuits in four SDKs
- Qiskit, Cirq, CUDA-Q and Q#, on the local simulator or IBM, IonQ, Quantinuum, Braket and Azure hardware.
Get Nuclei
Start in the browser with a CSV. Take the desktop app when you want campaigns, circuits and hardware.
| Browser | CSV analysis · no install | Open |
|---|---|---|
| macOS | Apple Silicon | Download .dmg |
| Windows | x64 | Download .msi |
| Linux | x64 | Download .deb |