Skip to content

[enhancement]: Round-robin generation sessions across users #125

@lstein

Description

@lstein

Is there an existing issue for this?

  • I have searched the existing issues

Contact Details

No response

What should this feature add?

Right now, when running in multiuser mode, the session manager takes jobs off the queue in a FIFO manner. However, when multiple users are working with the same backend, a greedy user can enqueue 100 rendering jobs, forcing all other users to wait their turn.

This feature would change the queue logic such that the jobs for each active user are dequeued in such a way that each user is served in turn. That is, if there are users A, B and C, and their jobs are queued like this:

A job 1
A job 2
B job 1
C job 1
C job 2
A job 3

They will be processed in this order:

A job 1
B job 1
C job 1
A job 2
C job 2
A job 3

The dequeueing behavior should be controlled by a configuration variable session_queueing with one of the values 'FIFO' (traditional behavior) or round_robin (new behavior).

If multiuser mode is active, then round_robin is the default. If in single user mode, use FIFO and ignore the round_robin option.

Alternatives

No response

Additional Content

No response

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions