Skip to content

write status.csv as soon as study graph is constructed and between sy…#477

Open
atgrier wants to merge 2 commits into
llnl:developfrom
atgrier:enhance/write-status-csv-immediately
Open

write status.csv as soon as study graph is constructed and between sy…#477
atgrier wants to merge 2 commits into
llnl:developfrom
atgrier:enhance/write-status-csv-immediately

Conversation

@atgrier

@atgrier atgrier commented May 29, 2026

Copy link
Copy Markdown

This PR addresses #476

Currently the status.csv is not written (such as for synchronous login node jobs) until all of the first job step jobs are completed, nor can cancellation be issued or checked until that point. Proposed changes:

  • Write status.csv immediately after the study graph is created
  • Update status.csv after synchronous login node job are completed
  • Additionally check for cancellation between synchronous login node jobs

…nchronous login node jobs

check for cancellation between synchronous login node jobs

Signed-off-by: Alan Thomas Grier <grier1@llnl.gov>
# updates, especially for login node jobs that complete
# synchronously.
if self._status_path:
self.write_status()

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So I think this (and the cancellation) machinery should remain out at the conductor level, not in the job submission hot-loop inside the execution graph. Bench-marking the submission speed fix that's going into this release has the new floor at ~20-30 job submissions per second, and hitting the file system for this and cancellation that often is likely to cause problems (might even make the status cmd fail outright while jobs are being submitted due to io contention).

I've got an alternate local adapter + executor in the works to make it behave more like flux/slurm/etc schedulers (i.e. non-blocking) that should be a better path making things more responsive.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I reverted the bulk of the changes, including the test file that was mostly for the cancellation changes. Now it's limited to a single addition of a status write at conclusion of initializing the conductor, along with a couple minor clerical edits.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants