-
Notifications
You must be signed in to change notification settings - Fork 1
Add memory_per_cpu_mb and memory_per_gpu_mb to action.resources.
#95
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
Conversation
To prepare to allow actions to request memory: Store the memory request as an integer number of megabytes. The scheduler can then validate the action's request compared to the cluster's request (if any) and warn the user appropriately.
Pass through the memory request when there is no request defined in the partition. When there is a request in the partition, warn the user if they request less and error when they request more.
Anvil rewrites user requests to claim more CPUs when the memory goes above the allowed value per core. Previously, we avoided setting this because the number changes. Now, with the ability to set `memory_per_cpu_mb`, we need to set the memory level to prevent users from accidentally submitting invalid jobs.
|
@bcrawford39GT, let me know if this will meet your needs. |
This previously worked, but no longer seems to.
|
@joaander Hey! Thanks for adding this! This looks OK to me in general. Thinking about other users also, it may may it easier them to do the following.
Thoughts? |
|
The numerical value is needed to ensure that the user does not request more resources than are available on clusters that do charge extra for memory. GB is not possible because I need MB resolution on some clusters (for example, 1970M on Anvil). Writing a validator and unit conversion code that can process arbitrary strings is not a valuable use of developer time. If you want to pass a string through to SLURM, then you can use |
|
@joaander OK. That makes sense. I think this looks OK then |
|
Thanks for your review. I'll release a new version soon. |
Description
Allow users to request memory (in MB) specific to each action. Such a request is redundant when the partition configuration already includes it. Row warns the user when they request less than they could and errors when they request more. On partitions with no explicit memory request, the action-specific request will be passed through.
Motivation and context
Some clusters allow users to request any amount of memory, therefore a single default value is not appropriate.
Resolves #84.
How has this been tested?
Checklist:
doc/src/contributors.md) in the pull request source branch.doc/src/release-notes.md.