From 0c27d84fcad245e259e339706ed35bd65f930846 Mon Sep 17 00:00:00 2001 From: Jammy2211 Date: Wed, 7 Oct 2026 22:20:58 +0100 Subject: [PATCH 1/2] =?UTF-8?q?pulse:=20linear-solver=20=E2=80=94=20phase?= =?UTF-8?q?=203a=20parity=20shipped=20(autolens=5Fprofiling#394);=20task?= =?UTF-8?q?=20active=20pending=20phase=203b?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_013yiZUnJowr5bnXGpSV2YpC --- campaigns.yaml | 19 ++++++++++--------- dashboard.html | 2 +- dashboard.md | 8 ++++---- tasks/mge_nnls_fix_pyautoarray_571_slam_60.md | 7 +++++++ 4 files changed, 22 insertions(+), 14 deletions(-) diff --git a/campaigns.yaml b/campaigns.yaml index 11458a8..5db6972 100644 --- a/campaigns.yaml +++ b/campaigns.yaml @@ -56,12 +56,12 @@ campaigns: evidence: https://github.com/PyAutoLabs/autolens_profiling/blob/719459fefb40c7e5be157f652818dbf923830557/wiki/campaigns/interferometer_likelihood.md - id: linear-solver title: Linear-solver accuracy and cost - status: ready + status: active updated: '2026-10-07' - next: 'Human decision 2026-10-07: the shared RAL mirror /mnt/ral/jnightin/PyAuto is NEVER synced (HPCPullPyAuto) while - euclid_dr1 depends on it. Phase 3 GPU/vmap parity and timing run from a PRIVATE checkout at tag 2026.10.7.1 (contains - PyAutoArray#595) with its own environment; note Nerves at that tag excludes jax 0.10.*, RAL has jax 0.10.2. Queue - was empty at ~18:40Z (one probe); mirror HEAD/tag unverified and no longer needed.' + next: 'Phase 3a SHIPPED 2026-10-07: autolens_profiling#394 merged 21:18Z (a55dcacb), issue #393 closed. A100 job 397475 + from a PRIVATE 2026.10.7.1 checkout (shared mirror untouched, human rule): released pdip_raw CPU vs A100 parity + max |d flux_inactive_rel| 5.4e-14, iterations identical 81/81; still inadmissible under the pre-registered rule on + both devices. Next: phase 3b GPU/vmap timing cell (Mind draft linear_solver_phase3b_gpu_timing_cell.md) via start_dev.' evidence: https://github.com/PyAutoLabs/autolens_profiling/blob/719459fefb40c7e5be157f652818dbf923830557/wiki/campaigns/linear_solver_accuracy.md - id: imaging title: Production imaging and likelihood breakdown @@ -199,13 +199,14 @@ tasks: - id: mge_nnls_fix_pyautoarray_571_slam_60 campaign: linear-solver title: 'Linear-solver programme phase 3: GPU/vmap/A100 timing and parity rows for the solver corpus' - status: ready + status: active priority: medium path: tasks/mge_nnls_fix_pyautoarray_571_slam_60.md updated: '2026-10-07' - next: 'Human decision 2026-10-07: do not HPCPullPyAuto the shared mirror (euclid_dr1 needs it). Next bounded step: - plan the phase-3 A100 cells from a private RAL checkout at tag 2026.10.7.1 with a jax that satisfies Nerves - (jax 0.10.* excluded; RAL has 0.10.2), then request compute authorization for the parity/timing rows.' + issue: https://github.com/PyAutoLabs/autolens_profiling/issues/393 + next: 'Phase 3a (parity) shipped 2026-10-07 in autolens_profiling#394; Mind record complete/2026/10/linear-solver-p3a-a100-parity.md. + Remaining: phase 3b timing cell (single/vmap16/vmap50, jacobi vs raw, compile separate) from the private RAL base + /mnt/ral/jnightin/PyAuto_wt/linear-solver-p3 — Mind draft filed, start_dev when prioritised; A100 rows need compute authorization.' evidence: https://github.com/PyAutoLabs/PyAutoArray/pull/595 - id: autofit_profiling_bootstrap campaign: autofit diff --git a/dashboard.html b/dashboard.html index c2ad5af..e2d59ea 100644 --- a/dashboard.html +++ b/dashboard.html @@ -645,7 +645,7 @@ Work on GitHub: - PyAutoPulse: https://github.com/PyAutoLabs/PyAutoPulse - autolens_profiling: https://github.com/PyAutoLabs/autolens_profiling
Last updated 2026-10-07 21:18:50 UTC
↻ Update

-

Active campaigns

CampaignStatusLinks
Setup baseline collection and scientific acceptance
1 task · next step

Specification merged as draft v1 (autolens_profiling#385, 2026-10-06; issue #384 closed). Six unknowns remain: no frozen revisions/env lock; no collection authorization/window; hardware/affinity identity unselected; each cell needs complete settings, input hashes, witness + tolerances; compile per-cell builder unavailable; proposed fp64/mixed coverage is not evidence of support. Human freezes the manifest before separately authorizing collection.

Reviewed 2026-10-07

Active tasks

Freeze the setup baseline specification, then collect and review evidence↗

needs-decision · high

Specification merged as draft v1 (autolens_profiling#385, 2026-10-06). Human resolves the six recorded unknowns and freezes the specification; collection requires separate compute authorization. The report prepares evidence for human scientific review and never promotes baselines. CPU production arrays use ral only.

needs-decision
Point-source image plane · CPU
1 task · next step

Phases 1–4 shipped; completion evidence merged (autolens_profiling#373, 2026-10-04). Closing the epic is the human's call. Owed leftovers (RAL cleanup, test move, register_model grad-zero prompt, CI smoke cells, constant_folding A/B, nopad deletion, quiet re-runs) are in the Mind draft point_source_cpu_campaign_owed_leftovers.md. RAL leftover folders not re-listed 2026-10-07 (unverified).

Reviewed 2026-10-07

Active tasks

active
Point-source image plane · A100
1 task · next step

Phase 0+1 shipped. Forward-mode gradient NaN (PyAutoLens#767) fixed by PyAutoLens#768 (merged 2026-10-04) and released in 2026.10.7.1 (correctness). Remaining human decision: authorize the autolens_inference image-plane fit measurement. Heart unit-test timing rose on the rewritten #768 test file; not a controlled cost comparison (gradient_cost_probe is the instrument).

Reviewed 2026-10-07

Active tasks

needs-decision
Point-source source plane
2 tasks · next step

Core complete; parked. Nautilus leaf autolens_inference#17 merged 2026-10-02; no gradient-sampler leaf yet, so Blackjax stays parked (admission not met). Warm-up task option (a) merged as autolens_profiling#374 (2026-10-04); imaging cells and a release sweep remain.

Reviewed 2026-10-07

Active tasks

Runtime cells' A100 `single_jit` includes the post-compile warm-up — source-plane 0.642 ms vs a steady 0.267 ms on the same node↗

active · low

Option (a) merged (autolens_profiling#374, 2026-10-04): full_pipeline_single_jit_median_ms (p10/p90) beside unchanged single_jit; GPU headline labelled "first block after compile". Imaging release-sweep cells not wired. No release sweep on main yet (results/ commits since 2026-10-04: #375 streaming rows, a README refactor), so the new field has no sweep rows.

parked
Cluster PointSolver robustness and performance
2 tasks · next step

Unchanged since 2026-09-27; nothing issued or claimed. Wiki still points at the removed Mind draft (now Pulse tasks/). Pick one bounded phase: observable-overflow invalid-result policy + CI witness, or a representative-data baseline cell.

Reviewed 2026-10-04

Active tasks

active
Interferometer likelihood and streaming
4 tasks · next step

Decision matrix complete: last cell merged (autolens_profiling#372, 2026-10-04; 1.59e-3 nat CPU/A100 gap accepted by the human). Streaming scaling phase 1 CPU rows merged (#375); 1e8 CPU and A100 rows need compute authorization. fnnls memo back-off released in 2026.10.7.1 (PyAutoArray#615); the #332 after-measurement is owed. Curvature preload and W~ FFT tasks unstarted.

Reviewed 2026-10-07

Active tasks

active
Linear-solver accuracy and cost
1 task · next step

Human decision 2026-10-07: the shared RAL mirror /mnt/ral/jnightin/PyAuto is NEVER synced (HPCPullPyAuto) while euclid_dr1 depends on it. Phase 3 GPU/vmap parity and timing run from a PRIVATE checkout at tag 2026.10.7.1 (contains PyAutoArray#595) with its own environment; note Nerves at that tag excludes jax 0.10.*, RAL has jax 0.10.2. Queue was empty at ~18:40Z (one probe); mirror HEAD/tag unverified and no longer needed.

Reviewed 2026-10-07

Active tasks

ready
Production imaging and likelihood breakdown
3 tasks · next step

No new results since the pin. Over-sampling phase 1: add --instrument production presets to the JAX Delaunay cells (CPU smoke only); PyAutoArray#606 S/N over-sampling helper (in 2026.10.4.1) is new context. Post-certified Blocked-by is stale (resolved 2026-09-27).

Reviewed 2026-10-04

Active tasks

active
Measurement reliability and profiling tools
9 tasks · next step

Only timing_noise_audit is issued (autolens_profiling#362: open, 0 comments, unassigned, unchanged since 2026-10-02); start its audit phase via start_dev. New related Mind draft draft/bug/autolens_profiling/call_accounting_ci_timing_threshold.md (2026-10-06). Other tasks unchanged and unissued.

Reviewed 2026-10-07

Active tasks

Audit timing tests and profiling gates for measurement noise↗

ready · high

Issued as autolens_profiling#362 (open, 0 comments, unassigned, unchanged since 2026-10-02). Related new Mind draft draft/bug/autolens_profiling/call_accounting_ci_timing_threshold.md (2026-10-06). Start the read-and-classify audit phase via start_dev.

active
PyAutoFit profiling bootstrap
1 task · next step

PyAutoLabs/autofit_profiling created 2026-10-07 (one Initial commit, LICENSE only, no PRs); the repo-creation decision is answered. Porting/bootstrap unstarted; no producer registration until baselines are ported.

Reviewed 2026-10-07

Active tasks

ready
Critical curves and evaluation grids
0 tasks · next step

Phase 3b cap fix shipped: PyAutoGalaxy#646 released in 2026.10.4.1 and autolens_workspace_test#343 merged 2026-10-04. Remaining per the wiki Next line: investigate seed coverage/path completion before cluster engine selection (human picks whether to scope it). Wiki page itself is stale (last edited 2026-10-02, still says #646 open).

Reviewed 2026-10-07

Active tasks

No open tasks.

needs-decision
Certified positive solver
0 tasks · next step

Parked by choice; wiki unchanged since ab1e4fd (2026-09-27). Its three library/workspace Mind drafts remain in Mind. Retain parked; read the project ledger before proposing new work.

Reviewed 2026-10-04

Active tasks

No open tasks.

parked

Open means tracked, not necessarily running. Full ledger ↗

Profiling Results