Make slurmctld periodic check interval configurable#200
Conversation
|
Submitted via the official channel per CONTRIBUTING.md (SchedMD does |
|
We do accept PRs now, although older versions of CONTRIBUTING.md still said we did not. I've pushed a change to update the version on the 25.05/25.11 branches to help avoid confusion. |
Add `SlurmctldParameters=periodic_check_interval=#` to configure how often slurmctld runs its periodic background check pass while keeping the default at the existing `PERIODIC_TIMEOUT` value of 30 seconds. Use the configured interval for the controller background time-limit processing and the related warning/time-limit checks so behavior stays consistent. Reject invalid values, 0, and INFINITE and fall back to the default. Document the option in `slurm.conf(5)` and the power save docs, and add an ATF test covering the reduced-interval cloud node resume path. Changelog: Add SlurmctldParameters=periodic_check_interval=# to tune the slurmctld periodic background check interval (default 30s). Signed-off-by: Dmitri Khokhlov <dkhokhlov@gmail.com>
2834f99 to
8cd0b7e
Compare
|
Debian downstream: bugs.debian.org/1138083 |
|
Can you clarify what the effect you are trying to achieve here? This appears to hit a lot of different loop timers that aren't directly related to the issue in the summary and I want to make sure this is behaving as expected. Thanks! |
The goal is to reduce the extra delay before jobs start after nodes in power save mode are resumed and register. This does not change the underlying timeout values. It only changes how often slurmctld evaluates the existing Today that poll is hardcoded at 30s and runs this existing group:
The relevant path is in
So after |
Summary
Add
SlurmctldParameters=periodic_check_interval=#to configure how oftenslurmctld runs its periodic background check pass.
The default remains the existing
PERIODIC_TIMEOUTvalue of 30 seconds. Sitescan lower the interval, for example to 2 seconds, to reduce delay before jobs
progress after powered-down nodes resume and register, such as when reducing
resume latency for suspended nodes.
Affects:
slurm-smd-slurmctldDetails
The interval controls the background block that runs job time-limit handling,
reservation checks, and node timer checks. The same configured value is also
used for related job warning/time-limit timing checks so behavior stays
consistent.
Invalid values,
0, andINFINITEare rejected and fall back to the default.Documentation for the new parameter was added to
slurm.conf(5)and the powersave documentation.
A targeted ATF integration test was added to verify that lowering
periodic_check_intervalallows a job waiting inCONFIGURINGto advancepromptly after the node registers.
Validation
git diff --checkpython -m py_compile testsuite/python/tests/test_141_1.pypython -m pytest testsuite/python/tests/test_141_1.py -k periodic_check_interval --collect-only -qFull execution of the new ATF test is expected to run in GitHub CI / isolated
test infrastructure, since Slurm ATF
--auto-configmanages the Slurmenvironment and is not appropriate to run against a live local Slurm setup.