-
Notifications
You must be signed in to change notification settings - Fork 94
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
Single batch job for multiple tasks #2754
Comments
Examples of how this is supported in other tools: |
Perhaps Families could gain the ability to run like tasks, subsuming the job scripts (modified?) of it's children into a single job (integrating them into a batch job ( in accordance with the A family job could be specified optionally (single/batch (default = None)) via;
(not entirely sure of what advantages a family job running task jobs in
could, along with the relationship of the task-job, mean the same as it currently does (to preserve the behavior of family expansion, and simplify the Family object to not need it's own prereqs). However, it introduces a new pragmatic facet to the concept of a family (family-job relationship, not just inheritance). Submit numbers could be accumulated by the family, but also individually by the task children in the same way they already are. To be consistent all families should be represented the same new way in code, but only Dependencies between children would be ignored (warning issued on run/restart/reload?), as a batch job is different than a sub-suite because the former is managed by the batch system. |
This family job could include child family-jobs also I suppose (be recursive). |
Hi @dwsutherland Thank you for the contribution. Ultimately, I want a flexible system where tasks in a sub-graph (which may involve multiple subsets of multiple families) can be grouped into a single batch job that can run in a worker pool and still have the dependencies within the sub-graph honoured. The problem is not very difficult to solve - it is very much how we would run a build system on interdependent source files with a worker pool. However, it will require some agreement on how users will configure it in their suite configuration. Overloading the run time family setting may be one way of doing this, but may also restrict us as well. |
@matthewrmshin - Yes, that would be ideal, there would be a number of ways to "skin this cat"; would be best to avoid the sub-graph dependencies being built into the batch job; and I suppose DB reads (polling style) are out of the question.
Perhaps you could school me; how does a couple (potentially one) line per batch family overload the run time? (can't imagine it would be declared that frequently even in suites that use it). |
Hi @dwsutherland Not sure why you are not keen on sub-graph dependencies in batch job. We happen to have some good experience writing simple efficient dependency manager + pool of workers logic for running in batch jobs. Rose file installation and When I said overload, I meant it like operator overloading, e.g. Python overloads the I am not saying that we cannot do it this way, but my understanding of the problem tells me that it may restrict what we can do with the logic and how users may have to interact with the system. I would like to explore other possibilities and ideas before drawing any conclusions. My current feeling is that we should have much better separation between batch job settings (job submission and management - which is often site specific and less portable) and actual run time settings (actual logic of the task - which is less site specific and more likely to be portable). Finally, we have many users with suites that will use this feature heavily in their suites, so I am keen to explore different possibilities to get the user interface right. |
@matthewrmshin - Thanks for the explanation.. Also I'm not against sub-graph dependencies; just speculating on it's desirability from a place of ignorance (apologies; would have been better in the form of a question about having them built into the job script) 😉 |
We need the ability to group together a number of related small tasks to run as a single batch job - but still have the suite manages the tasks as separate entities.
Quick points:
log/job/
file system to handle this.See also:
The text was updated successfully, but these errors were encountered: