From 0c61ab0b13056685b03c66f41222a0c0d1057216 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 27 Aug 2026 17:16:06 +0000 Subject: [PATCH] prompt: file issue for xla-cpu-eigen-pool-deadlock (#1530) The research follow-up to the shipped jax-compile-stall epic. #1528 delivered a workaround: both test workspaces now run every JAX script with single-threaded Eigen, ~15% slower on the heaviest paths, behind a flag whose removal silently brings back seven quarantines. The prompt carries what is already settled so the next session does not re-run it -- the hang locus (materialising a vmap result, not compiling it) and three refuted hypotheses (compilation cache, jax/jaxlib version, the 3.12-vs-3.13 split) -- plus the method note that the hang rate wanders, so any claim needs ABAB against a re-measured control rather than before/after. The question worth the most: whether XLA's pool is merely mis-sized against the runner's cgroup quota rather than genuinely deadlocked. If so the fix is sizing it and the 15% comes back. Branch restarted from origin/main, since the previous PR on this branch (PyAutoMind#348) is merged and merged history is not stacked on. Co-Authored-By: Claude --- active.md | 13 ++++++++++ .../xla_cpu_eigen_pool_deadlock.md | 1 + dashboard.html | 14 +++++----- dashboard.md | 26 +++++++++---------- 4 files changed, 34 insertions(+), 20 deletions(-) rename {draft/research/ci => active}/xla_cpu_eigen_pool_deadlock.md (99%) diff --git a/active.md b/active.md index fb25a165..7e67cf98 100644 --- a/active.md +++ b/active.md @@ -13,3 +13,16 @@ - registered: 2026-08-19 by the wake_up session โ€” the issuing session (claude/autofit-priors-messages-audit-ylvenv) filed the prompt + issue but not this entry, tripping Lifecycle Drift on main. - repos-none-claimed: this entry claims NO repos โ€” one line deliberately, not 2-space bullets. + +## xla-cpu-eigen-pool-deadlock +- issue: https://github.com/PyAutoLabs/PyAutoFit/issues/1530 (issued 2026-08-27) +- issued: 2026-08-27 +- prompt: active/xla_cpu_eigen_pool_deadlock.md +- status: not started โ€” research follow-up to the shipped jax-compile-stall epic + (record complete/2026/08/jax-vmap-materialisation-hang.md, PyAutoFit#1528) +- repos-none-claimed: no worktree claimed; investigation is CI-driven via retime.yml +- why: #1528 shipped a WORKAROUND. Every JAX script in both test workspaces now runs + single-threaded Eigen (~15% slower on the heaviest), and that flag is load-bearing โ€” + removing it silently brings back seven quarantines. +- the recoverable-cost question: if XLA's pool is merely mis-sized against the runner's + cgroup quota rather than genuinely deadlocked, the fix is sizing it and the 15% comes back. diff --git a/draft/research/ci/xla_cpu_eigen_pool_deadlock.md b/active/xla_cpu_eigen_pool_deadlock.md similarity index 99% rename from draft/research/ci/xla_cpu_eigen_pool_deadlock.md rename to active/xla_cpu_eigen_pool_deadlock.md index 45f5267a..1ddb2c88 100644 --- a/draft/research/ci/xla_cpu_eigen_pool_deadlock.md +++ b/active/xla_cpu_eigen_pool_deadlock.md @@ -11,6 +11,7 @@ Autonomy: supervised Priority: medium Status: formalised Filed: 2026-08-27 +Issued: 2026-08-27 ## Why this exists diff --git a/dashboard.html b/dashboard.html index dd53f52f..aab65187 100644 --- a/dashboard.html +++ b/dashboard.html @@ -204,7 +204,7 @@

PyAutoMindDashboard

Intent. Priority. Flow.

Every task the Mind is holding. Tap a task's ๐Ÿ“‹ and its /start_dev command is on your clipboard โ€” paste it into a Claude Code chat to route Claude straight to that task. Recent is the same work by date โ€” what has been happening rather than what to do next.

- +

Last updated 2026-08-27. This page is generated from active/, draft/ and the registry files, so it is only as current as they are. dashboard_refresh.yml re-renders it on every push to main โ€” that heals a stale page, but not a stale prompt: a task that shipped without its prompt advancing to complete/ keeps rendering here as pickable backlog. Reconciling those is the refresh below.

@PyAutoFit TransformedMessage.factor_gradient crashes on first call โ€” issue #1501 โ€” issued 2026-08-19 โ€” HOLD โ€” do not start dev. Fix-or-delete hangs off the PyAutoFit#1498 logpdf-contract

+

Why does XLA CPU's Eigen thread pool wedge on the multi_dataset vmapโ€ฆ โ€” issue #1530 โ€” issued 2026-08-27 โ€” not started โ€” research follow-up to the shipped jax-compile-stall epic

Parked markdown version

3 task(s) @@ -269,7 +270,7 @@

Planned

latent-nan-guard-honest-run โ€” planned 2026-07-22

Backlog markdown version

-

135 filed prompts, not started โ€” sorted most-pickable first (priority, then size). 24 of them belong to an epic and are listed only under Epics below.

+

134 filed prompts, not started โ€” sorted most-pickable first (priority, then size). 24 of them belong to an epic and are listed only under Epics below.

feature โ€” 28

Numba CPU likelihood phase 1: batched MGE convolution + operated-matrix cachingโœจ featureautoarraymediumsupervisedhigh

@@ -302,11 +303,10 @@

Backlog

Teach repos_sync --write to stamp organ config surfacesโœจ featurepyautomindhardsupervisedlow

-research โ€” 15 +research โ€” 14

Deep research: Can we speed up Delaunay in PyAutoArray?๐Ÿ”ฌ researchautoarraytoo-largesupervisedhigh

Delaunay-family JAX modules never hit the persistent compilation cache๐Ÿ”ฌ researchautoarraymediumsupervisedmedium

Quick-update plotting cost โ€” minutes per update, and it is not JAXโ€ฆ๐Ÿ”ฌ researchautolensmediumsupervisedmedium

-

Why does XLA CPU's Eigen thread pool wedge on the multi_dataset vmapโ€ฆ๐Ÿ”ฌ researchcimediumsupervisedmedium

Use readthedocs or migrate to GitHub docs๐Ÿ”ฌ researchpyautohandssmallsupervisednormal

Re-baseline the slacs0008 acceptance parity after the HAP-dedupe fix๐Ÿ”ฌ researchpyautoreducesmallsupervisednormal

Kernel-CDF bandwidth defaults โ€” config-dependent quality, investigate adaptivity๐Ÿ”ฌ researchautoarraymediumsupervisednormal

@@ -413,9 +413,9 @@

Backlog 2026-08-27 -filed -Why does XLA CPU's Eigen thread pool wedge on the multi_dataset vmapโ€ฆ - +issued +Why does XLA CPU's Eigen thread pool wedge on the multi_dataset vmapโ€ฆ + 2026-08-27 diff --git a/dashboard.md b/dashboard.md index 1c351a5e..f1f55282 100644 --- a/dashboard.md +++ b/dashboard.md @@ -42,10 +42,10 @@ anything you could not verify. | Where | Count | |-------|------:| -| [In flight](#in-flight) (`active/`) | 1 | +| [In flight](#in-flight) (`active/`) | 2 | | [Parked](#parked) (`parked.md`) | 3 | | [Planned](#planned) (`planned.md`) | 5 | -| [Backlog](#backlog) (`draft/`) | 135 | +| [Backlog](#backlog) (`draft/`) | 134 | ## Start here @@ -163,6 +163,14 @@ Issued โ€” each has an open GitHub issue and usually a branch. The full record f

+
๐Ÿ“‹ Why does XLA CPU's Eigen thread pool wedge on the multi_dataset vmapโ€ฆ โ€” issue #1530 โ€” issued 2026-08-27 โ€” not started โ€” research follow-up to the shipped jax-compile-stall epic + +``` +/start_dev active/xla_cpu_eigen_pool_deadlock.md +``` + +
+ ## Parked Started or scoped, not currently in flight โ€” resume by moving the row back to `active.md`. Full detail in [`parked.md`](parked.md). @@ -247,7 +255,7 @@ Scoped but not started; some are not yet prompt files. Full detail in [`planned. ## Backlog -**135** filed prompts, not started. Each section is sorted most-pickable first (priority, then size). **24** of them belong to an epic and are listed only under [Epics](#epics) below. +**134** filed prompts, not started. Each section is sorted most-pickable first (priority, then size). **24** of them belong to an epic and are listed only under [Epics](#epics) below.
feature โ€” 28 @@ -479,7 +487,7 @@ Scoped but not started; some are not yet prompt files. Full detail in [`planned.
-research โ€” 15 +research โ€” 14
๐Ÿ“‹ Deep research: Can we speed up Delaunay in PyAutoArray? โ€” autoarray ยท too-large ยท supervised ยท high @@ -505,14 +513,6 @@ Scoped but not started; some are not yet prompt files. Full detail in [`planned.
-
๐Ÿ“‹ Why does XLA CPU's Eigen thread pool wedge on the multi_dataset vmapโ€ฆ โ€” ci ยท medium ยท supervised ยท medium - -``` -/start_dev draft/research/ci/xla_cpu_eigen_pool_deadlock.md -``` - -
-
๐Ÿ“‹ Use readthedocs or migrate to GitHub docs โ€” pyautohands ยท small ยท supervised ยท normal ``` @@ -1188,7 +1188,7 @@ The 50 newest things to happen to the work in hand, newest first โ€” issued, par | Date | Event | Task | |------|-------|------| -| 2026-08-27 | filed | Why does XLA CPU's Eigen thread pool wedge on the multi_dataset vmapโ€ฆ | +| 2026-08-27 | issued | Why does XLA CPU's Eigen thread pool wedge on the multi_dataset vmapโ€ฆ | | 2026-08-27 | filed | One construction path for plane-bound lensing quantities | | 2026-08-27 | filed | Multi-plane time delays | | 2026-08-27 | filed | LensCalc NumPy Hessian step is too coarse for multi-plane tracers |