-
Notifications
You must be signed in to change notification settings - Fork 50
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
Adds a new --bank/-B flag to Flux scheduling commands to simplify setting a bank #6157
Conversation
…o simplify using banks
Thanks Ian! On the commit form: the title should be <= 50 chars written in the imperative voice. The prefix is optional. A body is also required and we prefer the problem/solution form. For example here it could be something like:
The fact that either the long form or the short form are ignored when flux-accounting is not present is maybe a different problem that doesn't necessarily have to be solved at the same time. It's really one of a class of problems that we have. For example, you can accidentally specify For discussion, I guess my one thought about the proposed change is since these are equivalent:
would adding a short option for setting system attributes be a reasonable compromise that keeps flux-core agnostic the bank concept?
If options are changed, we'll need a man page update also (in a separate commit preferably) and probably a couple tests just to get coverage for the option parsing. |
I think what we'd planned here was to have a way for sites to add new options to the submission commands via plugins, then flux-accounting could provide a plugin to add @trws suggested that all plugin-enabled options should have a specific prefix or other way to make it obvious that the option is provided by a plugin. This is a good idea, but might nullify some of the convenience of adding new options that are just shorthand for Maybe if we could add a short option for |
The related issue to what Mark is describing is #2875. I think a good first step is what @garlick describes, setting a short-option for |
I agree in general that we want plugin-provided options, and documenting setattr targets would be fantastic, but at the same time banks are pretty deeply baked into most people's notion of what a resource manager does. Enough so that I'm honestly wondering if it's worth just always having the option, and having there be a logical bank, "default" or something, even when we're running without accounting. Most of the system need not care, but it would mean we could provide better failure modes if someone specifies the flag and there's nothing that can do anything about it. Having it do nothing silently is only a minor issue when there's no accounting plugin, you probably just don't care, but |
@trws brings up some really great points. Currently we have maximum flexibility in that other framework projects, shell plugins, jobtap plugins, etc. can easily support new attributes in jobspec without any prior support in flux-core. However, the drawback is, as you say, there is currently no way to detect typos or malformed attributes until it is too late. Additionally, there is no auto-documentation of these attributes, instead the documentation, if any, is spread throughout the implementation(s). I'll open an issue on this. For this specific PR/issue, I wonder if we should just officially support flux-core/src/modules/job-list/job_data.c Lines 191 to 199 in 14c64d2
So the ship on those two attributes has already sailed... |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #6157 +/- ##
==========================================
- Coverage 83.37% 83.36% -0.01%
==========================================
Files 521 521
Lines 84653 84656 +3
==========================================
Hits 70577 70577
- Misses 14076 14079 +3
|
Currently, when Flux is running in system mode, users have to use
--setattr=system.bank=<BANK_NAME>
to select a bank. This PR adds a new--bank
/-B
flag to the following Flux commands to simplify this:flux alloc
flux batch
flux run
flux submit
flux bulksubmit
This new flag is essentially synonymous to Slurm's
--account
/-A
flag.There are still three outstanding things to do in this PR: