Hi,
On 12/11/2025 12:31, Chenna Kesava Raju (QUIC) wrote:
Hi All,
We are currently developing a driver using the Accel framework to enable
applications to offload their tasks to the NPU.
As part of this effort, we are considering the use of the DRM scheduler
for job management. These applications may have their own priority
levels to manage task execution efficiently on the NPU. However, since
the DRM scheduler currently supports only a limited set of job priority
levels (DRM_SCHED_PRIORITY_KERNEL, DRM_SCHED_PRIORITY_HIGH,
DRM_SCHED_PRIORITY_NORMAL, and DRM_SCHED_PRIORITY_LOW), we have a couple
of questions:
* Are there any plans to increase the number of supported priority levels?
Not that I am aware of. Adding maintainers as well.
* Is there any flexibility or scope for customizing priority levels
when using the DRM scheduler?
Maybe. What I am proposing is to rewrite the scheduling algorithm away
from strict priority ordering and per-priority run-queues, replacing it
with a single run queue and virtual runtime based approach.
See:
https://lore.kernel.org/dri-devel/[email protected]/
If that goes in then it will be really easy to extend the range, or
otherwise tweak it. Whether or not that is something that would be
interesting for your use cases is the question. Perhaps you could share
some more details on what kind of granularity and behaviour you are
looking for?
Regards,
Tvrtko