feat(presto/slurm): immutable result dirs, srun tracking, port preflight - #392
Draft
misiugodfrey wants to merge 1 commit into
Draft
feat(presto/slurm): immutable result dirs, srun tracking, port preflight#392misiugodfrey wants to merge 1 commit into
misiugodfrey wants to merge 1 commit into
Conversation
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
Based on kjmph's bench33 POC patch. - Result directories: write benchmark output to result_dir_<jobid>/ (immutable per job) and emit latest_result_dir.txt symlink pointer - srun PID tracking: capture COORD_SRUN_PID and WORKER_SRUN_PIDS for targeted teardown on exit; replaces broad pkill patterns - on_exit trap improvements in both run-presto-benchmarks.sh and run-analyze-tables.sh - Port preflight infrastructure: canonicalize_file_path helper, preflight_file / preflight_image_roles for pre-launch validation - UCX TLS defaults per variant: cpu gets sysv,tcp,self; gpu keeps existing ^ib,ud:aux,sm default; both remain shell-overridable - New collect-coordinator-queries.sh: fetches retained /v1/query JSON from a live coordinator (by job ID or direct URL) and writes per-query JSON + summary TSV via summarize_coordinator_queries.py - New summarize_coordinator_queries.py: stdlib-only TSV report writer; also extracts operatorSummaries into a separate JSON dir - cluster_config.env.example: document new UCX and result-dir variables
misiugodfrey
force-pushed
the
misiug/bench-slurm-robustness
branch
from
July 28, 2026 16:03
c2ef7d8 to
53ce1ec
Compare
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.
Summary
Hardens the NVL72 Slurm benchmark scripts: results are written to a stable per-job directory, process teardown is targeted rather than broad, and a new coordinator query collector enables post-run analysis.
Based on kjmph's bench33 POC patch.
result_dir_<SLURM_JOB_ID>/rather than a fixed path that gets overwritten on every run;latest_result_dir.txtis written alongside as a convenience pointerCOORD_SRUN_PIDandWORKER_SRUN_PIDSare captured and used for targetedkillon exit instead of broadpkillpatterns that could terminate unrelated jobsrun-presto-benchmarks.shandrun-analyze-tables.shnow use consistenton_exittraps that clean up in the right ordercanonicalize_file_path,preflight_file,preflight_image_roleshelpers for validating image paths and roles before container launchsysv,tcp,self; GPU keeps existing^ib,ud:aux,sm; both remain shell-overridable viaUCX_TLScollect-coordinator-queries.sh(new): fetches the coordinator's retained/v1/querylist and full per-query JSON for post-mortem analysis; works by Slurm job ID or direct URL; usessrun --overlapfor zero-extra-allocation Slurm accesssummarize_coordinator_queries.py(new): stdlib-only TSV report writer that reads the collected JSON and producessummary.tsv+ per-queryoperator_summaries/Dependencies
No functional dependencies on PRs #1–#2. However, the split files (
functions.sh,launch-run.sh,run-presto-benchmarks.sh) contain the full staging diff — rebase PRs #4 and #5 on top of this once merged to drop the duplicated hunks.Verification
result_dir_<SLURM_JOB_ID>/with alatest_result_dir.txtpointing to itcollect-coordinator-queries.sh <job_id>against a running job; confirmqueries.json, per-query JSON files,summary.tsv, andoperator_summaries/are writtencollect-coordinator-queries.sh --server http://host:9200(direct URL mode) and confirm it works without a Slurm job IDsummarize_coordinator_queries.pyproduces a correctly-formatted TSV with one row per query and truncates long SQL previews at 180 characters./ci/check_style.shon changed Python and shell files