Repository navigation
Closed
Labels
area: gpuCUDA and HIP builds: qualification and performanceCUDA and HIP builds: qualification and performancearea: nativeThe native backend, threading and FFT planningThe native backend, threading and FFT planningenhancementNew feature or requestNew feature or requestperformanceSlower or larger than it should be, with no wrong resultSlower or larger than it should be, with no wrong resultpriority: mediumReal work that should not wait longReal work that should not wait longsepTracks an enhancement proposal (SEP)Tracks an enhancement proposal (SEP)
Description
Tracking issue for SEP 46 — Calibrating the native CPU backend to its machine (Draft).
The native backend's CPU settings are constants: about seventeen operation thresholds, the medium width, the compact team's cap, the waiting policy and FFTW's planning effort. PR #576 measured them on six machine families and found the best value of each to depend on the machine. For example, dividing the thresholds by 16 ran an Apple M5 Max's cases 13 % faster but slowed some of a Xeon Gold's by 1.4–1.7×. That is why PR #576 needed per-platform switches.
SEP 46 proposes:
solprop calibrate: a bounded one-off measurement (--quickabout 20 s and automatic on first use, standard about a minute,--thoroughabout five minutes for benchmarks) of waiting, team width, core kinds, operation crossovers and FFTW plans, validated against the built-in table before use. FFTW efforts are tried as a ladder under time limits and kept only when the plan wins inside a step (no threaded patient planning, and no wisdom from losing plans);- a per-user store in the platform cache directory (
SOLPROP_CACHE_DIRoverrides it), keyed by a machine and build fingerprint and holding FFTW wisdom by default, with read-only directories for clusters; - an optional refinement for one simulation, keyed by a problem signature and reused by scans. This covers SEP 4's use case, and the SEP proposes superseding SEP 4 (SEP 4: Bounded execution autotuning #115).
- GPU builds' run-time settings, fitted when a rented device is bootstrapped (phase 6).
Related: #328, #329, #332, #81, #333, #136, #229, #303, #560.
Metadata
Metadata
Assignees
Labels
area: gpuCUDA and HIP builds: qualification and performanceCUDA and HIP builds: qualification and performancearea: nativeThe native backend, threading and FFT planningThe native backend, threading and FFT planningenhancementNew feature or requestNew feature or requestperformanceSlower or larger than it should be, with no wrong resultSlower or larger than it should be, with no wrong resultpriority: mediumReal work that should not wait longReal work that should not wait longsepTracks an enhancement proposal (SEP)Tracks an enhancement proposal (SEP)
Activity
[-]SEP 46: Calibrating the native CPU backend to its machine[/-][+]SEP 46: Calibrating the native backend to its machine[/+]jtravs commentedon Nov 8, 2026
Implementation started on
feature/sep-0046-machine-calibration: draft PR #582 (all phases on one branch).