docs(benchmarks): headline figure mislabels its steps, model and Majorana axis
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 82/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- markdown, python
- Domain
- data-visualization, documentation
Research direction
Start with packages/bench-third-party/plot_headline.py, then check the benchmark settings and model descriptions cited in the issue to confirm the plotted step counts and runtime meanings. Update the plot and docs/content/docs/benchmarks.mdx to correct the Pauli point alignment, labels, model wording, and Majorana time axis; check the related plot scripts for the same issues. Done when the figure and caption match the data and the docs describe the model accurately, without rerunning the benchmark.
Written by the indexing model from the issue text.
Description
🤖 AI text below 🤖
The headline figure in docs/content/docs/benchmarks.mdx (/benchmarks/headline_runtime.png, drawn by packages/bench-third-party/plot_headline.py) has four labelling problems. The data are fine. Only the axes, the point placement and the titles are wrong, so the fix is in the plot script and the docs text, with no rerun.
1. Pauli points are drawn one label early
pauli_prop/run_model.py drops step 0's runtime (warm-up), so runtime has 27 entries against 28 in step_range (results.json: len(step_range) == 28, every runtime series has 27). plot_headline.py pairs them from the start:
points = [(s, v) for s, v in zip(steps, runtime) if s >= PAULI_MIN_STEP]
So the runtime of the k-th propagation call lands on the label of call k−1. It should be zip(steps[1:], runtime).
2. The x labels count by 2, but each point is one Trotter step
step_range is range(0, 55, 2) (settings.json: step_size: 2). But every iteration of _run_steps (backends.py) and of run_model.jl applies step_circuit once, and that is one Trotter step (model.py: "One Trotter step as a Qiskit circuit"). The point labelled "Trotter step 54" is therefore after 28 Trotter steps (t = 1.4 at dt = 0.05, not 2.7). The docs text already says "28 Trotter points". The fix is either to label the x axis with the step count (1…28), or to make step_size mean what it says. The second changes the benchmark, so it would need a rerun.
3. The Pauli model is tilted-field, not transverse-field
With hz = 1.0 (settings.json), the model has a longitudinal field and is a tilted-field Ising model, as model.py's docstring says ("a Trotterized 2D tilted-field Ising model"). The panel title in plot_headline.py ("Pauli: 144-qubit 2D transverse-field Ising") and the text in benchmarks.mdx ("2D transverse-field Ising model") say transverse-field.
4. The Majorana panel plots cumulative time on a "time per step" axis
majorana_prop/monoprop_hubbard1d_benchmark.py stores runtime_seconds as cumulative seconds (cumulative_runtimes[step + 1] = cumulative_runtimes[step] + step_runtime). plot_headline.py plots those values directly under the y label "time per step [s]". The fix is to plot np.diff(runtime_seconds) (per layer), or to relabel the axis as cumulative time. The caption's "complete Majorana evolution" ratio uses the total, so it is unaffected.
Scope
packages/bench-third-party/plot_headline.py: items 1–4.docs/content/docs/benchmarks.mdx: item 3's wording, and the figure caption if the axes change.- Worth checking whether
pauli_prop/plot_results.pyandmajorana_prop/plot_results.pyshare items 1, 2 and 4.
- Dominant language
- C++
- Stars
- 52
- Forks
- 2
- Avg merge
- 18h 4m
- Merged PRs (30d)
- 28
Getting set up
Starts the project's dev container in your browser, under your own GitHub account.
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Algorithmiq/monoprop
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Algorithmiq/monoprop#193 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Algorithmiq/monoprop#192 ·
Maintainers usually reply within 1 day
-
bug performance
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Algorithmiq/monoprop#191 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Algorithmiq/monoprop#189 ·
Maintainers usually reply within 1 day
-
Remove pytest-mpi which is no longer actively maintainedPossibly taken @robertodr claimed this 3 days ago. Open
Algorithmiq/monoprop#414 · 1 reaction · 2 assignees ·
Maintainers usually reply within 1 day
All issues in Algorithmiq/monoprop
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
telegramdesktop/tdesktop#31505 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
ll-builder shell completions omit existing lockfile commands and --lockedPossibly taken @project-nju-learner claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
OpenAtom-Linyaps/linyaps#2291 ·
Maintainers usually reply within 1 day
-
area: ui bug P3: low value: low
Difficulty 1/5 1-3 hours Newbie friendliness 85/100
patrick-hudson/put.gd-desktop#494 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
prestonbrown/helixscreen#1867 ·
Maintainers usually reply within 2 days