Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature request]: Batch CLI Action #440

Open
TimothyWillard opened this issue Jan 3, 2025 · 4 comments
Open

[Feature request]: Batch CLI Action #440

TimothyWillard opened this issue Jan 3, 2025 · 4 comments
Labels
batch Relating to batch processing. cli Relating to command line interfaces enhancement Request for improvement or addition of new feature(s). medium priority Medium priority.

Comments

@TimothyWillard
Copy link
Contributor

Label

batch, enhancement

Priority Label

medium priority

Is your feature request related to a problem? Please describe.

Submitting jobs related to flepiMoP to HPC environments is challenging. Currently inference jobs can be submitted via:

  1. https://github.com/HopkinsIDD/flepiMoP/blob/af3ad816ed278231d8a893b23baa71f4e397acc4/batch/inference_job_launcher.py for R inference, or
  2. https://iddynamics.gitbook.io/flepimop/model-inference/inference-with-emcee for EMCEE.

Submitting any other kind of job is either manual or not possible.

Is your feature request related to a new application, scenario round, pathogen? Please describe.

No response

Describe the solution you'd like

A CLI tool that can be used like so:

$ flepimop batch <action> ...

where ... correspond to further arguments passed to the given CLI action.

@TimothyWillard TimothyWillard added enhancement Request for improvement or addition of new feature(s). batch Relating to batch processing. medium priority Medium priority. labels Jan 3, 2025
@TimothyWillard
Copy link
Contributor Author

Relevant PR that contains infrastructure for implementing this issue: #394. Merging PR will be a blocker for starting this issue.

@pearsonca
Copy link
Contributor

pearsonca commented Jan 6, 2025

Per zoom discussion: may want to pivot the user-facing bit of #394 in this direction. Currently, that PR proposed interface is roughly:

$ flepimop submit -c config.yml ...

to create + submit an emcee job. When this issue is ultimately resolved, we'll want to stop supporting that syntax, and instead have users write:

$ flepimop batch calibrate ...

If its minimally invasive in #394 to use the expected future syntax now, let's jump to that so people have less future revision to do. We should be able to leave everything basically as-is on submit and just change it to a batch command with a subcommand calibrate.

@saraloo / @jcblemai as principle beneficiaries of #394 does that make sense? we're basically looking to tweak that PR slightly, so that the interface matches where we expect to go, but not implement any of the clever / complex / generalized capabilities entailed here.

pending user input, @TimothyWillard your call re tweaks to #394, as you best understand if "minimally invasive" is achievable.

@TimothyWillard
Copy link
Contributor Author

pending user input, @TimothyWillard your call re tweaks to #394, as you best understand if "minimally invasive" is achievable.

  1. As we discussed on zoom, I think it's trivial to change submit to batch calibrate, but difficult to do so in a way that will be compatible with the full implementation of batch given that the inference method independent calibrate action's options do not exist, and
  2. The EMCEE Batch Submit CLI Tool #394 PR needs to be split up as it is currently too challenging to review in its current state given its size.

@pearsonca
Copy link
Contributor

pearsonca commented Jan 6, 2025

  1. As we discussed on zoom, I think it's trivial to change submit to batch calibrate, but difficult to do so in a way that will be compatible with the full implementation of batch given that the inference method independent calibrate action's options do not exist, and

acknowledged - agree that we can't be perfect here, but we can tweak a bit to avoid some future edits. Deprecating / adjusting arguments seems easier than deprecating commands, imo.

@TimothyWillard TimothyWillard added the cli Relating to command line interfaces label Jan 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
batch Relating to batch processing. cli Relating to command line interfaces enhancement Request for improvement or addition of new feature(s). medium priority Medium priority.
Projects
None yet
Development

No branches or pull requests

2 participants