You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, projects use a resource share to determine how to get work. If the resource share is greater than zero, the project sends enough work to fill the user set work buffer if there is enough work available. If the resource share is zero, the project only sends enough work to use the available CPUs and GPUs, and only sends work if there is no work available from projects with a resource share greater than zero. This is good, but there is no way to prioritize projects so that work is received for one or more projects before other ones. If someone only wants to get work from a project only if there isn't any work from other projects, the resource share can be set to zero, but if multiple projects are set to zero, work is received from all of them equally.
With project priorities, projects can be prioritized in groups, using resource shares to divide the work in each priority group. Here is an example:
Work would be received from Projects A and B first. If there is no work for Project B, get GPU work from Project E, because it is the next priority project with GPU work. If none is available, get from Project G, then H or I.
If there is no work for Project A or B, get from Projects C, D, and E, then F. If no work is available from these, then G, and then H or I.
Resource share would still be global, not per priority, since work could be received from projects of different priorities.
The text was updated successfully, but these errors were encountered:
Currently, projects use a resource share to determine how to get work. If the resource share is greater than zero, the project sends enough work to fill the user set work buffer if there is enough work available. If the resource share is zero, the project only sends enough work to use the available CPUs and GPUs, and only sends work if there is no work available from projects with a resource share greater than zero. This is good, but there is no way to prioritize projects so that work is received for one or more projects before other ones. If someone only wants to get work from a project only if there isn't any work from other projects, the resource share can be set to zero, but if multiple projects are set to zero, work is received from all of them equally.
With project priorities, projects can be prioritized in groups, using resource shares to divide the work in each priority group. Here is an example:
Project A (CPU Only): Resource share = 100 (25%), Priority = 1
Project B (CPU/GPU): Resource share = 100 (25%), Priority = 1
Project C (CPU Only): Resource share = 100 (25%), Priority = 2
Project D (CPU Only): Resource share = 50 (12.5%), Priority = 2
Project E (CPU/GPU): Resource share = 50 (12.5%), Priority = 2
Project F (CPU Only): Resource share = 0, Priority = 2
Project G (CPU/GPU): Resource share = 0, Priority = 3
Project H (CPU/GPU): Resource share = 0, Priority = 4
Project I (CPU/GPU): Resource share = 0, Priority = 4
Work would be received from Projects A and B first. If there is no work for Project B, get GPU work from Project E, because it is the next priority project with GPU work. If none is available, get from Project G, then H or I.
If there is no work for Project A or B, get from Projects C, D, and E, then F. If no work is available from these, then G, and then H or I.
Resource share would still be global, not per priority, since work could be received from projects of different priorities.
The text was updated successfully, but these errors were encountered: