Description
Overview
The point-source A100 campaign (PyAutoPulse point-source-image-gpu, task point_source_image_plane_gpu_breakdown) has been waiting on one authorised measurement: whether the released 2026.10.17.1 image-plane likelihood, after the forward-gradient correctness fix PyAutoLens#768 (closing PyAutoLens#767), is admissible as the campaign's A100 performance baseline. The human authorised the A100 compute and the recording flow on 2026-10-17. This is one bounded measurement phase; no optimization.
Plan
- Clone the five libraries at tag 2026.10.17.1 privately under
/mnt/ral/jnightin/profiling/(the shared mirror and HPCPullPyAuto stay untouched). - One exclusive A100 job (
--gres=gpu:1, one task,--exclusive) running the shared breakdown harness (likelihood_breakdown.py: fused likelihood s/eval, 8-step solver prefix rows, compile vs execution) and the phase-0+1 bottleneck-map cell (same arguments as job 366916) for a like-for-like pairing, fp64 only. - Record host, GPU, driver, JAX/jaxlib, dataset, model configuration and library SHAs.
- Pair against job 366916 only if hardware, precision and dataset match; otherwise state "no compatible comparison".
- Commit the result JSON/PNG and logs under
results/breakdown/point_source_image/, regenerate README/catalogue/dashboard, and add a dated journal entry towiki/campaigns/point_source_gpu_breakdown.mdplus a ledger section, stating admissibility as evidence only. - Tier: judge — merge mode: human /prm
Detailed implementation plan
Affected Repositories
- autolens_profiling (primary, workspace tier)
Branch Survey
| Repository | Current Branch | Dirty? |
|---|---|---|
| ./lens/autolens_profiling | main | untracked dataset/abell_1201/ only |
Claim guard: worktree_check_conflict reports autolens_profiling claimed by hst-mge-pilot-qualification (PR #418 open, awaiting merge). This task is registered in Mind planned.md as blocked by it; the A100 measurement runs in RAL scratch (no edit to this repo) and the commit/PR waits for the claim to clear.
Suggested branch: feature/point-source-image-gpu-admission
Implementation Steps
- RAL:
git clone --depth 1 --branch 2026.10.17.1PyAutoNerves/Fit/Array/Galaxy/Lens into/mnt/ral/jnightin/profiling/PyAuto_wt/ps-image-admission-2026.10.17.1/; clone autolens_profiling main into/mnt/ral/jnightin/profiling/autolens_profiling_wt/ps-image-admission/. - New submit
hpc/batch_gpu/submit_breakdown_point_source_image_admission_a100_fp64(derived from the phase-0+1 submit):--exclusive, private PYTHONPATH prepended afteractivate.sh, refuse unless every library imports from the private base at the tag SHAs, assert GPU backend; legs (a)likelihood_breakdown.py --config-name hpc_ral_a100_fp64_r2026_10_17_1, (b)gpu_bottleneck_map.pyfp64 with job 366916's arguments, same config label. No fp32 what-if (not mixed precision). hpc/sync pull; copy JSON/PNG intoresults/breakdown/point_source_image/, log intoresults/logs/point_source_image/;build_readme.py,build_catalogue.py,build_dashboard.pyfrom a clean worktree.- Journal entry + ledger section; WALL-BASIS block from the measured wall.
Key Files
scripts/point_source_image/image_plane/likelihood_breakdown.py— shared harness (unchanged)scripts/point_source_image/image_plane/gpu_bottleneck_map.py— phase-0+1 cell (unchanged)hpc/batch_gpu/submit_breakdown_point_source_image_gpu_bottleneck_map_a100_fp64— templatewiki/campaigns/point_source_gpu_breakdown.md,results/notes/point_source_gpu_breakdown_2026_09.md
Original Prompt
Click to expand starting prompt
Point-source image-plane A100 admission measurement on released 2026.10.17.1
Type: research
Target: autolens_profiling
Repos:
- autolens_profiling
Themes: - point-source
- profiling
- jax-gpu
Difficulty: medium
Autonomy: supervised
Priority: high
Status: formalised
Consequence: judge
Filed: 2026-10-17
Campaign: PyAutoPulsepoint-source-image-gpu/ tasktasks/point_source_image_plane_gpu_breakdown.md
Request (verbatim, human 2026-10-17)
"Do all that, I authorise all" — A100 compute on RAL for the image-plane admission
measurement of the point-source A100 campaign on the released 2026.10.17.1 stack, and the
development flow to record it. Merge stays human.
Scope (one bounded phase)
Measure whether the released 2026.10.17.1 image-plane point-source likelihood (after the
correctness fix PyAutoLens#768, which closed PyAutoLens#767) is admissible as the campaign's
A100 performance baseline, using the shared breakdown harness
(scripts/point_source_image/image_plane/likelihood_breakdown.py) plus the phase-0+1
bottleneck-map cell for a like-for-like pairing with job 366916:
- full fused likelihood s/eval and the 8-step solver prefix breakdown; compile separate from execution;
- fp64 only (the cell defines no mixed-precision switch);
- one RAL A100,
--gres=gpu:1, one task,--exclusive; - private library checkouts at tag 2026.10.17.1 under
/mnt/ral/jnightin/profiling/(never the shared mirror, never HPCPullPyAuto); - record host, GPU, driver, JAX/jaxlib, dataset, model configuration and SHAs;
- pair against job 366916 (last qualified pre-#768 A100 fp64 row) only if hardware/precision/dataset match, else "no compatible comparison".
No optimization. Admissibility is stated as evidence only; acceptance of a baseline is the human's call.
Activity
Jammy2211 commentedon Oct 17, 2026
Shipped as PR #434 (judge tier, awaiting human /prm). RAL job 412519 (euclid-ral-gpu-2, exclusive A100, tag 2026.10.17.1 private checkout): scalar 0.934 ms, vmap-256 0.0125 ms/L, forward gradient finite (=reverse to 1.6e-11), FD 4/6 unchanged; cross-run vs 366916, not an A/B. Admission is the human's call.
Merge pull request #434 from PyAutoLabs/feature/point-source-image-gp…
Jammy2211 commentedon Oct 17, 2026
Shipped
PR #434 merged 2026-10-17. A100 image-plane admission measurement on the released 2026.10.17.1 stack (RAL job 412519, euclid-ral-gpu-2, exclusive, fp64, jax 0.10.2): single call 0.934 ms (pre-#768 0.910), vmap-256 0.0125 ms, compile 6.54 s, forward gradient finite 16/16 (was NaN), logL bit-exact. Recorded as a reference measurement. Human decision 2026-10-17: point-source image-plane campaign filed as research, no further source changes; phase-2 inference fit measurement dropped. Pulse: campaign point-source-image-gpu parked.