diff --git a/campaigns.yaml b/campaigns.yaml index d4467c9..6d7deab 100644 --- a/campaigns.yaml +++ b/campaigns.yaml @@ -58,18 +58,13 @@ campaigns: title: Linear-solver accuracy and cost status: active updated: '2026-10-08' - next: 'Phase 4a MERGED 2026-10-08 (autolens_profiling#398, fe9ca472; issue #397 closed; A100 job 399050): the A100-only - jacobi batched/unbatched difference is deterministic batch-shape-dependent Cholesky rounding (cho_factor/cho_solve differ - on 50/50 lanes from initialize at ~1e-15), amplified to order one within 1-2 iterations on the 24 Jacobi-unstable lanes - (all 20 of the 3a divergence set); not nondeterminism (deterministic-ops flag bit-identical), not a vmap defect; controls - pdip_raw <= 1.3e-13, certified <= 3.4e-12. Wiki wiki/research/jacobi_a100_batched_divergence.md with the decision table - (B ruled out, C unlikely, A or D need a Mapper corpus). Human chose option 2 (bounded evidence step): phase 5 Mapper - corpus ISSUED as #399 (delaunay_hst, rectangular_hst, slam_mixed_hst, optional interferometer_delaunay; accuracy, - timing and divergence cells; one authorized A100 job). Phase 5 delivered (PR #400, A100 job 399225): Jacobi converged 24/24 Mapper/mixed systems, 0 batch-sensitive lanes; - raw+polish 1.05-1.62x Jacobi cost. DECISION 2026-10-08 (decisions/linear-solver-mapper-default-jacobi.md): keep Jacobi - as the Mapper default, raw+polish for MGE-only, no library change. Next: /prm on the re-landed phase-5 PR (corpus out - of git, human choice); then close the programme in the task.' - evidence: https://github.com/PyAutoLabs/autolens_profiling/blob/fe9ca472/wiki/research/jacobi_a100_batched_divergence.md + next: 'Programme question CLOSED by decision 2026-10-08 (decisions/linear-solver-mapper-default-jacobi.md): keep Jacobi as + the Mapper default, raw+polish for MGE-only, no library change. Phase 5 merged as autolens_profiling#401 (766f8202; #400 + superseded, corpus files out of git with sha256 + regenerate in the manifest, copies on RAL and the laptop); phases 3a/3b/4a + merged earlier (#394, #396, #398). Open evidence gaps, not tasks: wide-prior Mapper vectors, an interferometer corpus, + the n~1500 CPU batched/unbatched 4e-13 difference, rectangular criterion-2 failures. Campaign stays active for the + release re-runs of the solver cells; nothing issued.' + evidence: https://github.com/PyAutoLabs/PyAutoPulse/blob/main/decisions/linear-solver-mapper-default-jacobi.md - id: imaging title: Production imaging and likelihood breakdown status: active @@ -207,17 +202,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: active + status: complete priority: medium path: tasks/mge_nnls_fix_pyautoarray_571_slam_60.md updated: '2026-10-08' issue: https://github.com/PyAutoLabs/autolens_profiling/issues/399 - next: 'Phases 3a/3b/4a merged (#394, #396, #398; Mind records complete/2026/10/linear-solver-p3a-a100-parity.md, - linear-solver-p3b-gpu-timing.md, linear-solver-p4a-jacobi-a100-divergence.md). Phase 5 Mapper corpus issued as #399 - (Mind active/linear_solver_phase5_mapper_corpus.md, worktree linear-solver-p5-mapper-corpus, Opus executing). Task - stays active until the re-landed phase-5 PR is merged. Decision taken 2026-10-08: keep Jacobi for Mapper, raw+polish - for MGE-only (decisions/linear-solver-mapper-default-jacobi.md).' - evidence: https://github.com/PyAutoLabs/autolens_profiling/pull/398 + next: 'Complete 2026-10-08: phases 3a (#394), 3b (#396), 4a (#398) and 5 (#401) merged; Mind records complete/2026/10/linear-solver-p{3a-a100-parity,3b-gpu-timing,4a-jacobi-a100-divergence,5-mapper-corpus}.md. + Human decision recorded in decisions/linear-solver-mapper-default-jacobi.md. Revisit conditions live there; no follow-up issued.' + evidence: https://github.com/PyAutoLabs/autolens_profiling/pull/401 - id: autofit_profiling_bootstrap campaign: autofit title: 'autofit_profiling: bootstrap the repo + general PyAutoFit profiling epic' diff --git a/dashboard.html b/dashboard.html index 051ae77..c4fdab3 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-08 12:50:11 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

Phase 4a MERGED 2026-10-08 (autolens_profiling#398, fe9ca472; issue #397 closed; A100 job 399050): the A100-only jacobi batched/unbatched difference is deterministic batch-shape-dependent Cholesky rounding (cho_factor/cho_solve differ on 50/50 lanes from initialize at ~1e-15), amplified to order one within 1-2 iterations on the 24 Jacobi-unstable lanes (all 20 of the 3a divergence set); not nondeterminism (deterministic-ops flag bit-identical), not a vmap defect; controls pdip_raw <= 1.3e-13, certified <= 3.4e-12. Wiki wiki/research/jacobi_a100_batched_divergence.md with the decision table (B ruled out, C unlikely, A or D need a Mapper corpus). Human chose option 2 (bounded evidence step): phase 5 Mapper corpus ISSUED as #399 (delaunay_hst, rectangular_hst, slam_mixed_hst, optional interferometer_delaunay; accuracy, timing and divergence cells; one authorized A100 job). Phase 5 delivered (PR #400, A100 job 399225): Jacobi converged 24/24 Mapper/mixed systems, 0 batch-sensitive lanes; raw+polish 1.05-1.62x Jacobi cost. DECISION 2026-10-08 (decisions/linear-solver-mapper-default-jacobi.md): keep Jacobi as the Mapper default, raw+polish for MGE-only, no library change. Next: /prm on the re-landed phase-5 PR (corpus out of git, human choice); then close the programme in the task.

Reviewed 2026-10-08

Active tasks

Linear-solver programme phase 3: GPU/vmap/A100 timing and parity rows for the solver corpus↗

active · medium

Phases 3a/3b/4a merged (#394, #396, #398; Mind records complete/2026/10/linear-solver-p3a-a100-parity.md, linear-solver-p3b-gpu-timing.md, linear-solver-p4a-jacobi-a100-divergence.md). Phase 5 Mapper corpus issued as #399 (Mind active/linear_solver_phase5_mapper_corpus.md, worktree linear-solver-p5-mapper-corpus, Opus executing). Task stays active until the re-landed phase-5 PR is merged. Decision taken 2026-10-08: keep Jacobi for Mapper, raw+polish for MGE-only (decisions/linear-solver-mapper-default-jacobi.md).

active
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

Skeleton merged: autofit_profiling#1 (86c77345, 2026-10-07T21:17Z; AGENTS, hooks, hpc/sync, lint) under search-extensibility B1 (PyAutoMind#492). B1 docs legs PyAutoHeart#292 and .github#34 still open 2026-10-08. Porting unstarted; no producer registration until profiling-summary@2 is published (B4a).

Reviewed 2026-10-08

Active tasks

autofit_profiling: bootstrap the repo + general PyAutoFit profiling epic

ready · normal

Adopted by the search-extensibility epic (Mind draft/research/autofit/search_extensibility_epic.md); skeleton merged as autofit_profiling#1 (2026-10-07T21:17Z) under PyAutoMind#492 (B1). Next is B4a (search.fit breakdown exporter, Pulse fit row, epic-1 bottleneck table), then B4b (EP/graphical baseline port). No producer registration until profiling-summary@2 is published (B4a).

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

Decision History

Decision History

Keep Jacobi PDIP as the Mapper default and raw+polish as the MGE-only default