Repository navigation
Conversation
…lia load and compile time Add docs/development/running-scans.md with measured load, compile and rebuild costs, a one-process scan script with per-case directories and job-array chunking, CPU-target and precompile-once advice, Revise and a warm-worker pattern for edit-test loops, and the state-isolation rules the regression harness relies on. Point to it from CLAUDE.md (and so AGENTS.md, GEMINI.md and the Copilot instructions) and the developer notes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VdRsGGg4YRG6E9fgLGbpdF
…ed outside the repository Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VdRsGGg4YRG6E9fgLGbpdF
logan-nc
marked this pull request as ready for review
November 8, 2026 19:26
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release note
A new page,
docs/development/running-scans.md, measures where a GPEC run's wall time goes (package load, first-case compilation, image rebuilds) and shows how to structure cases, scans, job arrays and edit-test loops so that cost is paid once.CLAUDE.mdand the developer notes point to it.Regression report
Not run: documentation only,
src/untouched.Notes for reviewers
Why. People and agents running scans on clusters lose much of their wall time to Julia load and compilation: a fresh
juliaper case, resubmitting after asrc/edit, or an array of tasks all starting on a stale image. #634 fixed this for the regression harness by running every case at a ref in one warm worker. Nothing told users how to do the same for their own runs.Measured at develop
a1149c5c2, Julia 1.11.7, pinnedci/manifestsmanifest, Slurm jobs on a two-socket Ice Lake node, 4 CPUs unless noted, default build (precompile_workloadon). Ranges are over two runs.julia -e 1using GeneralizedPerturbedEquilibrium, valid imagesrc/edit: workload on / offrevise()/ next Solovev caseA 10-point Solovev elongation scan in one 4-CPU allocation:
juliaper case, valid imagejuliaper case, after asrc/editDistributed, 4 workers × 1 threadCross-CPU check: one depot on a shared filesystem, Ice Lake build host, Cascade Lake load host. A
nativeimage was rejected ("Unable to find compatible target in cached code image") and rebuilt in 482 s. WithJULIA_CPU_TARGET="generic;cascadelake,clone_all;icelake-server,clone_all"the build took about as long (523 s against 533 s) and loaded with no rejection, even from a job that did not set the variable.Checked.
src/edit.julia --project=docs docs/make.jlpasses.Not measured. Lock-file behaviour of tasks on different nodes sharing one depot. The page says so.
What changed.
AGENTS.md,GEMINI.mdand.github/copilot-instructions.mdare symlinks toCLAUDE.md, so they pick up its new section automatically.docs/development/is not built by Documenter, so the page is linked fromCLAUDE.md(likebenchmarking.md) and from the built developer notes.Proposed follow-up, not in this PR: a small
run_variants(base_dir, overrides; outroot)helper that runs a vector of deck overrides in one process with per-case directories, logs andDONEmarkers. The harness's_materialize_rundirand warm worker already do most of this internally. Exporting a user-facing version would make the right pattern a one-liner, but it is an API decision for maintainers.🤖 Generated with Claude Code
https://claude.ai/code/session_01VdRsGGg4YRG6E9fgLGbpdF