Project-MONAI / Project-MONAI/MONAILabel

Resource Scheduler API

Open
#446 0 comments 0 reactions 1 assignee View on GitHub

@aihsani is already working on this.

Since Oct 7, 2021.

backlog resource scheduler
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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.