Project-MONAI / Project-MONAI/MONAILabel
Resource Scheduler API
@aihsani is already working on this.
Since Oct 7, 2021.
- Dominant language
- Python
- Stars
- 891
- Forks
- 269
- Avg merge
- 15h 41m
- Merged PRs (30d)
- 1
Description
Is your feature request related to a problem? Please describe.
Currently MONAI Label Server assumes it has virtually unlimited space when running training, batch inference, and on-demand inference tasks (caused by user clicks). In cases where all or some of the above tasks do not fit in the system, the most recent task will fail with an out of memory error and not run, causing the user to manually guess if the system is able to run the task in the future when resources are freed up.
Describe the solution you'd like
It is desirable to have an API that allows both MONAI label server developers and MONAI Label App developers to priritize and schedule a task when one is required to run. Due to the nature of the training, batch-inference, and on-demand inference tasks it is required that preemption be implemented as, for instance, an on-demand inference always takes precedence over any other currently running tasks. Saving process state when preempting is out of the scope of this feature request.
Describe alternatives you've considered
We are considering PyDCGM as the library that will enable the resource scheduler to keep track of the running tasks, their memory utilization in the GPU, GPU attachment, etc.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.