-
Notifications
You must be signed in to change notification settings - Fork 241
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
toil-cwl-runner used to allow --defaultMemory 0
, which has special meaning to Slurm, but now no longer does
#4971
Comments
According to the CWL spec on I don't think support for Slurm's all-available-memory feature was ever an intended feature of The CWL way to do this would be to have the workflow set both I'm not sure that we could use this variable-memory machinery outside of Slurm, since I'm not sure any other schedulers have a similar affordance. How do you need this to work for your workflow? Which CWL jobs were getting Rather than building real support for variable memory limits, would it work to have Toil support a CWL extension requirement or hint to e.g. pass special Slurm flags for particular jobs? You could put |
--defaultMemory 0
, which has special meaning to Slurm, but now no longer does
The main reason for passing I also noticed a bug in the documentation. The documentation for |
➤ Adam Novak commented: Lon thinks a zero memory limit ought to be allowed, and represent not using a memory limit. |
➤ Adam Novak commented: If we take a 0 memory limit in Toil, we will want to not just pass it straight to the backing batch system, but pick one batch system’s behavior (Slurm, or Kubernetes, or something else) and implement that on top of all the other batch systems. So if 0 on Slurm gets you a whole node’s memory reserved, we would add machinery to the Kubernetes batch system to reserve a whole Kubernetes node’s memory. |
➤ Adam Novak commented: For batch systems we can’t (easily) support the desired behavior on, we should reject memory-0 jobs with some kind of not implemented error. |
➤ Adam Novak commented: We should also find out from the CWL folks if CWL has its own semantics for a 0 memory job. |
Out-of-band configuration is not part of the CWL standards 😀 To model this scenario in a CWL |
I recently noticed that it is no longer possible to pass
--defaultMemory 0
totoil-cwl-runner
. There's a check in place that enforces its value to be 1 or more. AFAICS this poses a problem when using Slurm, because you need to pass--mem=0
tosbatch
to instruct Slurm to use all available memory.See also: https://matrix.to/#/!sSMDDqTXkxpNofyjTR:gitter.im/$2MQRCwBC00tLV7ODhHvTHt73jEccTQnm0fL3u7BYwPA?via=gitter.im&via=matrix.org
┆Issue is synchronized with this Jira Story
┆Issue Number: TOIL-1590
The text was updated successfully, but these errors were encountered: